Hi,
It's not always safe to get "XCEN", "YCEN" information directly from EIS fits (main) header.
Here are some suggestions (according to emails between Ignacio U., Ken D., Viggo H. and John M.):
1. use the fits bte header (ie the data_object methods)
IDL> fname='eis_l0_20070320_030501.fits.gz' IDL> obj=obj_new('eis_data',fname) IDL> xpos=obj->getxpos() IDL> ypos=obj->getypos() IDL> xcen=total([max(xpos),min(xpos)])/2. IDL> ycen=total([max(ypos),min(ypos)])/2. IDL> print,xcen,ycen 21.4457 -976.781
2. use methods provided by the hdr_object
IDL> fname='eis_l0_20070320_030501.fits.gz' IDL> hdr=obj_new('fits_hdr',fname) IDL> xcen=hdr->getxcen_ti1(/offset) IDL> ycen=hdr->getycen_ti1(/offset) IDL> print,xcen,ycen 21.410865 -976.24575
3. I wrote a simple wrapped idl program called "eis_getpinfo.pro" to extract pointing information from EIS fits file (ie no need to read full fits file)
IDL> fname='eis_l0_20070320_030501.fits.gz' IDL> eispointing=eis_getpinfo(fname) IDL> print,eispointing 21.410865 -976.24575 583.06600 512.00000 The values mean: [XCEN, YCEN, FOVX, FOVY] (unit: arcsec)
Hope this helps. :)
Any comments?
JianSun 11:51:15 22-Nov-2024 GMT
Hi, Jian
Thanks for doing this! Really useful not to have to read a whole FITS file -- especially the huge files we recently discussed!
On a point of refinement -- and this is something we should consider in the team meeting in October -- I'm not sure that we can really speak of a single EIS pointing. The reason I say this is the North-South offset of about 20" between the two wavelength channels, and also the 1" East-West offset between them. In a sense, each wavelength channel has its own pointing. But perhaps this is factored into your routine already?
Does EIS_PREP correct for these offsets?
--David R Williams, 26-Sep-2007