EPAM Level 1 Data Structures
epam.h , v 1.8
#include "hdfi.h"
#define NUMFRM 128 /* number of minor frames in a cycle */
#define BYTMIN 21 /* number of bytes of epam data per minor frame */
/* reported every 8 major frames (128 minor frames)*/
/* some items are subcommed, hence there are only 2 of them in 8 frames */
struct EpamData
{
uint32 sctime_readout; /* 32 bit spacecraft time at readout */
uint32 sctime_collection; /* 32 bit spacecraft time at collection*/
uint32 QAC; /* indicates the number of missing frame in this cycle */
uint8 QACarr[NUMFRM]; /* each entry corresponds to a single minor frame */
/* if value =0 frame is OK. =1 frame contains fill data*/
uint8 data[NUMFRM][BYTMIN]; /* 21 bytes data per minor frame */
/* 128 minor frames per cycle */
/* sunpulse data */
uint16 PhaseAng[NUMFRM]; /* Phase angle for each frame in this cycle*/
uint16 SunPulLat[2][8]; /* sun pulse latched at mn frm 0&8 [2] */
/* over the 8 [8] major frame cycle */
uint32 SunPulDat[2][8]; /* Sun sensor data */
/* bits 31-24 : unused */
/* bits 23-20 : Mnr frame */
/* bits 19-10 : sub secont count (684.75 cnts=1 sec)*/
/* bits 9- 8 : ID bits, 00=err,01=top,10=side,11=neither */
/* bits 7- 0 : Y angle measurment (Grey code) */
/* */
/* From C&DH Specification (mf0:index1=0, mf8:index1=1) */
/* For the time tag in Science minor frame 0: for a minor */
/* frame ID of 0, the sun pulse would have occured in the */
/* current major frame. For a minor frame ID of 1 to 15, */
/* the sun pulse would have occured in the previous major */
/* frame */
/* For the time tag in Science minor frame 8: for a minor */
/* frame ID of 0-8, the sun pulse would have occured in the */
/* current major frame. For a minor frame ID of 9 to 15, */
/* the sun pulse would have occured in the previous major */
/* frame */
/* Housekeeping data is here */
uint8 Cal[8]; /* int/ext cal readout */
uint8 Ref10[2]; /* +10V Ref Monitor */
uint8 Mon10[2]; /* +10V Monitor */
uint8 Mon6[2]; /* +6V Monitor */
uint8 Bias[2]; /* Detector Bias Voltage Monitor */
uint8 AmpTemp[2]; /* Log Amp D Temperature */
uint8 MFSATemp[2]; /* MFSA Log Amp D Temperature */
uint8 DetTemp[2]; /* Detector D Temperature */
uint8 YTemp[2]; /* EPAM 2B Yoke Temperature */
uint8 InCur[8]; /* input current monitor */
uint8 E1Temp[8]; /* epam 1 electronics temp. */
uint8 Sen2ATemp[8]; /* epam 2a sensor temp. */
uint8 Sen2BTemp[8]; /* epam 2b sensor temp. */
uint8 DeckTemp[8]; /* Instrument Deck Temp near EPAM */
uint8 Cur[8]; /* epam current */
uint8 HtrCur[8]; /* epam heater current */
uint8 PowBits[8]; /* power switching and ordinance bits */
/*--- EPAM power switching and ordinance bits ---*/
/*--- bit position 7: Interface Heater at position 10 of 112 bits ---*/
/*--- bit position 6: Internal Heaters at position 11 of 112 bits ---*/
/*--- bit position 5: Main System Power at position 28 of 112 bits ---*/
/*--- bit position 4: PyroArm (LEMS 30) at position 56 of 112 bits ---*/
/*--- bit position 3: PyroArm (LEMS 120) at position 57 of 112 bits ---*/
/*--- bit position 2: PyroArm (CD) at position 58 of 112 bits ---*/
/*--- bit position 1: 0 ---*/
/*--- bit position 0: 0 ---*/
};
epam_br.h , v 1.6
#include "hdfi.h"
struct Epam_br
{
float64 bin_start; /* beginning of bin. ACE epoch */
float64 bin_end; /* end of bin. ACE epoch */
float32 P1; /* Flux of .047 - .065 Mev ions EPAM */
float32 P3; /* Flux of .112 - .187 Mev ions EPAM */
float32 P5; /* Flux of .310 - .580 Mev ions EPAM */
float32 P7; /* Flux of 1.06 - 1.91 MeV ions EPAM */
float32 DE1; /* Flux of .038 - .053 Mev electrons EPAM */
float32 DE4; /* Flux of .175 - .315 Mev electrons EPAM */
float32 W1; /* Flux of .480 - .966 Mev protons EPAM */
float32 fp6p; /* Flux of .761 - 1.22 Mev protons EPAM */
float32 EPAM_livetime; /* livetime (seconds) for these measurements. */
};
epam_brconst.h , v 1.5
#include "hdfi.h"
#define EPAMRATES 8
/* rate indicies, {0,1,2,3,4,5,6,7} = {P1,P3,P5,P7,DE1,DE4,W1,fp6p} */
static uint16 epam_rn[EPAMRATES][8]= /* rate number locations */
{ 23,131,203,452,0,0,0,0,
25, 61, 97,133,205,288,371,454,
211,294,377,460,0,0,0,0,
213,296,379,462,0,0,0,0,
218,301,384,467,0,0,0,0,
221,304,387,470,0,0,0,0,
163,246,329,412,195,278,361,444,
157,240,323,406,189,272,355,438};
/* number of values per rate per spin pair */
static uint8 epam_rs[EPAMRATES]={4,8,4,4,4,4,8,8};
/* width of energy band in kev */
static uint16 epam_eb[EPAMRATES]={18, 75, 270, 850, 15, 140, 486, 459};
/* geometry factors (cm^2 - sr) */
static float32 epam_geom[EPAMRATES]={.428, .428, .428, .428, .14, .14, .103, .397};
For comments, questions or suggestions regarding these data structures,
email: asc@srl.caltech.edu
Last update: Wed Nov 3 12:45:33 PST 1999