GSFIT Data Format
Tis section describes the input and output data formats used by the [GSFIT], [GSFITCP], and [GSFITVIEW] applications, which are part of the [GSFIT SSW IDL package].
GSFIT Input Data Format
GSFIT expects input files to contain a multidimensional array of traditional map SSW IDL map structures, having two first mandatory dimensions, number of frequencies and number of time frames, and, if more than one, an optional third dimension, the number of polarizations. The STOKES I demo EOVSA map cube shipped with the GSFIT package is described below.
% IDL_SAVEFILE::RESTORE: Restored variable: EOMAPS. IDL> help, EOMAPS EOMAPS STRUCT = -> <Anonymous> Array[30, 10] IDL> help,eomaps,/str ** Structure <214d9c00>, 26 tags, length=91472, data length=91449, refs=1: DATA FLOAT Array[151, 151] XC DOUBLE 249.22902 YC DOUBLE -224.62914 DX DOUBLE 2.0000000 DY DOUBLE 2.0000000 TIME STRING ' 4-Sep-2017 20:46:36.500' ID STRING 'EOVSA 3.42 GHz' DUR FLOAT 4.00000 XUNITS STRING 'arcsec' YUNITS STRING 'arcsec' ROLL_ANGLE DOUBLE 0.00000000 ROLL_CENTER DOUBLE Array[2] SOHO BYTE 0 L0 DOUBLE 0.00000000 B0 DOUBLE 7.2364274 RSUN DOUBLE 951.09152 RMS FLOAT 3.17954e+006 SNR FLOAT 97.6565 SCALEFAC FLOAT 1.18274 RMSXRAN FLOAT Array[2] RMSYRAN FLOAT Array[2] DATAUNITS STRING 'K' RMSUNITS STRING 'K' FREQ FLOAT 3.42000 FREQUNIT STRING 'GHz' STOKES STRING 'XX'
NOTE: The name of the variable stored in a data file may be arbitrarily, since GSFIT would accept as a valid input data the first restored array of map structure that, in addition to a standard SSW IDL map structure, has at least the following required tags: FREQ, FREQUNIT, STOKES, RMS.
GSFIT Log File Format
GSFIT and GSFITCP applications save the list of spectral fit solutions in binary "*.log" files that are formatted as header section followed by identical records logged in the order in which they are computed at runtime. NOTE: Although such GSFIT/GSFITCP may appear to be traditional IDL *.sav, attempting to restore them via IDL command line using the native RESTORE procedure would only recover the first record logged in the file. To recover the full information stored in such files one may use one of the two support routines that are part of the GSFIT package
IDL> fitlist=gsfit_log2list('gsfitcp.log') % Compiled module: MULTI_RESTORE. % RESTORE: Portable (XDR) SAVE/RESTORE file. % RESTORE: Save file written by gnita@baozi.hpcnet.campus.njit.edu, Fri Mar 1 18:15:09 2019. % RESTORE: IDL version 8.5 (linux, x86_64). % RESTORE: Restored variable: HEADER. % RESTORE: Restored variable: TEMPLATE. % RESTORE: Restored variable: HINT. % RESTORE: Restored variable: KEY. % RESTORE: Restored variable: XDR. % GSFIT_LOG2LIST: Restoring 409599 additional records
IDL> help,fitlist FITLIST STRUCT = -> <Anonymous> Array[409600] IDL> help,fitlist,/str ** Structure <21fed180>, 24 tags, length=504, data length=504, refs=2: X LONG 67 Y LONG 42 T LONG 0 FMIN INT 0 FMAX INT 23 DATA FLOAT Array[30] ERRDATA FLOAT Array[30] SPECFIT FLOAT Array[30] N_NTH DOUBLE 0.00000000 ERRN_NTH DOUBLE 0.00000000 B DOUBLE 0.00000000 ERRB DOUBLE 0.00000000 THETA DOUBLE 0.00000000 ERRTHETA DOUBLE 0.00000000 N_TH DOUBLE 0.00000000 ERRN_TH DOUBLE 0.00000000 DELTA DOUBLE 0.00000000 ERRDELTA DOUBLE 0.00000000 E_MAX DOUBLE 0.00000000 ERRE_MAX DOUBLE 0.00000000 T_E DOUBLE 0.00000000 ERRT_E DOUBLE 0.00000000 CHISQR DOUBLE 0.00000000 RESIDUAL DOUBLE 0.00000000
GSFIT Parameter Map Structure
IDL> maps=gsfit_log2map(file) % RESTORE: Portable (XDR) SAVE/RESTORE file. % RESTORE: Save file written by gnita@baozi.hpcnet.campus.njit.edu, Fri Mar 1 18:15:09 2019. % RESTORE: IDL version 8.5 (linux, x86_64). % RESTORE: Restored variable: HEADER. % RESTORE: Restored variable: TEMPLATE. % RESTORE: Restored variable: HINT. % RESTORE: Restored variable: KEY. % RESTORE: Restored variable: XDR. % GSFIT_LOG2LIST: Restoring 409599 additional record
IDL> help, maps ** Structure <1e0e3430>, 28 tags, length=189883336, data length=189666533, refs=1: FITMAPS STRUCT -> <Anonymous> Array[30, 100] ;[nfreq x ntimes] GSFIT solution maps DATAMAPS STRUCT -> <Anonymous> Array[30, 100] ;[nfreq x ntimes] input data maps use to compute the GSFIT solutions ERRMAPS STRUCT -> <Anonymous> Array[30, 100] ;[nfreq x ntimes] input error maps used to weight the input data N_NTH STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of estimated nonthermal electron densities ERRN_NTH STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated nonthermal electron densities B STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of estimated absolute magnetic field strength ERRB STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated THETA STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of estimated LOS angle of the magnetic field vector ERRTHETA STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated LOS angle of the magnetic field vector N_TH STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of estimated thermal electron densities ERRN_TH STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated thermal electron densities DELTA STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of estimated distribution over energy power law slope ERRDELTA STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated distribution over energy power law slope E_MAX STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of estimated maximum energy cutoff of nonthermal electrons ERRE_MAX STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated maximum energy cutoff of nonthermal electrons T_E STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of estimated plasma temperature ERRT_E STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated plasma temperature CHISQR STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of fit CHISQR RESIDUAL STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of fit Residuals PEAKFLUX STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of estimated peak flux of the fit solution ERRPEAKFLUX STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated peak flux of the fit solution PEAKFREQ STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of estimated peak frequency of the fit solution ERRPEAKFREQ STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated peak frequency of the fit solution WB STRUCT -> <Anonymous> Array[100] ;[ntimes] maps estimated magnetic field energy ERRWB STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated magnetic field energy WNTH STRUCT -> <Anonymous> Array[100] ;[ntimes] maps estimated nonthermal electron energy ERRWNTH STRUCT -> <Anonymous> Array[100] ;[ntimes] maps of 1-sigma fit errors of the estimated nonthermal electron energy HEADER STRUCT -> <Anonymous> Array[1] ;structure containing information about the GSFIT solutions from which these maps were created