RHESSI Flare List

The RHESSI flare list is created during quicklook processing (and is frequently re-processed). It is distributed with the software and the flare list files can be found in the directory $ssw/hessi/dbase. Both FITS (hessi_flare_list_yyyymm.fits) and text files are available. A text file for the entire mission can be found here.

The flare list is obtained by comparing the observing summary count rate in the 12 to 25 keV energy band to a threshold. The count rate threshold is determined from the background level; for an interval to be considered as a flare candidate, the count rate must be greater than 3*sigma above the background level. The background level is obtained using a 60 second running average. Variations in the count rate due to changes in attenuator state or decimation state are taken into account by use of the "corrected" count rate method, which empirically determines the corrections.

A flare candidate is flagged as a solar flare if the ratio of the 12 to 25 keV counts in the front detector to total 12 to 25 keV counts is 3 sigma above the background level. An exception is made if there is an SAA crossing or data gap; for those cases the front - total ratio must be greater than 90% in the interval for that interval to be considered to be a flare.

Even with the front - total ratio test, particle precipitation events can be confused with flares. A separate test for particles is made in conjunction with the calculation for the highest energy observed in the flare. An upper limit to the expected count rate in the different obs. summary channels due to the observed particle rate is obtained using the program TEMP_PART_UPPER_LIMIT. For the candidate interval to be flagged as a solar flare, the count rate must be greater than twice the expected rate from particles. There is also a spectral test, for a cadidate flare to be accepted the count rate in the 25-50 keV energy band must be greater than the count rate in the 50 to 100 keV band.

The flare position is found using the program HSI_LOCATE_FLARE on different time intervals for the flare, in the energy band from 6 to 25 keV. The process uses 128X128 images for collimators 5, 6, 7, 8 and 9 as follows:

1. Using 16 arcsecond pixels, make a 128x128 backprojection map using
   subcollimator 9 only. 
2. Excluding any pixel within k*FWHM of the rotation center, where k = 1
   FWHM is the FWHM of the subcollimator, determine the location of the 
   brightest pixel in the remaining map.  
3. Repeat steps 1 and 2 for subcollimators 8,7,6 and 5
4. Determine XY0 = [MEDIAN(x), MEDIAN(y)], where x,y are each 5-element
   vectors containing the map peak locations.  This will give a robust
   centroid, provided at least 3 of the map peaks are correct.
5. Select those map peaks that are within a radial distance, R, from XY0
   where R is the FWHM of subcollimator 9.
6. If there are fewer than 3 maps satisfing this condition, the algorithm
   fails.
7. Otherwise, determine the average, X,Y of the selected map peaks. 
   This is the result.

This process is done for different intervals, starting with a two minute interval with the flare peak time at the midpoint, until a valid result is obtained, or there ar no more intervals. Care is taken to avoid attenuator state changes, decimation state changes and bad aspect solutions (using the program HSI_OK_INTV). If the roll solution is not reliable, or is extrapolated, then no position is returned.

Accessing the Flare List

The flare list is an object of type "Hsi_qlook" . This is a subclass of the "Framework" object used for all HESSI objects. Thus the Flare List object has the same data access methods as the other objects, Get and Getdata.


IDL> flare_list_obj = obj_new('hsi_flare_list')

IDL> data = flare_list_obj -> getdata(filename = filename)

Or

IDL> data = flare_list_obj -> getdata(obs_time_interval = obs_time_interval)

Or

 
IDL> data = flare_list_obj -> getdata(filename=filename, time_range=time_range)

As with the Obs Summary, when passing in a filename, the full path for the file is necessary. When passing in obs_time_interval, the data is assumed to be in a directory that is pointed to by the environmental variable $HSI_FLARE_LIST_ARCHIVE. (See instructions on how to get test data and set up a data archive. ) This can be changed by setting the data_dir keyword to the appropriate directory.

The Getdata method returns an array of data structures, one for each flare in the list. If the data is not found, the object is returned with all of the pointers set to -1.

If neither a filename or obs_time_interval is passed in, the getdata method will return the data in the object. (I.e., the same as Get(/data)). It is important to remember that the getdata method must be called with a filename or obs_time_interval input to start.


Contents of the Flare List:

Info:

Data:

Flare List Flags

The Get method, called with the appropriate flag_name as a keyword, returns a bytarr with the values for that flag, one for each flare. E.g.,

IDL> XXX = flare_list_obj -> Get(flag_name = 'SAA_DURING_FLARE')
returns an array of flags, one for each flare; in this case the flag is set to 1 if there is an SAA crossing during the flare. The different flags are defined as follows:
'SAA_AT_START', set to 1 if the flare starts at an SAA boundary.
'SAA_AT_END', set to 1 if the flare ends at an SAA boundary.
'SAA_DURING_FLARE', set to 1 if there is an SAA crossing during the flare.
'ECLIPSE_AT_START', set to 1 if the flare starts at an eclipse boundary. 
'ECLIPSE_AT_END', set to 1 if the flare ends at an eclipse boundary. 
'ECLIPSE_DURING_FLARE', set to 1 if there is an eclipse during the flare.
'FLARE_AT_SOF', set to 1 if the flare is at the start of a level 0 data file.
'FLARE_AT_EOF', set to 1 if the flare is at the end of a level 0 data file.
'FRONT_DECIMATION', set to 1 if there is decimation in the front detectors.
'ATT_STATE_AT_PEAK', the attenuator state at the flare peak.
'DATA_GAP_AT_START', set to 1 if the flare starts at a data gap.
'DATA_GAP_AT_END', set to 1 if the flare ends at a data gap.
'DATA_GAP_DURING_FLARE', set to 1 if there is a data gap during the flare.
'PARTICLE_EVENT', set to 1 if there is a particle_event during the
                  flare. The particle threshold for this flag is 3
                  particles per second in the LO channel particle
                  detector. For flares with particles, the high energy
                  calculation is unreliable.
'DATA_QUALITY', Is a sum of the flags for SAA, eclipse, data gaps,
                particle events, front and rear decimation. The higher
                the number, the worse the data.
'POSITION_QUALITY', set to 1 for an ok flare position.
'ATTEN_0', set to 1 if there is a time during the flare with attenuator state=0.
'ATTEN_1', set to 1 if there is a time during the flare with attenuator state=1.
'ATTEN_2', set to 1 if there is a time during the flare with attenuator state=2.
'ATTEN_3', set to 1 if there is a time during the flare with attenuator state=3.
'REAR_DECIMATION', set to 1 if there is rear segment decimation during the flare.
'MAGNETIC_REGION', set to 1 if there is a high latitude region crossing during the flare.
'IMAGE_STATUS', set to 1 if this flare has been processed by the qlook_image program.
'SPECTRUM_STATUS', set to 1 if this flare has been processed by the qlook_spectra program.

11-Jun-2004, jmm