View on GitHub

IRAF Community Distribution

IRAF maintained by the community

Home | Installation | Packages | X11IRAF | PyRAF | Forum

mscimage error

Josh Walawender wrote on Feb 23, 2007

I'm trying to use mscimage on single extension images to project each file onto a common projection. However, I'm getting the error:

ms> mscimage @list_Perseus_H2 @list_Perseus_H2_rescaled wcssource=parameters rotation=0 scale=1.0 ra=3:29:02 dec=31:20:54 pixmask- boundary=constant
Coordinate list: tmp$iraf290d has no data in range.
ERROR on line 345: Database record not found
mscimage (input=@list_Perseus_H2, output=@list_Perseus_H2_rescaled, pixmask=no, wcssource=parameters, ra=3.4838888888889, dec=31.348333333333, scale=1., rotation=0., boundary=constant)

These images use the ZPN projection in their WCS, but the ZPN patch is installed on my machine and seems to be working properly. The error seems to relate to the database record, but since each image already has an accurate WCS, I didn't think one was needed. What have I missed?

thanks,
Josh

Josh Walawender wrote on Feb 23, 2007

I've just converted the data from my previous post in to proper MEF files for use in MSCRED, I've also generated an instrument for use with SETINSTRUMENT, but I still get the database error. What database could be causing the problem? Could there be some problem related to ZPN?

thanks,
Josh

Mike Fitzpatrick wrote on Feb 23, 2007

Hi Josh,

I'll see whether Frank has any insights, but I don't think this is related to the ZPN projection specifically. The message before the one about the database says 'Coordinate list has no data in range' which is I think the real problem. This could be because the ZPN projection produces bogus pixel coords, but it might also be because of a bad trim section in the data. It would help if you could post (or email) a link to the image. The database error is most likely coming from the geomap/geotran part of the script FWIW.

Cheers,
-Mike

Josh Walawender wrote on Feb 23, 2007

I'm posting one of the files which I'm having trouble with on an anonymous ftp site: ftp.ifa.hawaii.edu in the folder OUTGOING/joshw/ the filename is test.fits

Here is the command which is failing:

ms> mscimage test test_mos wcssource=parameters rotation=0 scale=1.0 ra=3:29:02 dec=31:20:54 pixmask- boundary=constant
Coordinate list: tmp$iraf1632d has no data in range.
ERROR on line 345: Database record not found
mscimage (input=test, output=test_mos, pixmask=no, wcssource=parameters, ra=3.4838888888889, dec=31.348333333333, scale=1., rotation=0., boundary=constant)

thanks,
Josh

Mike Fitzpatrick wrote on Feb 23, 2007

Hi Josh,

Thanks for the image, it made figuring this out much easier. The ZPN coords are being read correctly, but MSCIMAGE uses a task called MSCWTEMPLATE to create a reference image with the WCS. When it does this the polynomial coeffs (i.e. the PV matrix keywords) are being lost and so when the reference image is used to decode world coords back to logical, the PV keywords are missing and so the ZPN code chokes (this is why it says "no data in range", the list is empty and the error is absorbed in the temp output file).

I can't find a workaround for this and will talk to Frank in the morning about whether this is a bug in MSCWTEMPLATE since it appears the PV matrix should be preserved in an image copy.

Cheers,
-Mike

Francisco Valdes wrote on Feb 23, 2007

Hi Josh,

I understood the problem, figured out some workarounds, and posted a bug log which I include below. Let us know if you have questions about this and what is going on with mscimage.

Yours,
Frank Valdes


NUMBER: 558
MODULE: mscimage
SYSTEM: all release up to date
DATE:   Fri Mar 30 11:04:18 MST 2007
FROM:   valdes

BUG:    MSCIMAGE defines the resampled output world coordinate system
        (WCS) using a reference image WCS.  If this reference image
        has a ZPN projection an error will occur.  This is because when
        the output WCS is set the ZPN projection is inherited from the
        reference image but MSCIMAGE does correctly setup the output ZPN
        projection from the reference image.  So one must use a reference
        image with another projection such as TAN.

        What is confusing is that wcssource="parameters" implies that
        the output WCS is entirely defined by the task parameters.
        This is true for everything but the WCS projection type which is
        taken from the input image.  There is no parameter to set the
        projection explicitly and the MSCIMAGE script would need to be
        edited to access the projection parameter in the underlying call
        to a hidden task MSCWTEMPLATE.  MSCIMAGE automatically changes
        input projections of "tnx" and "zpx" (distorted projections) to
        "tan" since the point of MSCIMAGE is to resample to a simpler
        undistorted WCS.  A change will be made to also do this for "zpn".

        The workarounds when the input data uses ZPN are to use a reference
        image that doesn't have a ZPN WCS or edit mscsrc$mscimage.cl
        to change projection="" to projection="tan" in the call to
        MSCWTEMPLATE.  The code change to MSCWTEMPLATE could also be
        made and the MSCRED package recompiled but this is a more complex
        process and users should contact iraf.net for help.

        The recommendation for users with the most recent version of IRAF
        is to use the task imcoords.mkcwcs to create a reference WCS.
        This task creates a dataless image with the desired WCS.  It is
        basically like defining the WCS using the MSCIMAGE parameters
        except you have control over the projection and the tangent
        position.  The only thing that is less obvious is that you must
        set a reference pixel.  When building a mosaic you might set this
        to be roughly in the middle of the field.  For instance if the
        final image will be roughly 4Kx4K you might choose a reference
        pixel at (2100,2100).

        If you don't have MKCWCS you can call MSCWTEMPLATE directly to do
        the same thing.  Leave the input and reference image parameters
        empty, set wcssource="parameters" and fill in the parameters
        including the projection as "tan".  This will leave the reference
        pixel at (0,0) so you would use HEDIT to set CRPIX1 and CRPIX2
        to the desired point.  Alternatively, you could make a list of
        all the extensions in the input and specify that as the input
        in MSCWTEMPLATE.  This then does exactly what mscimage would do
        put give you access to the projection parameter.  In other words
        making the reference image manually this way is equivalent to
        editing the mscimage.cl script.


STATUS: Future releases of MSCRED will convert input ZPN WCS to TAN WCS
        automatically.


Last post on Feb 23, 2007