eduardodelpeloso |
06/17/2010 01:45PM (Read 2753 times)
|
|
|
Status: offline
Registered: 06/17/2010
Posts: 7
|
I believe there is bug when you set the 'grow' parameter to values greater than zero in the task noao.onedspec.continuum. Does anyone have any info on this?Here is what I believe the problem is. I have tried normalizing a spectrum with func=legendre, order=5, low_rej=2, high_rej=2, niter=1 and grow=0. Here is what I get for certain 3 spectral lines:
[img:ae7a3ffbd1]http://www.delpeloso.com.br/grow0.jpg[/img:ae7a3ffbd1]Well, this is OK to me. But when I put grow=1, I believe things get messed up...
[img:ae7a3ffbd1]http://www.delpeloso.com.br/grow1.jpg[/img:ae7a3ffbd1]Shouldn't the task have rejected the point I marked with a red arrow???And when grow=2, I believe the 3 marked points should have been rejected...
[img:ae7a3ffbd1]http://www.delpeloso.com.br/grow2.jpg[/img:ae7a3ffbd1]Either I do not understand well how the grow parameter works, or there is a bug in the continuum task.
Can anyone help me here, please???Thanks.
|
|
|
|
valdes |
06/17/2010 01:45PM
|
|
|
Status: offline
Registered: 11/11/2005
Posts: 728
|
The rejected points which are marked are those that deviate by more than the specified number of sigma from the final fit. So this is not the same thing as the "grown" points.What happens is:1. A fit is made to all the data.
2. Deviant points (those more than the specified number of sigma from the fit) are identified.
3. If iterating, neighbors of the deviant points are excluded (i.e. the grow) and a new fit is done.
4. The final graph shows the deviant points.So a thought experiment is, suppose the exact same fit is produced if grow=0, 1, or 2. Then each of these cases will have the same set of rejected points. But suppose now that with grow=3 the fit is slightly different (higher in your case) and now there may be the same or more deviant points than with the lower grow.Yours,
Frank Valdes
|
|
|
|
eduardodelpeloso |
06/17/2010 01:45PM
|
|
|
Status: offline
Registered: 06/17/2010
Posts: 7
|
Thank you for your reply, Dr. Valdes.But, unfortunatelly, I don't understand what you mean.It seems clear to me that it is not only those points that deviate
by more than +(high_rej * sigma) or -(low_rej * sigma) that are marked.The fits in the figures I posted were calculated for exactly the same
parameters (func=legendre, order=5, low_rej=2, high_rej=2 and
niter=1). But there are a different number of rejected points marker in each
figure. Since the only difference between them is the 'grow' parameter,
it is clear that the points being rejected take 'grow' into account.Regards,
Eduardo F. del Peloso.
|
|
|
|
valdes |
06/17/2010 01:45PM
|
|
|
Status: offline
Registered: 11/11/2005
Posts: 728
|
Hello Eduardo,You are correct that what I described is not what is happening. You have found a significant problem which has be around a long time but was never noticed. The logic is basically wrong and, in addition, the grow parameter is incorrectly described as being in pixels for this task where it really should be in user units (e.g. angstroms). Below is a bug log I wrote. There is not workaround that I can think of. A new release of IRAF will include the fix.Thank you for your report and persistence.Frank[quote:d326e57a40]
NUMBER: 575
MODULE: all tasks using the icfit tools
SYSTEM: - V2.14
DATE: Mon Jun 28 14:08:48 MST 2010
FROM: valdesBUG: The icfit tools are used in many tasks involving 1D function fitting.
These include onedspec tasks like continuum and identify. The
tools provide for a grow radius where any sigma rejected points
have neighbors also rejected. The logic was wrong
in two ways: one where if a neighbor was also a rejected point
it did not also reject neighbors of that point, and another where
the grow radius units were used both as in pixels and in user
coordinates. In reality the grow is supposed to be in user
coordinate units. In addition some tasks, like continuum, incorrectly
described the units adding to the confusion.STATUS: Fixed for the next IRAF release.
[/quote:d326e57a40]
|
|
|
|
eduardodelpeloso |
06/17/2010 01:45PM
|
|
|
Status: offline
Registered: 06/17/2010
Posts: 7
|
Dr. Valdes:Thank you for your answer. I was a bit afraid that I might seem rude insisting on the matter. You were very kind for being so patient.Best regards,
Eduardo.
|
|
|
|
eduardodelpeloso |
06/17/2010 01:45PM
|
|
|
Status: offline
Registered: 06/17/2010
Posts: 7
|
By the way: where is the IRAF bug log located? Or, in other words, where did you post that bug (#575)??
Thanks.
E.
|
|
|
|
fitz |
06/17/2010 01:45PM
|
|
|
Status: offline
Registered: 09/30/2005
Posts: 4040
|
The buglog file is included in each release in $iraf/local/bugs.log The #575 buglog that Frank mentions (and all buglogs in fact) was posted to the iraf.net homepage (look under the forum box in the center).-Mike
|
|
|
|