-
Notifications
You must be signed in to change notification settings - Fork 12
/
BUGS
136 lines (102 loc) · 4.06 KB
/
BUGS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
The GSL Bugs Database is at http://savannah.gnu.org/bugs/?group=gsl
This file was generated from it at Thu Jul 18 10:23:38 2013
------------------------------------------------------------------------
BUG-ID: 28267
STATUS: Open/Postponed
CATEGORY: Accuracy problem
SUMMARY: poor convergence region for gsl_sf_hyperg_1F1
The magnitude of the error is greater than the value itself for
a<<0, b>0, x>>0
gsl_sf_hyperg1F1(-3.78e+01, 2, 1.035e+02) => -7.00055e+18 +/- 3.77654e+19
-----------------------------------------------
From: Weibin Li <[email protected]>
Subject: [Bug-gsl] gsl_sf_hyperg_1F1
Date: Mon, 30 Nov 2009 15:26:11 +0100
Hi, guys
I experienced bugs with gsl_sf_hyperg_1F1. The version is gsl_1.12, but
the testing is also done with gsl_1.13, using a mac with version 10.5.8
and hp-workstation with gnome_2.24.1.
#include<stdlib.h>
#include<stdio.h>
#include<math.h>
#include "gsl/gsl_sf_hyperg.h"
int main(int argc, char **argv)
{
int ii;
double Ri;
double v0;
gsl_sf_result r;
for(ii = 10; ii< 140;ii++)
{
Ri = 2013;
v0 =38.86871 +ii*2.5e-10;
gsl_sf_hyperg_1F1_e(1.0-v0,2,2.0*Ri/v0,&r);
printf("%lg\t%14.13g\t%14.13g\n",v0,r.val,r.err);
}
return 0;
}
The output of above code shows an extremely large error. by increasing
Ri, the relative error decreases. Is there any idea to fix this?
Thank you very much.
Best
Weibin
-It's inherently difficult to compute the value in this region either way as there is massive cancellation in both the series and the Kummer transformed series.I cannot find any algorithm which handles this case.Confirmed
------------------------------------------------------------------------
BUG-ID: 21828
STATUS: Open/Confirmed
CATEGORY: Performance
SUMMARY: suboptimal performance of gsl_fdfsolver_lmsder
From: "Alexander Usov" <[email protected]>
Subject: [Help-gsl] Strange performance of gsl_fdfsolver_lmsder
Date: Wed, 24 Oct 2007 20:45:01 +0200
Hi all,
I am currently working on the problem involving source extraction from
astronomical images, which essentially boils down to fitting a number of
2d gaussians to the image.
One of the traditionally used fitters in this field is a Levenberg-Marquardt,
which gsl_fdfsolver_lmsder is and implementation of.
At some moment I have notices that for the bigger images (about 550
pixels, 20-30 parameters) gsl's lmsder algorithm spends a large fraction
of the run-time (about 50%) doing household transform.
While looking around for are different minimization algorithms I have made
a surprising finding that original netlib/minpack/lmder is almost twice faster
that that of gsl.
Could anyone explain such a big difference in performace?
--
Best regards,
Alexander.
_______________________________________________
Help-gsl mailing list
http://lists.gnu.org/mailman/listinfo/help-gsl
Reply-To: [email protected]
From: Brian Gough <[email protected]>
To: "Alexander Usov" <[email protected]>
Subject: Re: [Help-gsl] Strange performance of gsl_fdfsolver_lmsder
Date: Thu, 25 Oct 2007 21:57:08 +0100
At Wed, 24 Oct 2007 20:45:01 +0200,
Alexander Usov wrote:
> At some moment I have notices that for the bigger images (about 550
> pixels, 20-30 parameters) gsl's lmsder algorithm spends a large fraction
> of the run-time (about 50%) doing household transform.
>
> While looking around for are different minimization algorithms I have made
> a surprising finding that original netlib/minpack/lmder is almost twice faster
> that that of gsl.
>
> Could anyone explain such a big difference in performace?
I have a vague memory that there was some quantity (Jacobian?) that
MINPACK only computes fully at the end, but in GSL it is accessible to
the user at each step so I felt I had to update it on each iteration
in the absence of some alternate scheme. Sorry this is not a great
answer but I am not able to look at it in detail now.
--
Brian Gough
_______________________________________________
Help-gsl mailing list
http://lists.gnu.org/mailman/listinfo/help-gsl
1824