#ifndef ESTEPS_H #define ESTEPS_H #if 0 #include "ecfg_dcm.h" #include "pcfg_dcm.h" #endif #include "sweeps.h" #include "winddefs.h" #define DAC_TBL_SIZE_PH 120 #define DAC_TBL_SIZE_EH 120 #define DAC_TBL_SIZE_EL 120 #define DAC_TBL_SIZE_PL 232 #define OVERLAP 56 enum { DEFAULT_UNITS, RAW_UNITS, ENERGY_UNITS, VELOCITY_UNITS, ANGLE_UNITS, COS_ANG_UNITS, COUNTS_UNITS, NCOUNTS_UNITS, RATE_UNITS, EFLUX_UNITS, FLUX_UNITS, DISTF_UNITS }; enum { MIDDLE, MAX, MIN, WIDTH }; struct units_format_str { int nrg; int ang; int flx; }; typedef struct units_format_str units_format; struct energy_step30_def { double temp; /* temperature */ double mid[30]; /* middle energy */ double wid[30]; /* energy 1/2 width */ double upper[30]; /* upper limit */ double lower[30]; /* lower limit */ double unc[30]; /* Uncertainty in middle energy */ }; typedef struct energy_step30_def energy_step30; struct energy_step15_def { double temp; /* temperature */ double mid[15]; /* middle energy */ double wid[15]; /* energy half width */ double upper[15]; /* upper limit */ double lower[15]; /* lower limit */ double unc[15]; /* Uncertainty in middle energy */ }; typedef struct energy_step15_def energy_step15; struct energy_steppl_def { /* special case for pesa low */ double temp; /* temperature */ double mid[DAC_TBL_SIZE_PL-3]; /* middle */ double wid[DAC_TBL_SIZE_PL-3]; /* half width */ double upper[DAC_TBL_SIZE_PL-3]; /* upper limit */ double lower[DAC_TBL_SIZE_PL-3]; /* lower limit */ double unc[DAC_TBL_SIZE_PL-3]; /* Uncertainty in middle */ }; typedef struct energy_steppl_def energy_steppl; /*********** Function prototypes *************/ /***** This routine will initialize all the esa energy arrays *****/ void init_estep30_array(energy_step30 *nrg30,uint2 *dactable,sweep_cal *cal); void init_estep15_array(energy_step15 *nrg15,energy_step30 *nrg30); void init_esteppl_array2(energy_steppl *plnrg,uint2 *dactable,sweep_cal *cal, uint2 bndry); int convert_units(int n,double *nrg,float *counts, double T,double dth,double geom,int flux_units); #endif