============================================================================== EPOXI Data Archive: FITS Keyword Descriptions for the Primary Image Header ============================================================================== * FITS standard keywords - BITPIX will be: -32 (floating point) for all calibrated data 16 (16-bit integers) for all raw data - signed integers (BZERO=0, BSCALE=1) for HRIIR - unsigned integers (BZERO=32768, BSCALE=1) for HRIVIS and MRIVIS SIMPLE = T / Written by IDL: Thu Mar 12 04:45:26 2009 BITPIX = -32 / IEEE single precision floating point NAXIS = 2 / NAXIS1 = 1024 / NAXIS2 = 1024 / EXTEND = T /File contains extensions DATE = '2009-03-12T08:45:24' / UTC creation time for this FITS file * Science Data Center (SDC) software version tracking; only useful to SDC personnel SOFTWARE= 'di_mergeraw/001231798395/Mon Jan 12 22:13:15 2009 UTC' / Timestamp SDCVER = 12 / SDC Master Version Number * FITS standard scaling keywords BZERO = 0.00000 / Data are 32-bit floating point BSCALE = 1.00000 / Data are 32-bit floating point * Description of image: COMMENT This is an calibrated image. * Mission name, configuration (FLIGHT, GROUND, TV-n (TV => Thermal Vac) MSNPHASE => not yet used for EPOXI; defaults to 'COMMISSIONING' MSNSUBPH => not yet used for EPOXI MISSION = 'EPOXI ' / Name of the spacecraft mission MSNCONFG= 'FLIGHT ' / Configuration of the spacecraft MSNPHASE= 'COMMISSIONING' / Phase of the spacecraft mission MSNSUBPH= 'N/A ' / Ground cal thermal-vacuum id * ORIGIN => will always be 'CORNELL SDC' ORIGIN = 'CORNELL SDC' / Institution that originated this FITS file * TIMESYS will always be 'UTC' TIMESYS = 'UTC ' / Default time system used * BUNIT => Physical units for PDU data pixel BUNIT = 'W/(m^2*sr*um)' / Physical units for data pixel * CALTYPE => Level of calibration (calibrated data only) - RADREV radiance reversible - RAD radiance irreversible - IFREV I/F reversible (N.B. OBSOLETE) - IF I/F irreversible (N.B. OBSOLETE) CALTYPE = 'RADREV ' / REVersible, DN=data#, RADiance, IF=I/F * OBSERVAT => will always be 'FLYBY S/C' for EPOXI data * INSTRUME => will always be one of - HRIVIS for HRI Visible CCD - HRIIR for HRI Infrared Detector - MRIVIS for MRI Visible CCD OBSERVAT= 'FLYBY S/C' / Observing platform (flyby or impactor) INSTRUME= 'HRIVIS ' / Instrument ID, including detector ID * Filename keywords: FILENAME => PDS/MAST name of this file in uppercase FILENAMR => PDS/MAST name of raw version source file in uppercase FILESDC => name of this file on SDC in uppercase FILESDCR => name of raw version source file on SDC in uppercase FILENAME= 'HV07122921_1000021_001_RR.FIT' / FITS filename for PDS/MAST FILENAMR= 'HV07122921_1000021_001.FIT' / Raw FITS filename for PDS/MAST FILESDC = 'hv0252237029_1000021_001_rr.fit' / FITS filename for SDC FILESDCR= 'hv0252237029_1000021_001.fit' / Raw FITS filename for SDC * COMPRESS => bits/pixel and of data in original telemetry and decompression status of the data in this FITS file: - UNCOMPRESSED => 14-bit data were originally telemetered in 16-bits, so no decompression has been or will be necessary. - COMPRESSED => 14-bit data were originally compressed on the spacecraft to 8-bit data via a LUT, telemetered as 8-bit data, and are still stored as 8-bit data in this raw data file. - DECOMPRESSED => 14-bit data were originally compressed on the spacecraft to 8-bit data via a LUT, telemetered as 8-bit data, and have been decompressed by the calibration procedure from 8-bit to 16-bit data by inverting the LUT. * LUTNUM => LookUp Table (LUT) number if COMPRESSED or DECOMPRESSED COMPRESS= 'UNCOMPRESSED' / Image compression flag LUTNUM = 0 / Lookup Table for uncompressing image(IMGH001) * SCPROCU => CPU "side" (SCU-A or SCU-B) that processed the image SCPROCU = 'SCU-B ' / Spacecraft processing unit that processed img * IMGMODE => Image mode number, from 100-byte header IMGH030 * IMGMODEN => Image mode name derived from IMGMODE IMGMODE = 1 / Image mode (IMGH030) IMGMODEN= 'FF ' / Image mode name * OBJECT => Targeted object (MOON, EARTH, &c) or type (DARK, SKY, &c). Set from keyword KPKPOBJT below. OBJECT = 'MOON ' / Target Name * Exposure items EXPID => Exposure ID from 100-byte header IMGNUM => Number of image within EXPID from 100-byte header EXPID = 1000021 / Exposure ID (IMGH022-IMGH025) IMGNUM = 1 / Image number within commanded exp (IMGH026) * Exposure duration parameters MINEXPTM => Minimum exposure duration, function of image mode, ms CMDEXPTM => Commanded additional exposure time, ms DELAYTM => Commanded delay exposure time, ms INTTIME => Exposure duration, MINEXPTM+CMDEXPTM+DELAYTM+0.5*K, ms - If Instrument is not HRIIR (i.e. MRIVIS or HRIVIS), and DELAYTM>0.0, and IMGMODE is one of 4, 6, 7 or 8, then K=1.0, - else K=0.0. Stated another way: - If Instrument is HRIIR, then K=0.0, else - if DELAYTM=0.0 then K=0.0, else - if IMGMODE is one of 1, 2, 3, 5, or 9, then K=0.0, else - K=1.0 MINEXPTM= 3.50000000000 / [msec] Minimum exposure duration CMDEXPTM= 12 / [msec] Commanded additional exposure time DELAYTM = 0 / [msec] Commanded delay time INTTIME = 15.5000000000 / [msec] Total integration time * Spacecraft Clock (SCLK) start and stop times SCSTART = '1/0252237029.133' / SCLK at start of observation SCSTOP = '1/0252237029.137' / SCLK at end of observation * Calendar and Julian Date start-, mid- and Stop- times, UTC time OBSDATE = '2007-12-29T21:58:14.139' / DateTime at start of observation at s/c OBSJD = 2454464.41544141 / [JD UTC] time at start of observation OBSMIDDT= '2007-12-29T21:58:14.147' / DateTime at middle of observation at s/c OBSMIDJD= 2454464.41544150 / [JD UTC] time at mid of observation OBSMIDJT= 2454464.41619595 / [JD TDB] Barycentric time at mid-obs at s/c OBSENDDT= '2007-12-29T21:58:14.155' / DateTime at end of observation at s/c OBSENDJD= 2454464.41544159 / [JD UTC] time at end of observation * EAROBSDT => Calendar UTC time when light from target, which left target at the same time as light that reached the spacecraft at OBSMIDDT, reaches the center of Earth. EAROBSDT= '2007-12-29T21:58:16.284' / DateTime at mid of observation at earth * Info about filter in light path (FILTER & FILTERCW) and commanded (FILTRCMD) at the time of this observation - N.B. this keyword is only valid for MRIVIS and HRIVIS data. FILTER = 'CLEAR1 ' / Actual Filter Name (IMGH036) FILTERCW= 650 / [nm] Center wavelength for FILTER FILTRCMD= 'CLEAR1 ' / Commanded Filter Name (IMGH037) * Whether shuttered mode was used (VIS data only) SHUTTERD= 'YES ' / Shuttered VIS mode (yes, no) * Number of detector pixels binned in each direction into a single pixel in the image data; depends on image mode. - N.B. this keyword is only valid for HRIIR data; VIS data are never binned. DETXBIN = 1 / Column Binning on detector DETYBIN = 1 / Row Binning on detector * PDU image data statistics, excludes overclock pixels DATAMIN = -0.462187 / Minimum pixel in image array DATAMAX = 42.4366 / Maximum pixel in image array MEDPVAL = 7.24952 / Median pixel in image array STDPVAL = 6.89930 / Standard Deviation of pixel values * Saturated data information, RAW data only, set to -999 for CAL data PSATVAL => Saturation criterion for this detector PSATNUM => Number of saturated pixels in image area PSATVAL = -999 / [DN] Minimum value to define a saturated pix PSATNUM = -999 / Number of saturated pixels in image area * PIXELSZ => Pixel size on detector, micron. - 21 for HRIVIS and MRIVIS - 36 for HRIIR, the 2x2 binned value is always given PIXELSZ = 21 / [micron] Pixel size, binned if IR * Temperature point values, Kelvins; -9999 => no value These two temperatures are used for IR calibration: OPTBENT The prisms temperature which is also known as the IR spectral imaging module (SIM) temperature. This temperature is used for IR flat field creation, spectral mapping, and dark modeling. For IR dark modeling, it is known as "Tsim" and the TEMPSIM keyword is set to OPTBENT for dark scaling. The DARKALG and TEMPSCAL keywords provide more information. IRFPAT The temperature of the IR focal plane array. It is used for IR dark modeling, where it is known as "Tfpa", and the TEMPFPA keyword is set to IRFPAT for dark scaling. The DARKALG and TEMPSCAL keywords provide more information. IC590T = 309.970896000 / [K] Instrument Controller Board Temp AD590 CCD590T = 310.436624000 / [K] CCD Signal Proc Board Temp AD590 IR590T = 302.543760000 / [K] IR Signal Proc BoardTemp AD590 LVPS590T= 308.389872000 / [K] Low Volt Power Supply Temp AD590 CCDPRET = 274.024048000 / [K] CCD PreAmp Temp Box AD590 CCDT = 168.964590250 / [K] CCD On-Chip Temp OPTBENT = 138.526960250 / [K] Optical Bench Temp (HRI = Prisms) PRIMIRT = 138.467390410 / [K] Primary Mirror Temp SECMIRT = 134.902516000 / [K] Secondary Mirror Temp COVERT = 136.849162240 / [K] Cover (HRI = SIM, MRI/ITS = Structure) IRFPAT = 84.4335000000 / [K] IR FPA On-Chip Temp * Voltage point values, Volts; -9999 => no value CALLAMPV => Set for IR lamp only but it burned out during thermal-vac #4 and was not replaced for flight; keyword kept in header for legacy. CCDOFSAV= 1.20556488037 / [V] CCD Offset from ADC Ref Volt Quad A CCDOFSBV= 1.21319503784 / [V] CCD Offset from ADC Ref Volt Quad A CCDOFSCV= 1.20373364258 / [V] CCD Offset from ADC Ref Volt Quad B CCDOFSDV= 1.21716271973 / [V] CCD Offset from ADC Ref Volt Quad C CCDOUTAV= 5.12650499417 / [V] CCD Output Amp Drain Volt Quad A CCDOUTBV= 5.12253157532 / [V] CCD Output Amp Drain Volt Quad B CCDOUTCV= 5.11458473763 / [V] CCD Output Amp Drain Volt Quad C CCDOUTDV= 5.10345916486 / [V] CCD Output Amp Drain Volt Quad D CCDSERPV= 5.02955357434 / [V] CCD Serial Clock + Voltage CCDSERNV= -5.02558015550 / [V] CCD Serial Clock - Voltage CCDPARPV= 5.00650774504 / [V] CCD Parallel Clock + Voltage CCDPARNV= -9.19314909682 / [V] CCD Parallel Clock - Voltage IRRESETV= 0.244599122562 / [V] IR Reset Voltage IRSUBSTV= 0.737466354523 / [V] IR Substrate Voltage IRBIASGV= 3.40848877289 / [V] IR Biasgate Voltage CALLAMPV= -9999.00 / [V] IR calib lamp/STIM, s/w commanded value * GAP* keywords describe how multiple telemetry downlinks of this observation were combined to make a single raw image. GAPCOUNT => number of missing gap bytes, typical minimum will be 100 bytes for 100-byte (engineering) header that is overlain on image data by the spacecraft firmware. GAPFNnnn => raw spacecraft filename + Earth Received Time (ERT), nnn is 001 to 999 N.B. This is different than the delivered RAW merged data filename GAPFCnnn => Number of bytes contributed by file GAPFNnnn GAPSTnnn => Status of file GAPFNnnn GAPCOUNT= 100 / [bytes] Number of missing (gap) bytes GAPFN001= 'IINHVUBXF_1000021_001_002.bin_2007_364T20_00_50.583' / RAW filename GAPFC001= 2097052 / [bytes] Num of bytes from filename GAPFN001 GAPST001= 'OK ' / Status of this file (OK => readable, etc) * FN* keywords: tokens parsed from original spacecraft filename GAPFN0001 FNSTRTSP= '*********************************************' / FN: STARTSEPARATOR FNINFO = 'These items list info extracted from s/c filename' / * FNINFO1 = 'Time stamp in this filename is based on download time in UTC' / * FNSTATUS= 'Input argument filename parse SUCCEEDED' / FN: Status FNORIG = 'IINHVUBXF_1000021_001_002.bin_2007_364T20_00_50.583' / FN: Original FNFILEID= 'IINHVUBXF_1000021_001_002' / FN: FILEID FNUNQDSF= '2007_364T20_00_50.583' / FN: UNIQUE_ID_SUFFIX FNSOURCE= 'II ' / FN: Source of Image always set to: II FNTLMTRY= 'N ' / FN: There is Telemetry Routing(T) or Not(N) FNINSTRM= 'H ' / FN: Instrument (H{RI}, M{RI} or I{TS}) FNIMGTYP= 'V ' / FN: Image Type (V{IS} or I{R}) FNCMPRSS= 'U ' / FN: Compressed (C) or Not (U) FNSCSRC = 'B ' / FN: SCU Source (A or B) FNANVDSG= 'X ' / FN: Anav Routed (A) or Not (X) FNIRWNDW= 'F ' / FN: Windowed (W) or Full frame (F) FNEXPSRD= 1000021 / FN: Exposure ID FNIMGNMB= 1 / FN: Image Number in Sequence FNCMMNDD= 2 / FN: Number of Commanded Images FNYEAR = 2007 / FN: Year FNDOY = 364 / FN: Day of Year FNHOUR = 20 / FN: Hour FNMINUTE= 0 / FN: Minute FNSCNDRC= 50583 / FN: Second or Count FNYRDOY = '2007-364' / FN: Date in DOY Format FNYRDAT = '2007-12-30' / FN: Date in YYYY-MM-DD Format FNTIM = '20:00 ' / FN: Time FNISODOY= '2007-364T20:00' / FN: Date/Time in ISO DOY Format FNISODAT= '2007-12-30T20:00' / FN: Date/Time in ISO YYYY-MM-DD Format FNENDSPR= '*********************************************' / * * IMGHnnn keywords => Telemetered image 100-byte header. See the following COMMENT cards plus the IMGHnnn FITS keywords' comment areas for a description of these keywords' values. IMGH091 => Set for IR lamp only but it burned out during thermal-vac #4 and was not replaced for flight; Source for CALLAMPV above. COMMENT ********************************************************************** COMMENT ** Image Header Bytes COMMENT ** COMMENT ** The image header overlays part of the first quadrant of each image. COMMENT ** The 3 digits in the following keywords represent the offset of the COMMENT ** byte within the image header where IMGH000 is the first byte. COMMENT ** Bytes containing bit flags are represented as an 8-character COMMENT ** string of zeros and ones. All temperature and voltage values were COMMENT ** calculated from a set of bytes: high- and low-order. COMMENT ** Each image header field is provided although some fields apply COMMENT ** only to VIS or IR images. COMMENT ** COMMENT ** Several bytes come in hi- and lo-order pairs. These bytes were COMMENT ** combined into single words, with the offset of hi-order byte COMMENT ** used for the FITS keyword. This applies to the following pairs COMMENT ** of bytes (offsets): 2-3, 28-29, 31-32, 39-40, 41-42, through 81-82. COMMENT ********************************************************************** IMGH000 = '01001110' / Compression path and SCU flags IMGH001 = 0 / LookUp table selected (0-3) IMGH002 = 1048576 / [pixels] Total image size IMGH004 = '00000000' / Zeros ref for stuck bits high (all bits = 0) IMGH005 = '11111111' / Ones ref for stuck bits low (all bits = 1) IMGH006 = 0 / Window selection (IR only) IMGH007 = '00000000' / Compressed img telem and save route IMGH008 = '10000001' / Uncompressed img telem and save route IMGH009 = 3 / Image downlink priority (1=highest) IMGH010 = '00000000' / Route to Anav IMGH011 = '00000000' / Anav manip bitmap from exposure cmd IMGH012 = '00000000' / Anav target 3 from exposure cmd IMGH013 = '00000000' / Anav target 2 from exposure cmd IMGH014 = '00000000' / Anav target 1 from exposure cmd IMGH015 = '00000000' / Anav target 0 from exposure cmd IMGH016 = '00000000' / Anav routing 1 from exposure cmd IMGH017 = '00000000' / Anav routing 0 from exposure cmd IMGH018 = '00000000' / Snippet box size 1, VIS only IMGH019 = '00000000' / Snippet box size 0, VIS only IMGH020 = 3 / Instrument ID (1=ITS,2=MRI,3=HRI) IMGH021 = 0 / Detector ID (0=VIS,1=IR) IMGH022 = 0 / Exposure ID 3 from exposure cmd IMGH023 = 15 / Exposure ID 2 from exposure cmd IMGH024 = 66 / Exposure ID 1 from exposure cmd IMGH025 = 85 / Exposure ID 0 from exposure cmd IMGH026 = 1 / Image number within this commanded set IMGH027 = 2 / Number of images commanded at exposure IMGH028 = 2004 / Num images since last processor reset IMGH030 = 1 / Image mode (size and attributes) from exp cmd IMGH031 = 0 / Delay time (high + low bytes) IMGH033 = 0 / [msec] Integration time, bits [19:16] IMGH034 = 0 / [msec] Integration time, bits [15:8] IMGH035 = 12 / [msec] Integration time, bits [7:0] IMGH036 = 0 / Filter pos, Actual (from Hall Sensor telem) IMGH037 = 1 / Filter pos, Commanded (from exposure command) IMGH038 = 3 / Filter pos, Expected step (from S/W variable) IMGH039 = 8316 / [DN] Instrument Controller Board Temp AD590 IMGH041 = 8354 / [DN] CCD Signal Proc Board Temp AD590 IMGH043 = 7710 / [DN] IR Signal Proc Board Temp AD590 IMGH045 = 8187 / [DN] Low Voltage Power Supply Temp AD590 IMGH047 = 5383 / [DN] CCD PreAmp Box Temp AD590 IMGH049 = 8555 / [DN] CCD On-Chip Temp IMGH051 = 10495 / [DN] Optical Bench Temp (HRI = Prisms) IMGH053 = 10499 / [DN] Primary Mirror Temp IMGH055 = 10740 / [DN] Secondary Mirror Temp IMGH057 = 10608 / [DN] Cover (HRI=SIM,MRI/ITS=Structure) IMGH059 = 12142 / [DN] CCD Offset from ADC Ref Volt Quad A IMGH061 = 12167 / [DN] CCD Offset from ADC Ref Volt Quad A IMGH063 = 12136 / [DN] CCD Offset from ADC Ref Volt Quad B IMGH065 = 12180 / [DN] CCD Offset from ADC Ref Volt Quad C IMGH067 = 14643 / [DN] CCD Output Amp Drain Volt Quad A IMGH069 = 14638 / [DN] CCD Output Amp Drain Volt Quad B IMGH071 = 14628 / [DN] CCD Output Amp Drain Volt Quad C IMGH073 = 14614 / [DN] CCD Output Amp Drain Volt Quad D IMGH075 = 14521 / [DN] CCD Serial Clock + Voltage IMGH077 = 1868 / [DN] CCD Serial Clock - Voltage IMGH079 = 14492 / [DN] CCD Parallel Clock + Voltage IMGH081 = 2084 / [DN] CCD Parallel Clock - Voltage IMGH083 = 8392 / [DN] IR Reset Voltage IMGH085 = 8795 / [DN] IR Substrate Voltage IMGH087 = 10979 / [DN] IR Biasgate Voltage IMGH089 = 11823 / [DN] IR FPA On-Chip Temp IMGH091 = 0 / [DN] IR STIM DAC, S/W commanded value IMGH094 = 15 / [sec] Time stamp at obs start, bits [31:24] IMGH095 = 8 / [sec] Time stamp, bits [23:16] IMGH096 = 212 / [sec] Time stamp, bits [15:8] IMGH097 = 229 / [sec] Time stamp, bits [7:0] IMGH098 = 136 / [subsec] Time stamp, bits [19:12] IMGH099 = 215 / [subsec] Time stamp, bits [11:4] - The last six bytes of the 100-byte header give the Spacecraft CLocK (SCLK) counts (i.e. the SCLK time) at the end of the observation. - Bytes IMGH098 and IMGH099 give the state of the high sixteen bits of the 20-bit sub-counter that runs at about 1MHz and rolls over about once every second. Only the high eight bits of this counter are represented in SCLK strings such as SCSTART and SCSTOP; those eight bits essentially compose a counter that runs at about 256Hz. - Bytes IMGH094 through IMGH097 give the state of the main 32-bit counter which increments by one each time the sub-counter rolls over, so this main counter runs at about 1Hz. - The 4+1 bytes that go into keyword SCSTOP come from the last six bytes of the 100-byte header above; the last of those six is only used to decide whether to round up the previous byte(s). SCSTOP is converted to TDB s (seconds) past J2000 via the current SCLK SPICE kernel. The exposure time (keyword INTTIME/(1000ms/s)) is subtracted from that end TDB s to get start TDB s, and INTTIME/2000 is subtracted to get the mid TDB s. The start, mid and end TDB s values are converted to keywords OBSDATE, OBSMIDDT and OBSENDDT UTC values, respectively, using the leapsecond SPICE kernel. Finally, the start TDB s value is converted to the start SCLK keyword SCSTART. - The resolution of SCSTOP and SCSTART is ~4ms, but we quote the UTCs to 1ms. - The leapsecond and SCLK SPICE kernels track the correlation between TDB and the Spacecraft CLocK (SCLK) time and the UTC time, respectively. - TDB (AKA barycentric time or atomic time or ephemeris time) is assumed to progress at a constant rate. - SCLK time is based on the counters described above, which do not progress at a constant rate due to variations such as temperature changes within the spacecraft and counter hardware. - The UTC time, which is related to the Earth's rotation, also does not progress at a constant rate because the Earth does not rotate at a constant rate. - For more detailed descriptions of TDB, SCLK, UTC, and using SCLK and leapsecond SPICE kernels, see NAIF. * Derived geometry values => best geometry values from REC* or NOM* keywords below. The REC* keywords use reconstructed attitude and trajectory ephemerides (SPICE kernels; see http://naif/jpl.nasa.gov/). If NOM* keywords use predict and reconstructed attitude and trajectory ephemerides. If there is coverage at the mid-observation time in the reconstructed ephemerides, then the REC* values are used to derive these values. If there is no coverage in the reconstructed ephemerides but there is coverage in the predicted ephemerides, then the NOM* values are used. If there is not coverage in either set of ephemerides, then the missing value (-999) is used. The first three keywords (GEOMQUAL, GEOMPROV, and GEOMSTAT) indicate the state of coverage as just described: reconstructed coverage: YES NO NO predicted coverage: N/A YES NO GEOMQUAL: RECONSTRUCTED PREDICTED PREDICTED GEOMPROV: REC NOM NOM GEOMSTAT: OK OK BAD Most values will be set to -999 if GEOMSTAT is BAD COMMENT ********************************************************************** COMMENT *** Derived geometry values COMMENT ********************************************************************** GEOMQUAL= 'RECONSTRUCTED' / Type of geometry (SPICE kernels) GEOMPROV= 'REC ' / Provenance: (NOMinal or REConstructed) GEOMSTAT= 'OK ' / Quality of following SPICE data (OK or BAD) * Spacecraft-relative Target ephemeris. Target is identified by REC/NOMTRGNM keyword below (RECTRGNM if GEOMPROV is REC, otherwise NOMTRGNM if GEOMPROV is NOM). Units, where appropriate, are at the start of the FITS keyword card comment section (after the slash "/"). * Ranges => between spacecraft and target center. Difference between surface, geometric center and center of mass have not been implemented so these values will always be the same. RANGE = 972036.631 / [km] Instrument range to target surface CTRDIST = 972036.631 / [km] Instrument range to target cntr of mass RANGECEN= 972036.631 / [km] Spacecraft range to center of target * PXLSCALE => Size of a pixel target center, meters. For HRIIR, the 2x2 binned value is always given to preserve the correspondence to MRIVIS which has the same iFOV of 10 microrad as an HRIIR binned pixel. HRIIR: In the spatial dimension, unbinned pixels are 5 microrad wide, and binned pixels are 10 microrad wide. The entrance aperture into the spectrometer is a 10-microrad-wide slit. Therefore, for unbinned modes each image pixel subtends 10x5 microrad or 5x10^-11 steradian on the sky, and for binned modes each image pixel substends 10x10 microrad or 1x10^-10 steradian. HRIIR binning changes only the along-slit spatial dimension of a pixel in a FITS image; it does not change the cross-slit spatial dimension in a FITS image pixel. PXLSCALE= 1944.073 / [m/pixel] Pixel scale, binned if IR * Incidence and emission angles are not calculated and are set to -999. PHANGLE = 98.7656437565 / [deg] Phase angle (Sun-Target-S/C) INANGLE = -999.000 / [deg] Incidence angle EMANGLE = -999.000 / [deg] Emission angle * ADCFRAME => Inertial reference frame for geometric quantities, will be EMEJ2000 (Earth Mean Equator of J2000 Epoch) for all data. ADCFRAME= 'EMEJ2000' / inertial reference frame to target * ADCTIME => Mid-observation SCLK value. ADCTIME = '1/0252237029.135' / [SCLK] Spacecraft time stamp ============================================================================ * ADCQA/X/Y/Z => Attitude of EMEJ2000-frame-relative instrument frame, expressed as a quaternion. The convention used is that of NAIF/SPICE (see http://naif.jpl.nasa.gov/) and the corresponding matrix transforms a 3-element vector expressed in the instrument frame into the equivalent vector in the EMEJ2000 frame. The instrument frames in the image have +Z in the direction of the boresight, -Y up along increasing NAXIS2, and for the Visible CCD instruments (HRIVIS and MRIVIS) +X is to the right along increasing NAXIS1. ADCQA = 0.0358419931055 / Instrument quaternion (qa, SPICE) ADCQX = -0.675198262514 / Instrument quaternion (qx) ADCQY = -0.248557132698 / Instrument quaternion (qy) ADCQZ = 0.693571921010 / Instrument quaternion (qz) * ADCVX/Y/Z => rotation rate of instrument frame around EMEJ2000 X, Y & Z axes, respectively. ADCVX = -5.01870205117E-07 / [radians/sec] Velocity wrt J2000 frame (x) ADCVY = 5.60766835342E-07 / [radians/sec] Velocity wrt J2000 frame (y) ADCVZ = -9.27118426283E-07 / [radians/sec] Velocity wrt J2000 frame (z) * Inverted apparent position, inverted apparent velocity and apparent range of the spacecraft-relative target, corrected for light time and stellar aberration, calculated at the mid-observation time. ***N.B. Extra-solar targets are modeled as objects at a fixed distance of 100 light-years from the Solar System Barycenter along a fixed direction (RA & DEC). The velocity and acceleration of the spacecraft changes the apparent position of the S/C-to-Target vectors via the stellar aberration calculation. Since this calculation in effect integrates the velocity and acceleration of the spacecraft over 100 years, this adds a large apparent offset to the spacecraft position. In later calculations, for example when calculating the S/C-Sun vectors, the simple approach of adding or differencing already-calculated vectors (e.g. S/C-to-Sun = Target-To-Sun - Target-to-S/C ) yields in unrealistic results. It is anticipated that this will be corrected in future versions of the SDC pipeline software. TARSCRX = 927952.949 / [km] Target to S/C range, EME J2000 X TARSCRY = 287404.676 / [km] Target to S/C range, EME J2000 Y TARSCRZ = 34015.991 / [km] Target to S/C range, EME J2000 Z TARSCVX = -2.96051389941 / [km/s] Target to S/C vel, EME J2000 X TARSCVY = -0.893288523629 / [km/s] Target to S/C vel, EME J2000 Y TARSCVZ = 0.137134918665 / [km/s] Target to S/C vel, EME J2000 Z TARSCR = 972036.630752 / [km] Range from Target to S/C * Inverted apparent position, inverted apparent velocity and apparent range of the target-relative Sun, corrected for light time and stellar aberration, calculated at the time the light left the target which reached the spacecraft at the mid-observation time. Note that for extra-solar modeled at a distance of 100 light years, this means that the light which reached the target left the Sun 200 years before the observation; for this case the Sun has been modeled as coincident with the Solar System Barycenter. However, since any extra-solar target will provide its own light and not reflect appreciable light from the Sun, these values have no value anyway. TARSUNRX= 20069320.513 / [km] Target to Sun range, EME J2000 X TARSUNRY= -133808491.148 / [km] Target to Sun range, EME J2000 Y TARSUNRZ= -57995465.005 / [km] Target to Sun range, EME J2000 Z TARSUNVX= 30.2025398980 / [km/s] Target to Sun vel, EME J2000 X TARSUNVY= 4.60741908208 / [km/s] Target to Sun vel, EME J2000 Y TARSUNVZ= 2.08769909585 / [km/s] Target to Sun vel, EME J2000 Z TARSUNR = 147210610.658 / [km] Range from Target to Sun * Inverted apparent position, inverted apparent velocity and apparent range of the earth-relative target, corrected for light time and stellar aberration, calculated at the time the light which left the target, which reached the spacecraft at the mid-observation time, reached the earth. EARTARRX= -389263.828143 / [km] Earth to Target range, EME J2000 X EARTARRY= 56749.0394844 / [km] Earth to Target range, EME J2000 Y EARTARRZ= 9635.41352939 / [km] Earth to Target range, EME J2000 Z EARTARVX= -0.196471053419 / [km/s] Earth to Target vel, EME J2000 X EARTARVY= -0.857920108021 / [km/s] Earth to Target vel, EME J2000 Y EARTARVZ= -0.463295221634 / [km/s] Earth to Target vel, EME J2000 Z EARTARR = 393496.661455 / [km] Range from Earth to Target * Position of the spacecraft-relative Sun, calculated from the linear combination of the TARSUN* and TARSC* vector keywords above. See the note above regarding extra-solar targets. SCSUNRX = 19141367.564 / [km] S/C to Sun range, EME J2000 X SCSUNRY = -134095895.824 / [km] S/C to Sun range, EME J2000 Y SCSUNRZ = -58029480.996 / [km] S/C to Sun range, EME J2000 Z SCSUNR = 147361873.949 / [km] Range from S/C to Sun * Position of the spacecraft-relative Earth, calculated from the linear combination of the EARTAR* and TARSC* vector keywords above. See the note above regarding extra-solar targets. SCEARRX = -538793.463 / [km] S/C to Earth range, EME J2000 X SCEARRY = -344218.496 / [km] S/C to Earth range, EME J2000 Y SCEARRZ = -43659.492 / [km] S/C to Earth range, EME J2000 Z SCEARR = 640851.715 / [km] Range from S/C to Earth * Attitude of the EMEJ2000 frame relative to the instrument frame. - CELESTN => Direction of EMEJ2000 North in FOV, Clockwise from Up, degrees - UP is increasing NAXIS2 - ECLN => Direction of Ecliptic J2000 North in FOV, Clockwise from Up, deg. - BORERA => Right Ascension of boresight, degrees - BOREDEC => Declination of boresight, degrees CELESTN = 293.168170996 / [deg] Celestial North Clock Angle in image ECLN = 270.755380743 / [deg] Ecliptic North Clock Angle in image BORERA = 197.251640302 /[deg] RA of instrument boresight, EMEJ2000 BOREDEC = -2.02563775415 /[deg] DEC of instrument boresight, EMEJ2000 ***N.B. To compute the aspect angle of the North celestial pole (NCP), we define an arbitrary origin to be any point along the boresight (e.g., a point at the center of the image), then the aspect angle of the NCP is the angle between the vector pointing toward the observer from that point and the vector pointing to the NCP as shown here: NCP \ \ /\ aspect / \ | \ | \ observer <------+------O-------------> boresight (RA, Dec of the image center) Then use the direction of the boresight in equatorial coordinates (specifically the declination and given by BOREDEC in the FITS header) to compute the NCP aspect angle (NCPASPCT): NCPASPCT = 90 deg + BOREDEC This, combined with the RA and Dec of the boresight (BORERA and BOREDEC, respectively), and the Clock angle of the Celestial North pole (CELESTN) should define the basic coordinate system that anyone might need. ***N.B. World Coordinate System (WCS) keywords may be derived from the preceding values via the following formulae (square brackets [] indicate formulae involving the values of the keywords within the brackets): WCSAXES = 2 EQUINOX = 2000.0 CTYPE1 = 'RA---TAN' CTYPE2 = 'DEC--TAN' CUNIT1 = 'deg' / Required for Celestial coordinates CUNIT1 = 'deg' / Required for Celestial coordinates CRPIX1 = [NAXIS1 / 2] / Image X of boresight => half of image width CRPIX2 = [NAXIS2 / 2] / Image Y of boresight => half of image height CRVAL1 = [BORERA] / RA of boresight CRVAL2 = [BOREDEC] / DEC of boresight CROTA2 = [CELESTN] / Image UP (+NAXIS2) azimuth, east of north COMMENT CDELTn are instrument-dependent: CDELT1 = 57.25651E-5 / MRIVIS degrees per X pixel (i.e. NAXIS1) CDELT2 = 57.25651E-5 / MRIVIS degrees per Y pixel (i.e. NAXIS2) OR CDELT1 = 0.0 / HRIIR degrees per X pixel (i.e. NAXIS1) CDELT2 = [57.25651E-5 * DETYBIN / 2] / HRIIR degrees per Y pixel (i.e. NAXIS2) OR CDELT1 = 114.58411E-6 / HRIVIS degrees per X pixel (i.e. NAXIS1) CDELT2 = 114.58411E-6 / HRIVIS degrees per Y pixel (i.e. NAXIS2) - N.B. The HRIIR NAXIS1 pixels are wavelength, which is why CDELT1 is zero for the HRIIR instrument, and as such a third WCS axis could be used, but there is a non-linear spectral "smile" across the detector that needs to be taken into account with more subtlety than can be addressed in this document. Refer to the Deep Impact Instrument Calibration paper by Klaasen, et al. (2008) and the EPOXI Instrument Calibration paper by Klaasen, et al. (2013). * The direction to the Sun in the instrument frame. - SOLARCLK => Azimuth of direction to Sun, CW from Up, degrees. - This will almost always be ~180 i.e. solar panel normal & Sun are DOWN - SOLARELO => Solar elongation = Angle between Boresight & Sun with the S/C at the apex of the angle SOLARCLK= 179.999774611 /[deg] Clock Angle to Sun from boresight SOLARELO= 80.8134783843 /[deg] Sun-S/C-Boresight solar elongation ************************************************************************ * The geometry calculated using reconstructed and predicted SPICE kernels * is contained in the following keywords that start with the string "NOM" * N.B. Many of these keywords are SPICE-related and SPICE terms are used * here to describe them with a reference to "see NAIF" or "in NAIF; * refer to http://naif.jpl.nasa.gov/ for further information as there * is not enough space here to explain all of SPICE. ************************************************************************ * Visual separator (NOMSPICE), keyword and software versions - only of use to SDC personnel NOMSPICE= '***** NOM SPICE values ******************************************** NOMKWVER= '2007-12-18' / Version of following SPICE keywords NOMSWVER= 'BTCGENERAL_GETSPICE 2006-06-29' / Version of software * Status of NOM* keywords' SPICE calls (OK or BAD) NOMSTAT = 'OK ' / Quality of following SPICE data (OK or BAD) * SPICE numerical IDs and names of instrument, spacecraft & target - NOMTRGID & NOMTRGNM indicate the target closest to the boresight, not necessarily the targeted OBJECT keyword value identified above. N.B. In certain cases, the orientation of the boresight is known and none of the objects tested by the pipeline are close enough to the boresight to be considered for NOMTRGID and NOMTRGNM. In those cases, the pipeline software inserts the string 'UNKNOWN/USING DIF' for NOMTRGNM and uses the spacecraft as the target to calculate the geometric quantities. This results in accurate but otherwise useless information e.g. the spacecraft-to-target range is zero, &c. NOMINSID= -140110 / Instrument SPICE ID NOMINSNM= 'DIF_HRI_VIS' / Instrument SPICE name NOMSPKID= -140 / Instrument obs SPICE ID, SPK NOMSPKNM= 'DIF ' / Instrument obs SPICE name, SPK NOMSLKID= -140 / Instrument obs SPICE ID, SCLK NOMSLKNM= 'DIF ' / Instrument obs SPICE name, SCLK NOMTRGID= 301 / Target SPICE ID NOMTRGNM= 'MOON ' / Target SPICE name * Spacecraft Clock (SCLK) strings, including partition (see NAIF) NOMPARTN= '1 ' / S/C clock partition NOMSCLK = '1/0252237029.135' / [decoded ticks] S/C clock string, mid-obs * Count of smallest tick (1/256 second) at mid-observation in SCLK - typically called SCLKDP; see NAIF NOMSCLKD= 64572679559.0 / [ticks] S/C SPICE clock, mid-obs * Various forms of UTC (non-ISO & ISO DOY & Calendar, Julian Day) at the S/C. - UTC includes leapseconds i.e. it has jumps - see NAIF. NOMUTCSC= '2007-363 // 21:58:14.147' / [DOY] UTC of SCLK NOMCALSC= '2007 DEC 29 21:58:14.147' / [Calendar] UTC of SCLK NOMISDSC= '2007-363T21:58:14.147' / [ISO DOY] UTC of SCLK NOMISCSC= '2007-12-29T21:58:14.147' / [ISO Calendar] UTC of SCLK NOMJDSC = 'JD 2454464.4154415' / [Julian Day] UTC of SCLK * Barycentric time at the S/C, seconds past the J2000 epoch; see NAIF - sometimes called ephemeris time or atomic time NOMTDBSC= 252237559.330 / [s past J2000] TDB of SCLK * NOMISCEA => UTC at the earth's center receiving light from NOMTRGNM at the same time as the light is received at the spacecraft. NOMISCEA= '2007-12-29T21:58:16.284' / [ISO Calendar] UTC of mid obs at Earth * NOMJD0 => Integer part of NOMJDSC NOMJSC => Fractional part of NOMJDSC NOMJD0 = 2454464 / [d] Whole day of JDSC NOMJSC = 0.415441500000 / [d] JD@S/C = JDSC - JD0, Julian Day at S/C * Apparent Range, Position, and velocity, in EMEJ2000 frame, from NOMTRGNM of S/C corrected for light-time and stellar aberration with S/C as observer at S/C mid-obs time. ***N.B. See note above regarding extra-solar targets. NOMSCRNG= 972036.631 / [km] Range, Target to S/C NOMSCX = 927952.949 / [km] Target to S/C, J2000 Equat X NOMSCY = 287404.676 / [km] Target to S/C, J2000 Equat Y NOMSCZ = 34015.991 / [km] Target to S/C, J2000 Equat Z NOMSCVX = -2.96051389941 / [km/s] dSCX/dt NOMSCVY = -0.893288523629 / [km/s] dSCY/dt NOMSCVZ = 0.137134918665 / [km/s] dSCZ/dt * UTC JD at time light which reaches S/C at mid-obs left NOMTRGNM - Fractional part of JD; add NOMJD0 to get full JDUTC. NOMJTARG= 0.415403999854 / [d] JD@Target = JSC - SCRNG/Clight * Apparent Range, Position, and velocity, in EMEJ2000 frame from NOMTRGNM of Sun corrected for light-time and stellar aberration with NOMTRGNM as observer at time NOMJTARG+NOMJD0. ***N.B. See note above regarding extra-solar targets. NOMSORNG= 147210610.658 / [km] Range, Target to Sun NOMSOX = 20069320.513 / [km] Target to Sun, J2000 Equat X NOMSOY = -133808491.148 / [km] Target to Sun, J2000 Equat Y NOMSOZ = -57995465.005 / [km] Target to Sun, J2000 Equat Z NOMSOVX = 30.2025398980 / [km/s] dSOX/dt NOMSOVY = 4.60741908208 / [km/s] dSOY/dt NOMSOVZ = 2.08769909585 / [km/s] dSOZ/dt * NOMJSUN => UTC JD at time light which reaches S/C at mid-obs left Sun to reflect off of NOMTRGNM. - Fractional part of JD; add NOMJD0 to get full JDUTC. NOMJSUN = 0.409720600117 / [d] JD@Sun = JTARG - SORNG/Clight * Apparent Range, Position, and velocity, in EMEJ2000 frame from Earth of NOMTRGNM with light leaving NOMTRGNM at NOMJTARG+NOMJD0 and corrected for light-time and stellar aberration with Earth as observer. ***N.B. See note above regarding extra-solar targets. NOMEORNG= 393496.661 / [km] Range, Earth Observer to Target NOMEOX = -389263.828 / [km] Earth Observer to Target, J2000 Equat X NOMEOY = 56749.039 / [km] Earth Observer to Target, J2000 Equat Y NOMEOZ = 9635.414 / [km] Earth Observer to Target, J2000 Equat Z NOMEOVX = -0.196471053419 / [km/s] dEOX/dt NOMEOVY = -0.857920108021 / [km/s] dEOY/dt NOMEOVZ = -0.463295221634 / [km/s] dEOZ/dt * NOMJEO => UTC JD at time light leaving NOMTRGNM at NOMJTARG+NOMJD0 reaches Earth. - Fractional part of JD; add NOMJD0 to get full JDUTC. NOMJEO = 0.415419199970 / [d] JD@Earth Obs = JTARG + EORNG/Clight * Apparent RA and DEC of NOMTRGNM from center of Earth NOMEORA = 171.705536078 / [deg] RA of Target from Earth observer@JEO NOMEODEC= 1.40312172310 / [deg] DEC of Target from Earth observer@JEO * Apparent Range, Position, and velocity, in EMEJ2000 frame from S/C of Earth with light from S/C at mid-obs. time reaching Earth. ***N.B. See note above regarding extra-solar targets. NOMERNG = 640851.715 / [km] Range, S/C to Earth NOMEX = -538793.463 / [km] S/C to Earth, J2000 Equat X NOMEY = -344218.496 / [km] S/C to Earth, J2000 Equat Y NOMEZ = -43659.492 / [km] S/C to Earth, J2000 Equat Z NOMEVX = 3.15761946252 / [km/s] dEX/dt NOMEVY = 1.75154009853 / [km/s] dEY/dt NOMEVZ = 0.326220769168 / [km/s] dEZ/dt * NOMJE => UTC JD at time light leaving NOMJSC+NOMJD0 reaches Earth - Fractional part of JD; add NOMJD0 to get full JDUTC. NOMJE = 0.415466300212 / [d] JD@Earth = JSC + ERNG/Clight * NOMSCQDT => When retrieving a S/C or instrument quaternion from SPICE by time, SPICE may retrieve a quaternion from a time near the desired time. The value for this keyword keeps track of the offset between the time of the retrieved quaternion and the mid-obs. time in seconds. NOMSCQDT= 0.00000000000 / [s] Tquat - Tmid-obs Quaternion time offset * NOMSCQA/X/Y/Z => Instrument quaternion (see NAIF) to generate transformation matrix to convert vectors in the Instrument Frame to equivalent vectors in the EMEJ2000 Frame. See NAIF documentation to explain the convention for these values. The instrument frames in the image have +Z in the direction of the boresight, -Y up along increasing NAXIS2, and for the Visible CCD instruments (HRIVIS and MRIVIS +X is to the right along increasing NAXIS1. NOMSCQA = 0.0358419931055 / cos(theta/2) Instrument frame quaternion: NOMSCQX = -0.675198262514 / sin(theta/2)*X - NAIF/SPICE convention NOMSCQY = -0.248557132698 / sin(theta/2)*Y - Transforms Instr vector NOMSCQZ = 0.693571921010 / sin(theta/2)*Z to J2000 Equat ref frame * NOMSCVQX/Y/Z => J2000-axes-relative instrument rrame rotation rates. NOMSCVQX= -5.01870205117E-07 / [rad/s] Velocity wrt J2000 Equat X NOMSCVQY= 5.60766835342E-07 / [rad/s] Velocity wrt J2000 Equat Y NOMSCVQZ= -9.27118426283E-07 / [rad/s] Velocity wrt J2000 Equat Z * EMEJ2000 and Ecliptic J2000 frame North clock angles, clockwise from UP NOMEMEN = 293.168170996 / [deg] J2000 Equat. North angle, CW from up NOMECLN = 270.755380743 / [deg] ECLIPJ2000 North angle, CW from up * Solar direction in image - NOMSOLCL => Azimuth to Sun, CW from up - NOMSOLEL => Solar elongation i.e. angle from boresight to Sun. NOMSOLCL= 179.999774611 / [deg] Sun clock angle wrt bore, CW from up NOMSOLEL= 80.8134783843 / [deg] Sun-S/C-Boresight elongation * Boresight direction in EMEJ2000 frame NOMSCRA => Boresight Right Ascension NOMSCDEC => Boresight Declination NOMSCRA = 197.251640302 / [deg] RA of Boresight, J2000 Equat NOMSCDEC= -2.02563775415 / [deg] DEC of Boresight, J2000 Equat * The following group of items records the derivation of the mid-observation time from the Base Time contained in the spacecraft clock bytes obtained from the 100-byte header (keywords IMGH094 through IMGH099 above). See NAIF for an extended discussion of SCLK. - NOMSLK0 => SCLK string (see NAIF) of the Base Time time extracted from the 100-byte header. The Base Time is the end time of the exposure. - NOMDSCT0 => Offset from the exposure end time to the mid-obs time, equal to half of the integration time, keyword INTTIME above, seconds. - NOMSLK0D => SCLK ticks (1/256 second; see NAIF) at the base time. - NOMSLK0 => Offset from the exposure end time to the mid-obs time, equal to half of the integration time, keyword INTTIME above, SCLK ticks (see NAIF). - NOMSLK => Derived SCLK string (see NAIF) at the start of the exposure. NOMSCT0 = 252237559.338 / [s past J2000] Base time (Img end) NOMDSCT0= -0.00775000452995 / [s] Delta, Mid-obs - Base time NOMSLK0 = '1/0252237029.137' / S/C clock string, Base time (Img end) NOMSLK0D= 64572679561.0 / [ticks] S/C SPICE clock, Base time NOMDSLK0= -2.00000000000 / [ticks] Delta, Mid-obs - Base time NOMSSLK = '1/0252237029.133' / S/C clock string (Img start) * NOMPXLSZ => Field of view of a pixel in radians. - 2E-6 for HRIVIS - 1E-5 for MRIVIS - 1E-5 for HRIIR, the 2x2 binned value is always given NOMPXLSZ= 2.00000000000E-06 / [radians] Pixel size, binned if IR * The sub-spacecraft, -solar and -earth latitude and longitude on the NOMTRGNM target. For solar system targets, the attitude or rotation models are in NAIF SPICE kernels. For example, the IAU standard of east longitudes is used for EPOCh Earth observations. For extra-solar targets, the attitude is set coincident with the EMEJ2000 frame and no rotation. NOMSCLAT= -3.75964189436 /[deg] Sub-spacecraft IAU latitude NOMSCLON= 31.1267589050 /[deg] Sub-spacecraft IAU longitude NOMSOLAT= -1.20981982905 /[deg] Sub-solar IAU latitude NOMSOLON= 292.259621274 /[deg] Sub-solar IAU longitude NOMEOLAT= 2.59642991395 /[deg] Sub-earth-observer IAU latitude NOMEOLON= 6.18428149900 /[deg] Sub-earth-observer IAU longitude * NOMRANGB => the distance along the boresight to the apparent NOMTRGNM target body center i.e. the distance from the apparent NOMTRGNM target to the plane of the instrument detector, km. NOMRANGB= 972036.298370 / [km] Range along boresight to body ctr * The following group of keywords gives the attitude of the NOMTRGNM target in the instrument frame. As noted above, solar system targets' attitudes are obtained from SPICE kernels and extra-solar target attitudes are set coincident with the EMEJ2000 frame. - NOMPPAZ => Azimuth of target body North, clockwise from up - NOMOFFBR => The offset of the target body center from the boresight, positive to the right of the boresight, microradians. - NOMOFFBD => The offset of the target body center from the boresight, positive below the boresight, microradians. - Divide NOMOFFBR (visible CCDs only) and NOMOFFBD by the nominal pixel size (NOMPXLSZ above) and any non-unit binning, keywords DETXBIN and DETYBIN, respectively to get the pixel offset of the target body center from the center of the frame. - Note that these values are based on geometry of varying accuracy and may be significantly off from the actual values. - NOMPPOLX/Y/Z => A unit vector of the target body North Pole in the NAIF instrument frame (-Y is up, +Z is boresight; see NAIF). NOMPPAZ = 271.810121524 /[deg] Body IAU +Pole azimuth, CW from up NOMOFFBR= -29.570 / [uRadians] Body ctr offset wrt bore, RIGHT NOMOFFBD= -826.447 / [uRadians] Body ctr offset wrt bore, DOWN NOMPPOLX= -0.997353617623 /[N/A] Body IAU +Pole in FOV, Xinstr NOMPPOLY= -0.0315194615383 /[N/A] Body IAU +Pole in FOV, Yinstr NOMPPOLZ= 0.0655155321871 /[N/A] Body IAU +Pole in FOV, Zinstr * NOMOFFBX/Y/Z => These values are the offset of the body center from a point NOMRANGB (keyword above) out along the boresight, km. NOMOFFBZ should always be zero. NOMOFFBX= -28.7432337806 / [km] Body ctr offset wrt bore@RANGB, Xinstr NOMOFFBY= -803.336469233 / [km] Body ctr offset wrt bore@RANGB, Yinstr NOMOFFBZ= 0.00000000000 / [km] Body ctr offset wrt bore@RANGB, Zinstr * NOMKnnnn => The following list comprises the SPICE kernels (see NAIF) which were loaded to calculate the predicted geometry of the NOM* keywords above. NOMK0000= '*** Source SPICE kernels loaded follow ***' / NOMK0001= 'TK:starnames_2008253_074135.tpc' / SPICE Kernel # 0001 NOMK0002= 'TK:impacttoi_0006.tpc' / SPICE Kernel # 0002 NOMK0003= 'TK:naif0009.tls' / SPICE Kernel # 0003 NOMK0004= 'TK:pck00008.tpc' / SPICE Kernel # 0004 NOMK0005= 'TK:DIF_SCLKSCET.00035.tsc' / SPICE Kernel # 0005 NOMK0006= 'TK:di_v17.tf' / SPICE Kernel # 0006 NOMK0007= 'TK:dif_hri_v10.ti' / SPICE Kernel # 0007 NOMK0008= 'TK:dif_mri_v10.ti' / SPICE Kernel # 0008 NOMK0009= 'CK:dif_predict_050112_050809.bc' / SPICE Kernel # 0009 NOMK0010= 'CK:dif_epoxi_predict_v20081206.bc' / SPICE Kernel # 0010 NOMK0011= 'CK:dif_sc_050112_050809.bc' / SPICE Kernel # 0011 NOMK0012= 'CK:dif_sc_050225_highrate.bc' / SPICE Kernel # 0012 NOMK0013= 'CK:dif_sc_050704_highrate.bc' / SPICE Kernel # 0013 NOMK0014= 'CK:dif_sc_2007-12-29.bc' / SPICE Kernel # 0014 NOMK0015= 'SPK:stars_2008253_074135.bsp' / SPICE Kernel # 0015 NOMK0016= 'SPK:jup164_20year.bsp' / SPICE Kernel # 0016 NOMK0017= 'SPK:spk_od219_full.bsp' / SPICE Kernel # 0017 ************************************************************************ * The geometry calculated using only reconstructed SPICE kernels * is contained in the following keywords that start with the string "REC" * There are no detailed descriptions in this section; see the NOM* keyword * section immediately above for a description of these keywords as the * same naming convention is used e.g. keyword RECTRGNM below is analogous * to keyword NOMTRGNM above. ************************************************************************ RECSPICE= '***** REC SPICE values ******************************************** RECKWVER= '2007-12-18' / Version of following SPICE keywords RECSWVER= 'BTCGENERAL_GETSPICE 2006-06-29' / Version of software RECSTAT = 'OK ' / Quality of following SPICE data (OK or BAD) RECINSID= -140110 / Instrument SPICE ID RECINSNM= 'DIF_HRI_VIS' / Instrument SPICE name RECSPKID= -140 / Instrument obs SPICE ID, SPK RECSPKNM= 'DIF ' / Instrument obs SPICE name, SPK RECSLKID= -140 / Instrument obs SPICE ID, SCLK RECSLKNM= 'DIF ' / Instrument obs SPICE name, SCLK RECTRGID= 301 / Target SPICE ID RECTRGNM= 'MOON ' / Target SPICE name RECPARTN= '1 ' / S/C clock partition RECSCLK = '1/0252237029.135' / [decoded ticks] S/C clock string, mid-obs RECSCLKD= 64572679559.0 / [ticks] S/C SPICE clock, mid-obs RECUTCSC= '2007-363 // 21:58:14.147' / [DOY] UTC of SCLK RECCALSC= '2007 DEC 29 21:58:14.147' / [Calendar] UTC of SCLK RECISDSC= '2007-363T21:58:14.147' / [ISO DOY] UTC of SCLK RECISCSC= '2007-12-29T21:58:14.147' / [ISO Calendar] UTC of SCLK RECJDSC = 'JD 2454464.4154415' / [Julian Day] UTC of SCLK RECTDBSC= 252237559.330 / [s past J2000] TDB of SCLK RECISCEA= '2007-12-29T21:58:16.284' / [ISO Calendar] UTC of mid obs at Earth RECJD0 = 2454464 / [d] Whole day of JDSC RECJSC = 0.415441500000 / [d] JD@S/C = JDSC - JD0, Julian Day at S/C RECSCRNG= 972036.631 / [km] Range, Target to S/C RECSCX = 927952.949 / [km] Target to S/C, J2000 Equat X RECSCY = 287404.676 / [km] Target to S/C, J2000 Equat Y RECSCZ = 34015.991 / [km] Target to S/C, J2000 Equat Z RECSCVX = -2.96051389941 / [km/s] dSCX/dt RECSCVY = -0.893288523629 / [km/s] dSCY/dt RECSCVZ = 0.137134918665 / [km/s] dSCZ/dt RECJTARG= 0.415403999854 / [d] JD@Target = JSC - SCRNG/Clight RECSORNG= 147210610.658 / [km] Range, Target to Sun RECSOX = 20069320.513 / [km] Target to Sun, J2000 Equat X RECSOY = -133808491.148 / [km] Target to Sun, J2000 Equat Y RECSOZ = -57995465.005 / [km] Target to Sun, J2000 Equat Z RECSOVX = 30.2025398980 / [km/s] dSOX/dt RECSOVY = 4.60741908208 / [km/s] dSOY/dt RECSOVZ = 2.08769909585 / [km/s] dSOZ/dt RECJSUN = 0.409720600117 / [d] JD@Sun = JTARG - SORNG/Clight RECEORNG= 393496.661 / [km] Range, Earth Observer to Target RECEOX = -389263.828 / [km] Earth Observer to Target, J2000 Equat X RECEOY = 56749.039 / [km] Earth Observer to Target, J2000 Equat Y RECEOZ = 9635.414 / [km] Earth Observer to Target, J2000 Equat Z RECEOVX = -0.196471053419 / [km/s] dEOX/dt RECEOVY = -0.857920108021 / [km/s] dEOY/dt RECEOVZ = -0.463295221634 / [km/s] dEOZ/dt RECJEO = 0.415419199970 / [d] JD@Earth Obs = JTARG + EORNG/Clight RECEORA = 171.705536078 / [deg] RA of Target from Earth observer@JEO RECEODEC= 1.40312172310 / [deg] DEC of Target from Earth observer@JEO RECERNG = 640851.715 / [km] Range, S/C to Earth RECEX = -538793.463 / [km] S/C to Earth, J2000 Equat X RECEY = -344218.496 / [km] S/C to Earth, J2000 Equat Y RECEZ = -43659.492 / [km] S/C to Earth, J2000 Equat Z RECEVX = 3.15761946252 / [km/s] dEX/dt RECEVY = 1.75154009853 / [km/s] dEY/dt RECEVZ = 0.326220769168 / [km/s] dEZ/dt RECJE = 0.415466300212 / [d] JD@Earth = JSC + ERNG/Clight RECSCQDT= 0.00000000000 / [s] Tquat - Tmid-obs Quaternion time offset RECSCQA = 0.0358419931055 / cos(theta/2) Instrument frame quaternion: RECSCQX = -0.675198262514 / sin(theta/2)*X - NAIF/SPICE convention RECSCQY = -0.248557132698 / sin(theta/2)*Y - Transforms Instr vector RECSCQZ = 0.693571921010 / sin(theta/2)*Z to J2000 Equat ref frame RECSCVQX= -5.01870205117E-07 / [rad/s] Velocity wrt J2000 Equat X RECSCVQY= 5.60766835342E-07 / [rad/s] Velocity wrt J2000 Equat Y RECSCVQZ= -9.27118426283E-07 / [rad/s] Velocity wrt J2000 Equat Z RECEMEN = 293.168170996 / [deg] J2000 Equat. North angle, CW from up RECECLN = 270.755380743 / [deg] ECLIPJ2000 North angle, CW from up RECSOLCL= 179.999774611 / [deg] Sun clock angle wrt bore, CW from up RECSOLEL= 80.8134783843 / [deg] Sun-S/C-Boresight elongation RECSCRA = 197.251640302 / [deg] RA of Boresight, J2000 Equat RECSCDEC= -2.02563775415 / [deg] DEC of Boresight, J2000 Equat RECSCT0 = 252237559.338 / [s past J2000] Base time (Img end) RECDSCT0= -0.00775000452995 / [s] Delta, Mid-obs - Base time RECSLK0 = '1/0252237029.137' / S/C clock string, Base time (Img end) RECSLK0D= 64572679561.0 / [ticks] S/C SPICE clock, Base time RECDSLK0= -2.00000000000 / [ticks] Delta, Mid-obs - Base time RECSSLK = '1/0252237029.133' / S/C clock string (Img start) RECPXLSZ= 2.00000000000E-06 / [radians] Pixel size, binned if IR RECSCLAT= -3.75964189436 /[deg] Sub-spacecraft IAU latitude RECSCLON= 31.1267589050 /[deg] Sub-spacecraft IAU longitude RECSOLAT= -1.20981982905 /[deg] Sub-solar IAU latitude RECSOLON= 292.259621274 /[deg] Sub-solar IAU longitude RECEOLAT= 2.59642991395 /[deg] Sub-earth-observer IAU latitude RECEOLON= 6.18428149900 /[deg] Sub-earth-observer IAU longitude RECRANGB= 972036.298370 / [km] Range along boresight to body ctr RECPPAZ = 271.810121524 /[deg] Body IAU +Pole azimuth, CW from up RECOFFBR= -29.570 / [uRadians] Body ctr offset wrt bore, RIGHT RECOFFBD= -826.447 / [uRadians] Body ctr offset wrt bore, DOWN RECPPOLX= -0.997353617623 /[N/A] Body IAU +Pole in FOV, Xinstr RECPPOLY= -0.0315194615383 /[N/A] Body IAU +Pole in FOV, Yinstr RECPPOLZ= 0.0655155321871 /[N/A] Body IAU +Pole in FOV, Zinstr RECOFFBX= -28.7432337806 / [km] Body ctr offset wrt bore@RANGB, Xinstr RECOFFBY= -803.336469233 / [km] Body ctr offset wrt bore@RANGB, Yinstr RECOFFBZ= 0.00000000000 / [km] Body ctr offset wrt bore@RANGB, Zinstr RECK0000= '*** Source SPICE kernels loaded follow ***' / RECK0001= 'TK:starnames_2008253_074135.tpc' / SPICE Kernel # 0001 RECK0002= 'TK:impacttoi_0006.tpc' / SPICE Kernel # 0002 RECK0003= 'TK:naif0009.tls' / SPICE Kernel # 0003 RECK0004= 'TK:pck00008.tpc' / SPICE Kernel # 0004 RECK0005= 'TK:DIF_SCLKSCET.00035.tsc' / SPICE Kernel # 0005 RECK0006= 'TK:di_v17.tf' / SPICE Kernel # 0006 RECK0007= 'TK:dif_hri_v10.ti' / SPICE Kernel # 0007 RECK0008= 'TK:dif_mri_v10.ti' / SPICE Kernel # 0008 RECK0009= 'CK:dif_sc_050112_050809.bc' / SPICE Kernel # 0009 RECK0010= 'CK:dif_sc_050225_highrate.bc' / SPICE Kernel # 0010 RECK0011= 'CK:dif_sc_050704_highrate.bc' / SPICE Kernel # 0011 RECK0012= 'CK:dif_sc_2007-12-29.bc' / SPICE Kernel # 0012 RECK0013= 'SPK:stars_2008253_074135.bsp' / SPICE Kernel # 0013 RECK0014= 'SPK:jup164_20year.bsp' / SPICE Kernel # 0014 RECK0015= 'SPK:spk_od219_full.bsp' / SPICE Kernel # 0015 ************************************************************************ * End of reconstructed geometry keywords REC* ************************************************************************ * KPK* keywords: based on sequence planning "Apgen" Excel workbooks i.e. all of the keywords above are based on synoptic information obtained at the time of the observation. The KPK keywords are based on the intent of the observation as directed by the science team and placed into the Apgen workbooks by Ken P. Klaasen (KPK), Dennis Wellnitz, and others. The Apgen workbooks comprise one or more of several worksheets: a pointing worksheet which describes the spacecraft attitude and an instrument worksheet for each instrument (HRIIR and/or HRIVIS and/or MRIVIS) which will be taking data during the time covered by the workbook. The pipeline software uses the mid-observation time and the instrument identifier to determine which pointing worksheet and which instrument worksheets cover the observation. It then extracts selected information - target & observation purpose (mission timeline and worksheet comments) - from the worksheets and places it in the FITS header in the KPK* keywords. * The first group are older KPK* keywords which were used for Deep Impact prime mission but are obsolete. KPKMSNTL= 'UNK ' / KPK/APGEN Mission Timeline KPKCMMNT= 'UNK ' / KPK/APGEN Comments KPKSEQNM= 'UNK ' / KPK/APGEN Sequence Name KPKTARG = 'UNK ' / KPK/APGEN Target * KPKIWKBK => The name of the Excel(tm) Apgen workbook which provided the instrument worksheet. * KPKIMNTL => The mission timeline entry from the instrument worksheet. * KPKICOMM => The comments entry from the instrument worksheet. KPKIWKBK= 'EPOXILunarCal112707' / KPK Instrument - ApGEN Workbook KPKIMNTL= 'Lunar calibration' / " - Mission Timeline KPKICOMM= 'Radiometry; Pos. 3' / " - Comments * KPKPWKBK => The name of the Excel(tm) Apgen workbook which provided the pointing worksheet. * KPKPOBJT => The intended target for this observation. * KPKPCOMM => The comments entry from the pointing worksheet. KPKPWKBK= 'EPOXILunarCal112707' / KPK pointing - ApGEN Workbook KPKPOBJT= 'MOON ' / " - Target KPKPCOMM= 'HRI Radiometry' / " - Comments * The following KPK* keywords provide the geometry of the *intended* target observation via SPICE calls, independent of synoptic target determined in NOM* and REC* keyword sections above by finding the closest object to the instrument boresight. In most cases the two targets will be the same, but if for example there is a gap in the SPICE C-Kernels' (spacecraft attitude) time coverage, then this section will provide basic geometry. - KPKPOSEP => A visual separator and identifier for this section. - KPKPOSTA => The status of the geometry calculation (OK or BAD). - KPKPOALT => The intended target from KPKPOBJT above. - KPKSSBTC => The Solar System Barycenter (SSB) Time Correction i.e. the offset from the mid-observation time to the time when light, which left the KPKPOALT target at the same time as the light which reached the spacecraft at the mid-obs time, reaches the SSB. - KPKSSBJT => The TDB JD (see NAIF) when the light referred to in KPKSSBTC above reaches the SSB. This value was intended for EPOCh exoplanet transit targets and be used with caution for targets within our solar system. To convert TDB JD to the UTC system for exoplanet transit data in 2008, subtract 65.148 seconds. The EPOCh project notes that although TDB JD has a precision on the order of tens of milliseconds, the accuracy is about one second or less which is adequate for transit analysis. - KPKPOSCX/Y/Z/R => the vector and range from the KPKPOBJT target to the S/C, corrected for light time only, with the S/C as the observer. - KPKPOBAX/Y/Z/R => the vector and range from the KPKPOBJT target to the SSB, corrected for light time only, with the SSB as the observer. KPKPOSEP= '**KPKPOBJT CALC**' / Lighttime corr. only; none for stellar aberr. KPKPOSTA= 'OK ' / KPKPOBJT calculation status (OK or BAD) KPKPOALT= 'MOON ' / KPKPOBJT - NAIF body name used here KPKSSBTC= 490.2 / [s] KPKPOBJT-SSB time correction, Tbary-Ts/c KPKSSBJT= 2454464.42186998 / [JD TDB] When light reaches Solar Barycenter KPKPOSCX= 927948.7 / [km] KPKPOBJT to S/C, EME J2000 X KPKPOSCY= 287418.8 / [km] KPKPOBJT to S/C, EME J2000 Y KPKPOSCZ= 34013.5 / [km] KPKPOBJT to S/C, EME J2000 Z KPKPOSCR= 972036.6 / [km] KPKPOBJT to S/C range KPKPOBAX= 20058860.7 / [km] KPKPOBJT to SSB, EME J2000 X KPKPOBAY= -134490495.5 / [km] KPKPOBJT to SSB, EME J2000 Y KPKPOBAZ= -58279482.4 / [km] KPKPOBJT to SSB, EME J2000 Z KPKPOBAR= 147941033.3 / [km] KPKPOBJT to SSB range * DNAXIS1/2 => the direction of the first (NAXIS1) and second (NAXIS2) axes of the image in the FOV (RIGHT, LEFT, UP, or DOWN) and in the instrument SPICE frame (see NAIF). DNAXIS1 = 'RIGHT, +Xinstr' / Dir of +NAXIS1 in image and FOV frame DNAXIS2 = 'UP, -Yinstr' / Dir of +NAXIS2 in image and FOV frame * HOSTNAME/IP => The internet host name and IP address of the system on which this FITS file was created. HOSTNAME= 'erotica.astro.umd.edu' / FITS writer IP host name HOSTIP = '129.2.15.83' / FITS writer IP host IP address * O_BZERO => An obsolete keyword from the raw FITS file version of this observation. O_BZERO = 32768.0 /Original Data is unsigned Integer * Target motion and offset estimates in the FOV with respect to ADC pointing and velocity information (ADCQA/X/Y/Z and ADCVX/Y/X, respectively). The following six target motion and offset keywords were implemented in early 2011 for the DIXI/Hartley2 encounter, primarily for the analysis of HRI-IR scans. The values given below were captured from one HRI-IR frame of Hartley2 and are provided only as examples. Experience has shown that these angular velocities, derived from attitude telemetry, have a lot of noise in them (50% or more on a scale of ~5 seconds). SPICE data based on angular velocities from spacecraft attitude telemetry will never be good enough for more precise calculation. For example the computed slit scan rates keywords (SLIT*, below) may be precise enough for IR data analysis and should be used with caution. Also the offsets may have absolute errors of up to a few hundred microradians, but are fairly consistent with respect to other observations taken in the same sequence. As noted in the keyword comments, these velocity and offset quantities are positive to the right (HRI IR frame +X) and down (HRI IR frame +Y). Down is defined as along the PDS LINES (FITS NAXIS2) dimension toward the start of the file (where the first file line appears at the bottom of a standard FITS display); the PDS LINES_SAMPLES (FITS NAXIS1) dimension is spectral and therefore has no spatial meaning. SLITWRAT and SLITHRAT are estimates of the the instantaneous motion of the target across and along the slit, respectively, in units of slit width (10uRad) and slit height (~2500uRad for full-frame spectra), respectively, per integration time. In other words, SLITWRAT and SLITHRAT gives an estimate of how many slit-widths the target moves per observation with respect to the boresight, and vice-versa. TARGVELR and TARGVELD are the velocity estimates of the target across and along the slit, respectively. TARGOFFR and TARGOFFD are the offset estimates of the target across and along the slit, respectively, with respect to the HRI IR boresight (+Z in the HRI IR frame). The values below assume, as an approximation, that the detector read and reset operations are each instantaneous and coincident in time over the entire detector. In reality it can take up to almost three seconds to read all of the pixels from the detector; the distortion from that finite read time, especially during a scan, is not included in these values. Please note the scan rate across the slit can also be computed to a few percent by differencing the RECOFFBR keyword values between sequential observations (that is exposure IDs) and dividing by 10 uRad/slit; correct values for the zigzag IR scans near the time of closest approach to comet Hartley2 would be available by modifying this approach. SLITWRAT= 2.96828297328 / [SlitWid/Exposure] Target motion right in FOV SLITHRAT= -9.16997334898E-05 / [SlitHgt/Exposure] Target motion down in FOV TARGVELR= 5.93617415906 / [uRadian/s] Target motion right in FOV TARGVELD= -0.0938943300678 / [uRadian/s] Target motion down in FOV TARGOFFR= -11.4533273798 / [uRadian] Target offset right in FOV TARGOFFD= 721.337686290 / [uRadian] Target offset down in FOV ************************************************************************ * The remaining keywords are only present in the calibrated data. * They are broken up into three sections: keywords common to visible * CCD and IR detector calibration; keywords which apply only to IR * detector calibration; keywords which apply only to visible CCD * calibration. Refer to the EPOXI Instrument Calibration paper by * Klaasen, et al. (2013) and the Deep Impact Instrument Calibration * paper by Klaasen, et al. (2008) for details of the calibration * pipeline. ************************************************************************ * Visual separators and software provenance, of use only to SDC personnel. COMMENT ********************************************************************** COMMENT ** Calibration information, steps, and files (common to IR and VIS) COMMENT ********************************************************************** FILEVERN= 1.10 / Version number of file format PGMNAME = 'DICAL ' / Program name that produced this file PGMVERN = 5.00 / Version number of the above program * Unused data quality flag; never implemented DATAQUAL= -999 / Data quality (1=good, etc) * Whether temperature and voltage keywords were updated from the raw values during the calibration process. - TMPVLTUP => T if updated; F if not. - TMPVLTV => The date of the updated calibration; invalid if TMPVLTUP is F. TMPVLTUP= F / Physical temps and voltages updated (T/F) TMPVLTV = ' ' / Valid date of physical temps, voltages used * SMOBENT => Smoothed temperature for the Optical Bench point (HRIIR only). - Set to -1 if smoothed temperatures not used. SMOBENT = -1.00000 / Smoothed over time version of OPTBENT [K] ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; * CMPRESSN => T if raw compressed data were decompressed, else F. - Reversible. LUTTABLE => Name of lossy (14-bit to 8-bit) compression lookup table used. CMPRMETH => Numeric indicating lookup table. CMPRESSN= F / Decompression performed (T/F) LUTTABLE= ' ' / Lossy lookup table/algorithm applied CMPRMETH= -999 / Decompress method. 1=avg,2=gauss,3=uniform * Saturated pixel step (Reversible) SATPIX => T if saturation check was performed. *SATVL => Instrument-specific saturation values used. SATPIX = T / Saturated pixels flagged (T/F) SMSATVL = 11000 / DN value where some pixels are saturated MSTSATVL= 15000 / DN value where most pixels are saturated ADCSATVL= 16383 / DN value where the ADC encoder is saturated * Uneven bit weighting step (Irreversible) - Not yet implemented BITCORR = F / Uneven bit weighting corrected (T/F) BITLUT = ' ' / Bit weighting lookup table used * Dark subtraction (Reversible) DARKCORR => T if dark subtraction applied; else F DARKALG => Algorithm used to create dark; will be one of the following: MODEL - Master (MD) dark scaled for temperature MODEL*MANUAL - Dark file specific to the observation, based on MD scaled for temp., plus an additional scale factor applied to the dark file. SPECIFIC - Dark file created for the observation MODEL*MANUAL(PROTOPAPA) - MD, scaled for temp., plus additional scale factor (see DRKMSCP) supplied by the science team, and applied when the data are calibrated. DARKFN => Filename of the file used either directly for the frame or as a basis for the dark model (see DARKALG). BIASFN => Filename of the bias file used; if 'SERIAL OVERCLOCK' then used VIS detector Serial OverClock (SOC) column pixels, which are the columns at the edges of a VIS image, to subtract bias. Keyword is blank for IR because bias correction is not performed. DARKCORR= T / Dark subtraction (T/F) DARKALG = 'MODEL*MANUAL(PROTOPAPA)' / Algorithm used to create dark DARKFN = 'HRIIR_100928_1_5.FIT' / Frame|model dark used BIASFN = ' ' / Filename of bias frame used * Crosstalk removal (Reversible) XTALK => T if crosstalk removal applied; else F. XTALKFN => Filename of source of crosstalk gains used. XTALK = T / Electrical crosstalk removed (T/F) XTALKFN = 'HRIVIS_071004_1_1.FIT' / Filename of crosstalk gains used * Quadrant gain correction (Reversible) GAINCORR => T if quadrant gain correction applied; else F. GAINFN => Filename of gain values used for quadrant gain correction GAINCORR= F / Quadrant Gain correction performed (T/F) GAINFN = ' ' / Filename of gain values used * Flat field corrections (Reversible) FLATCORR => T if flat field correction applied; else F. FLATFILE => Filename of flat field used for flat field correction FLAT_PRO => N/A for VIS; for IR, version of Tony Farnham IDL source code used to generate a flat field, which corrects for the Anti-Saturation Filter (ASF), which position in turn is dependent on instrument temperature, from a master flat. FLATCONS => N/A for VIS; for IR, OK if FLATFILE used (above) is consistent with linearization type (per-quadrant or per-pixel); else ERROR: NON-PER-QUADRANT LINEARIZATION. This is only relevant for the initial version (V201009) of the Tony Farnham IR ASF master flats, which did not handle data linearized by per-pixel linearization constants. FLATTEMP => N/A for VIS; Temperature used to determine ASF profile shift when applying Tony Farnham ASF master flat. Typically equal to OPTBENT, but may use SMOBENT. FLATCORR= T / Flat fielded FLATFILE= 'HRIVIS_050701_3_1_1.FIT' / Name of flat field applied FLAT_PRO= 'DICAL_MAKE_IR_FLAT_PQ_V20121213.PRO' / Flat IDL code used FLATCONS= 'OK ' / Flat consistency check FLATTEMP= 137.1305400 / Temperature used for ASF profile shift * Bad pixels flagged BPIXFL => T if bad pixels were flagged; else F. BPIXFILE => Filename of bad pixel map used to flag bad pixels BPIXFL = T / Bad pixels flagged (T/F) BPIXFILE= 'HRIVIS_020601_2_1_999.FIT' / Name of bad pixel map applied * Clean and/or fill small gaps (Irreversible) CLEAN => T if small gaps were cleaned and/or filled; else F. CLEANV => Maximum size of gap filled. CLNBAD => T if bad pixels were cleaned; else F. CLNMISS => T if missing pixels were cleaned; else F. CLEAN = F / Cleaned/fill small gaps (T/F) CLEANV = -999 / Max filled gap size; -999999=>fill failed CLNBAD = F / Bad pixels cleaned CLNMISS = F / Missing data cleaned * Despiking correction (Irreversible) DESPIKE => T if data were despiked; else F. DESPIKET/I/B/M => Despiking algorithm parameter values used. DESPIKE = F / Despiking applied (T/F) DESPIKET= -999 / Despiking threshold used (sigma) DESPIKEI= -999 / Number of iterations of despiking DESPIKEB= -999 / Boxsize for despiking DESPIKEM= ' ' / Metric used for despiking. Mean or Median * Denoising correction (Irreversible) DENOISE => T if data were denoised; else F. DENOISEV => Denoising algorithm parameter value used. DENOISE = F / Denoising applied (T/F) DENOISEV= ' ' / Denoise parameter applied * Deconvolution correction (Irreversible) DECON => T if data were deconvolved; else F. DECONPSF => Filename of PSF used in deconvolution. DECONALG => Deconvolution algorithm used. DECONV => Deconvolution algorithm parameter values used. DECON = F / Deconvolution performed (T/F) DECONPSF= ' ' / Deconvolution psf used DECONALG= ' ' / Deconvolution algorithm used DECONV = ' ' / Deconvolution algorithm-specific parameter * Calibration window CALWINDW, CALWINPY => N/A for VIS; for IR, IDL- and Python/NumPy-style indices representing the window of calibrated data in the FITS image; pixels outside this window should be considered non-image pixels, and have been set to zero. These text fields each contain two comma-separated pairs of indices enclosed in square brackets ([]); each pair of indices comprises two colon-separated decimal numbers, and expresses the start and end of the range of indices in the window. For CALWINDW: the first pair are the offsets, from the left column of image pixels, of the first and last columns; the second pair are the offsets, from the start (bottom) row of image pixels, of the first and last rows. For CALWINPY: the first pair of indices are offsets, from the start (bottom) edge of image pixels, to the bottom and top edges of the first and last rows of pixels, respectively, of the window; the second pair of indices are offsets, from the left edge of image pixels, to the left and right edges of the first and last columns of pixels, respectively, of the window. N.B. if a pair of indices are LO:HI, then the number of pixels along that dimension is (1+HI-LO) and (HI-LO) for CALWINDW and CALWINPY, respectively. CALWINDW= '[ 2: 509, 3: 255]' / IDL indices to calibrated data window CALWINPY= '[ 3: 256, 2: 510]' / NumPy indices to calibrated data window COMMENT ********************************************************************** COMMENT ** Calibration information, steps, and files specific to IR COMMENT ********************************************************************** * Whether IR linearization applied and linearization coefficients: LINEARIZ => T if data were linearized; else F. LIN_TYPE => 'PER-PIXEL' indicates each pixel was linearized using coefficients derived specifically for that pixel. 'PER-QUAD' indicates quadrant-averaged linearity was performed (i.e, a set of coefficients were derived for each of the two quadrants and these values were used to linearize all pixels in the left or right quadrants.) LIN_FILE => Filename of calibration FITS file containing linearization coefficients; refer to FITS header of cal file for details LINEARIZ= T / Linearization applied (T/F) LIN_TYPE= 'PER-PIXEL' / Linearization type, per-pixel or per-quad LIN_FILE= 'HRIIR_100928_1_5.FIT' / Calibration file of linearization coeffs * IR Master Dark (MD) frame filename, temperatures and other parameters. These values are only relevant when DARKCORR is T and DARKALG value is not SPECIFIC, and refer to the parameters used, and code paths taken, when scaling an IR Master Dark to the specific observation. MDARKVER MD frame version; extracted from MD FITS header DRKPMODE is the mode of the previous sequence (Exposure ID; keyword EXPID) and is used, along with DARKPMODE, to estimate additional scaling of the MD for the first few observations (IMGNUM < 4) in this sequence. DARKISG is the amount of time since the previous sequence (Exposure ID) completed and is used, along with DARKPMODE, to estimate additional scaling of the MD for the first few observations (IMGNUM < 4) in this sequence. DARKxn (xn=A0, A1, B0, B1 or C1) MD temperature scaling coefficients. Used by DRKIRPRO IDL code; see keyword DRKIRPRO below. DRKTMSCL Additional MD scaling factor; hardcoded in DRKIRPRO (below) and intially provided by EPOXI IR dark calibration team ca. June, 2011 DARKPLAT Not used DARKMSCL Additional MD scaling factor for DARKALG = MODEL*MANUAL; - DARKMSCL obtained from FITS header of DARKFN - Not used since DI prime mission data (July, 2005) DRKMSCP Manual scaling factor applied to temperature scaled MD in place of DARKMSCL; used when DARKALG is MODEL*MANUAL(PROTOPAPA) and is only used for observations taken on the day of closest encounter with 103P/Hartley 2. The DRKMSCP manual values were provided by the science team (Silvia Protopapa) for scaling the default dark model DRKMSCPP Provenance (filename) where values used for DRKMSCP originally come from. The filename template is HRIIR_yymmdd_v_0.txt The filename indicates that the file was provided on or about yyymmdd (e.g. 121129 means the values in the file were provided 29.November, 2012), and v is a number (it may be two digits) for discriminating between implementations having the same yymmdd. The calibration type of this file is MANUAL_SCALE_FACTOR. DRKIRPRO Name of MD scaling code, filename template is HRIIR_yymmdd_v_0.PRO The filename indicates that the file applies to observations taken after yyymmdd (e.g. 071004 means obs taken after 04.October, 2007), and v is a number (it may be two digits) for discriminating between implementations having the same yymmdd application date. The calibration type of this file is DARK_MODEL. TEMPFPA Focal Plane Array Temperature used in MD scaling. It is set to the IRFPAT keyword and is called "Tfpa" in the TEMPSCAL equation below. TEMPSIM Simbench (prisms) Temperature used in MD scaling. It is set to the OPTBENT keyword and is called "Tsim" in the TEMPSCAL equation below. TEMPSCAL Value of Arrhenius-like expression used scaling MD for this observation. See file referred to by keyword DRKIRPRO for details. Expression form is A0 * EXP(A1/Tsim) + B0 * EXP(B1/Tfpa) + C0 where A0 et al. are listed in keywords DARKA0 et al., described above, and Tsim = TEMPSIM and Tfpa = TEMPFPA. N.B. This value is not necessarily the multiplier used to scale the master dark; there may be another constant added to it e.g. see keyword DARKC0. DRKTOOHI T(rue) if scaled MD was estimated to remove too much signal DARK99 T(rue) if scaled MD was scaled back because of DRKTOOHI - DARK99 is always F(alse) for EPOXI/DIXI MDARKVER= ' ' / Master dark frame version DRKPMODE= '* ' / Mode of the previous set taken DARKISG = -0.999000 / Inter-sequence gap [msec] DARKA0 = 3.0060000E+10 / Dark level temp coef A_0 DARKA1 = -3384.4000 / Dark level temp coef A_1 DARKB0 = 65630000. / Dark level temp coef B_0 DARKB1 = -2002.0000 / Dark level temp coef B_1 DARKC0 = 0.0583000 / Dark level temp coef C_0 DRKTMSCL= 0.976500 / Manual dark scaling(0.96500)vetoed by DRKMSCP DARKPLAT= F / Dark plateau reached DARKMSCL= -999.000000000 / Manually derived scaling factor DRKIRPRO= 'HRIIR_071004_3_0.pro' / DARKIR_PRO - IDL code used DRKMSCP = -999.000 / Model dark 2012 Protopapa manual scalefactor DRKMSCPP= 'HRIIR_121130_1_0.txt' / Provenance for DRKMSCP TEMPFPA = 84.0420 /[KELVINS] Tfpa temperature used TEMPSIM = 137.116 /[KELVINS] Tsim temperature used TEMPSCAL= 0.634600 / Scaling [A0*EXP(A1/Tsim)+B0*EXP(B1/Tfpa)+C0] DRKTOOHI= F / Modeled dark too high DARK99 = F / Dark scaled back to 99% of dark region * IR flatfield decalibration parameters Starting with EPOXI/DIXI data, T. Farnham delivered flatfields which adjust for the difference in pixels under and outside the anti-saturation filter. Before then, the calibration procedure applied different calibration to those two regions of pixels. These keywords indicate which method has been used for the current observation. FLATTYPE= 'IR_FARNHAM_MASTER_FLAT_V201009' / Flat type identifier FLATNAME= 'IR_FARNHAM_MASTER_FLAT_PQ_V20120914_PIX' / Flat name (PDU/EXTNAME) FASFCORR= T / Flat corrects ASF CASFCORR= F / Cal Const corrects ASF ASFSTAT = 'FLAT ' / ASF corrected by * IR calibration constant (convert to physical units) and parameters. CALCORR = T / Calibration Applied (T/F) CALCONST= -999.000000000 / Calibration Constant Applied CALNUMB0= 1077 / Number of ZERO calibration factors found CALMAP1 = 'HRIIR_050112_13_5_999.FIT' / Calibration constant map interped (1) CALMAP2 = 'HRIIR_050112_13_5_000.FIT' / Calibration constant map interped (2) SPECMAP1= ' ' / Spectral map interpolated over (1) SPECMAP2= ' ' / Spectral map interpolated over (2) HLUTFN = ' ' / H lambda lookup table used COMMENT ********************************************************************** COMMENT ** Calibration information, steps, and files specific to VIS COMMENT ********************************************************************** * VIS horizontal stripe removal (Reversible) Several techniques were developed to deal with residual observation-dependent, semi-coherent stripes in the VIS background data. Calibration procedures to deal with these effects were added to the pipeline, though not always run in the pipeline by default. When a VIS image is destriped, the stripe-removal adjustments (i.e., the offsets that were subtracted) for each line of each quadrant are stored in the DESTRIPE extension to retain the reversibility of the calibration. A combination of the keyword RMSTRIPE and the values in the DESTRIPE image extension determine if horizontal destriping was removed: RMSTRIPE => F means the signal in more than 75% of the FOV is high (>500 DN above dark) and thus the stripes removal algorithm was bypassed. For this case, all values in the DESTRIPE extension are set to zero. If the VIS stripes removal process was turned off in the pipline, such as for the reprocessed version 3.0 ITS images of comet Tempel 1 from the Deep Impact prime mission, then RMSTRIPE is set to F and all values in the DESTRIPE extension are set to zero; the pipeline always creates a DESTRIPE extension for VIS images even if the stripes removal process was turned off. RMSTRIPE is always set to F for IR data, and the DESTRIPE extension is never created. RMSTRIPE => T and a DESTRIPE extension where all values are not zero means horizontal destriping was performed on the image because it was background dominated or the image edges were not significantly dominated by background or source. RMSTRIPE => T and a DESTRIPE extension of all zeros means destriping was attempted but not performed because the image edges were significantly dominated by source. RMSTRIPE= F / Stripe removal algorithm applied (T/F) * VIS frame-transfer smear removal - SMEAR => T if frame-transfer smear removed; else F. - SMEARV => Which algorithm was used; typically 'POC ROWS' i.e. use Parallel OverClock (POC) rows. SMEAR = T / Frame-transfer smear removed (T/F) SMEARV = 'POC ROWS' / Smear removal algorithm applied * Radiance calibration - RADCAL => T if converted to radiance units (W/(m^2*sr*um)); else F. - RADCALV => Radiance calibration constant used, radiance/(DN/s). - RADCALW => Radiance calibration wavelength used (filter-dependent), nm. RADCAL = T / Radiance calibration applied (T/F) RADCALV = 0.00011740000 / Rad cal constant used [W/(m^2*sr*um)/(DN/s)] RADCALW = ' 653.02' / Radiance calib - wavelength used [nm] * I/F calibration - IOFCAL => T if converted to I/FR units (unitless); else F. - IOFCALV => I/F calibration constant used, radiance/(DN/s). - IOFCALW => I/F calibration wavelength used (filter-dependent), nm. - IOFCALD => I/F calibration solar distance used, AU. IOFCAL = F / I/F calibration applied (T/F) IOFCALV = 1470.5861 / I/F cal constant used [W/(m^2*sr*um) @ 1 AU] IOFCALW = ' 624.52' / I/F calib - wavelength used [nm] IOFCALD = 0.98404215 / I/F calib - Distance used [AU] * Multipliers to convert to other calibration units: - since DN, Radiance, and I/F calibration files only differ by a factor from each other, the pipeline was modified to only do one kind of calibration (radiance) and to store the factors to convert to other calibration units in the FITS header. These values are those factors. MULT2RAD= 1.0000000 / Multiplier to convert data to W/(m^2*sr*um) MULT2IOF= 0.0020686491 / Multiplier to convert data to I/F MULT2DN = 132.02726 / Multiplier to convert data to DN * Geometric correction - GEOMCAL => T if geometrically corrected; else F. - GEOMFILE => File used for geometric correction. GEOMCAL = F / Geometric calibration performed (T/F) GEOMFILE= ' ' / File used for geometric calibration * Counts of the number of bad, missing, despiked, interpolated, and of various levels of saturated pixels are made and stored in the following FITS header keywords. These keywords count the number of each of the bits set from the FLAGS FITS extension. Refer to the PDS label of the FLAGS OBJECT and below for more details about what each of those bits mean. BAD: Pixel identified via an a priori external process which examined calibration data. This external process compared the response of each pixel to the average response of all other pixels, and flagged with pixels responses that varied by more than X%. MISS: Missing pixel due to lost telemetry packets or being overwritten by the binary header of the raw telemetry file. All images have a minimum of 50 16-bit or 100 8-bit pixels which are missing. DESPIK: Pixels which were changed because they were identified as brightness spikes (much brighter than other pixels around them) and interpolated over. DN, RADREV and IFREV data have no DESPIKed pixels. INTERP: Pixels which were interpolated over because they they were BAD or MISSing. Does not include DESPIKed pixels PSAT: Pixels which are possibly saturated i.e. with a DN above the threshold where some pixels are out of the linear regime (greater than or equal to 11000 VIS; greater than or equal to 8000DN IR). SAT: Pixels which are likely saturated i.e. with a DN above the threshold where most pixels are out of the linear regime (greater than or equal to 15000 VIS; greater than or equal to 11000DN IR). ASAT: Pixels which caused saturation of the Analogue-to-Digital Converter (ADC) (=0DN or =16383DN, VIS and IR). ULTCMP: Pixels which were ultra-compressed i.e. IR data using LookUp Table (LUT) 2 or LUT 3 with compressed values between 250DN and 255DN inclusive COMMENT ********************************************************************** COMMENT ** Image Quality Statistics COMMENT ********************************************************************** BADPXCT = 2130 / Number of bad pixels MISSPXCT= 50 / Number of missing pixels DESPIKCT= 0 / Number of despiked pixels INTERPCT= 0 / Number of interpolated pixels PSATPXCT= 1978 / Num possibly saturated pix (VIS>=11000DN,IR>=8000DN) SATPXCT = 1967 / Num likely saturated pix (VIS>=15000DN,IR>=11000DN) ASATPXCT= 1966 / Number of ADC saturated pixels ULTCMPCT= 0 / Number of ultra-compressed pixels * FINIS. END ************************************************************************ Revision history: 2014-05-25 SAMcLaughlin Added reference to Klaasen, et al. (2013); fixed minor typos. 2013-03-27 SAMcLaughlin Resolved liens from the March 2013 peer review: Called out OPTBENT (aka Tsim and TEMPSIM) and IRFPAT (aka Tfpa and TEMPFPA) as the two temperatures used for IR calibration, and improved definitions for OPTBENT, IRFPAT, TEMPFPA, TEMPSIM, and TEMPSCAL accordingly. 2013-01-29 BTCarcich Replaced LINAC0-LINBC4 with LIN_FILE 2013-01-28 BTCarcich Updated FLAT_PRO; added FLATTCONS, FLATTEMP, CALWINDW, CALWINPY, LINAC0-LINBC4 2012-12-19 SAMcLaughlin Updated keywords to reflect changes to the IR dark subtraction that were implemented into the pipeline in Nov/Dec 2012. Fixed minor typos. Added RMSTRIPE and FLATNAME, which were missing from the last version of this document. 2011-09-01 BTCarcich - added caution about using velocities and scan rates from spice data - added details about FLAG pixels 2011-07-11 SAMcLaughlin Added keywords to capture target motion and offset in FOV for EPOXI/DIXI mission: SLITWRAT, SLITHRAT, TARGVELR, TARGVELD, TARGOFFR, and TARGOFFD. 2011-06-17 BTCarcich Update IR calibration parameters for EPOXI/DIXI mission, mainly relating to IR master dark temperature scaling. 2009-08-28 SAMcLaughlin Inserted a title for archive purposes, inserted a section from TFarnham immediately after BORERA and BOREDEC to explain how to compute the aspect angle of the North celestial pole using existing keywords, and adjusted the text in some lines that were longer than 78 characters (a PDS convention). 2009-08-21 BTCarcich Added description of IMGH094-IMGH099 and the derivation of, SCSTOP, SCSTART, OBSDATE, OBSMIDDT and OBSENDDT. Also fixed a minor typo. 2009-08-18 BTCarcich Incorporated comments from SAMcLaughlin, added this history 2009-08-17 BTCarcich Initial version ************************************************************************