View on GitHub

IRAF Community Distribution

IRAF maintained by the community

Home | Installation | Packages | X11IRAF | PyRAF | Forum

Pselect + Tvmark issue

Gabriel wrote on Jan 20, 2010

Hi all,

Here's the deal: first I run 'daofind' over a frame. Later I run a 'tvmark' with the '.coo.1' output of 'daofind'. I mark a bunch of stars, so far so good. The weird problem appears when I try to run 'pselect' over that modified '.coo.1' file. If by any chance I added a star and the format with which 'tvmark' wrote it in the '.coo.1' file is one of those I show below, then 'pselect' shows the error:

Warning: Cannot decode real parameter
ERROR: Error evaluating selection expression
"txselect (inname, outname, ex)"
line 67: ptools$pselect.cl
called as: `pselect ()'

It ONLY shows this error when 'YCENTER' is present in the 'expression' parameter of 'pselect' (ie: 'YCENTER < 1000')

Here is the file I use as input for 'pselect' (I stripped it to the bare minimum):

#K IRAF = NOAO/IRAFV2.14.1 version %-23s
#K USER = iraf name %-23s
#K HOST = localhost.localdomain computer %-23s
#K DATE = 2010-01-20 yyyy-mm-dd %-23s
#K TIME = 11:24:22 hh:mm:ss %-23s
#K PACKAGE = apphot name %-23s
#K TASK = daofind name %-23s
#
#K SCALE = 1. units %-23.7g
#K FWHMPSF = 2.931562 scaleunit %-23.7g
#K EMISSION = yes switch %-23b
#K DATAMIN = -13.89292 counts %-23.7g
#K DATAMAX = 28000. counts %-23.7g
#K EXPOSURE = EXPTIME keyword %-23s
#K AIRMASS = "" keyword %-23s
#K FILTER = FILTERS keyword %-23s
#K OBSTIME = "" keyword %-23s
#
#K NOISE = poisson model %-23s
#K SIGMA = 4.054159 counts %-23.7g
#K GAIN = GAIN keyword %-23s
#K EPADU = 3. e-/adu %-23.7g
#K CCDREAD = RDNOISE keyword %-23s
#K READNOISE = 6.6 e- %-23.7g
#
#K IMAGE = fbltccd2068 imagename %-23s
#K FWHMPSF = 2.931562 scaleunit %-23.7g
#K THRESHOLD = 3. sigma %-23.7g
#K NSIGMA = 1.5 sigma %-23.7g
#K RATIO = 1. number %-23.7g
#K THETA = 0. degrees %-23.7g
#
#K SHARPLO = 0.2 number %-23.7g
#K SHARPHI = 1. number %-23.7g
#K ROUNDLO = -1. number %-23.7g
#K ROUNDHI = 1. number %-23.7g
#
#N XCENTER YCENTER MAG SHARPNESS SROUND GROUND ID \
#U pixels pixels # # # # # \
#F %-13.3f %-10.3f %-9.3f %-12.3f %-12.3f %-12.3f %-6d \
#
61.167 2.248 -1.574 0.638 -0.205 0.411 1
**FIRST LINE**
1790.100 2800.0
1565.405 1788.0

Replacing **FIRST LINE** by ANY of this values, shows the above error:

1865.20 2788.
1865.2 2788.
1865.200 278.
1865.20 278.
186.22 278.66
186.00 278.0
186. 278.000
186.0 278.000

The values are not what matters, the format and the position of the 'YCENTER' value is. If I manually align any of these values (aligning the 'dots' in the numbers with the 'dots' in the numbers below that line), then 'pselect' works fine. The problem is that 'tvmark' doesn not do this by itself and so I can't use 'pselect' after using 'tvmark'!

I would really appreciate if someone could try to replicate this issue.
A solution to this, I would appreciate a LOT more :)

Cheers!
Gabriel

Mike Fitzpatrick wrote on Jan 20, 2010

PSELECT actually reads the header stuff in the table and is processing according to the formats specified for the columns. TVMARK on the other hand is simply writing numbers with no regard to the format in an existing table.

There no real way to change this in either task. About the best you could do is write a small script to reformat the tvmark columns and put them in .coo.1 format.

Last post on Jan 20, 2010