comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » SVDFIT Problems
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
SVDFIT Problems [message #31937] Fri, 30 August 2002 09:06 Go to previous message
William Clodius is currently offline  William Clodius
Messages: 30
Registered: December 1996
Member
In my occaisional attempts to use SVDFIT I have had problems in that it
reports singular solutions when other fitting routines, e.g., REGRESS,
have had not problems. The obvious source of the problems is that within
the routine the line

THRESH = 1.0E-9

does not correspond to the definition in Numerical Recipes

THRESH = TOL*wmax

THRESH is used to determine the number of singular values.

The definition in Numerical Recipes has two advantages

1. TOL can be changed depending on whether the routines are single or
double precision

2. wmax provides a natural scaling for the problem.

Therefore the code has two problems

1. The determination of the number of singular values is effectively
independent of the double keyword, although that determination should
depend on the relative tolerance of the math

2. The lack of a natural scale factor means that the reporting of
singularity depends on the physical units the equations represent, e.g.,
singularity determination for an equation involving lengths, will depend
on whether the lengths are reported in bohr, angstroms, microns, meters,
kilometers etc. A properly implemented SVD rescales during its
calculations so that unless an underflow or overflow occurs in computing
the rescaling the presence of singularities is independent of the units.

The second problem can be reduced by choosing units (or a data
rescaling) so the independent variable and the values returned by
FUNCTION_NAME are typically of magnitude one, but even then the
potential remains that singular values are over or under reported.

Unfortunately it appeas that the code currently relies on a simplified
version of the Numerical Recipes routine SVDCMP, that does not return
the singular value vector that Numerical Recipes uses to compute wmax. A
rewrite to give SVDFIT the proper properties is more work than I am
willing to put in at this time.
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: hello
Next Topic: sec : U Re: having IDL output to another X11 window

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Fri Oct 10 06:02:42 PDT 2025

Total time taken to generate the page: 0.37960 seconds