Recent Flare List (2021-)

From EOVSA Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

List of EOVSA Flares with Spectrogram Data

Date Time (UT) GOES Class Spectrogram STIX Coverage
2021-01-19 17:50 C1.0 No
2021-02-18 18:04 A8.0
EOVSA 20210218 A8flare.png
data
Yes
2021-04-17 16:46 B9.0
EOVSA 20210417 B9flare.png
data
Yes
2021-04-19 23:36 M1.0
EOVSA 20210419 M1flare.png
data
No
2021-05-05 22:30 B5.0
EOVSA 20210505 B1flare.png
data
Yes
2021-05-07 19:00 M4.0
EOVSA 20210507 M4flare.png
data
Yes
2021-05-08 18:30 C9.0
EOVSA 20210508 C9flare.png
data
Yes
2021-05-09 13:55 C4.0
EOVSA 20210509 C4flare.png
data
Yes
2021-05-17 19:05 B5.0
EOVSA 20210517 B5flare.png
data
Yes
2021-05-21 19:25 C5.0
EOVSA 20210521 C5flare.png
data
Yes
2021-05-22 16:10 C1.0
EOVSA 20210522 C1flare.png
data
Yes
2021-05-22 17:10 M1.0
EOVSA20210522 M1flare.png
data
Yes
2021-05-22 21:30 M1.4
EOVSA 20210522 M1.4flare.png
data
Yes
2021-05-22 23:11 C7.0
EOVSA 20210522 C7flare.png
data
Yes
2021-05-23 17:00 C2.0
EOVSA 20210523 C2flare.png
data
Yes
2021-05-27 22:00 C1.0
EOVSA 20210527 C1flare.png
data
No
2021-05-27 23:10 C7.0
EOVSA 20210527 C7flare.png
data
No
2021-05-28 22:30 C9.0
EOVSA 20210528 C9flare.png
data
No

Code to read spectrogram file

from __future__ import print_function
def rd_datfile(file):
    ''' Read EOVSA binary spectrogram file and return a dictionary with times 
        in Julian Date, frequencies in GHz, and cross-power data in sfu.
        
        Return Keys:
          'time'     Numpy array of nt times in JD format
          'fghz'     Numpy array of nf frequencies in GHz
          'data'     Numpy array of size [nf, nt] containing cross-power data
          
        Returns empty dictionary ({}) if file size is not compatible with inferred dimensions
    '''
    import struct
    import numpy as np
    def dims(file):
        # Determine time and frequency dimensions (assumes the file has fewer than 10000 times)
        f = open(file,'rb')
        tmp = f.read(83608)  # max 10000 times and 451 frequencies
        f.close()
        nbytes = len(tmp)
        tdat = struct.unpack(str(int(nbytes/8))+'d',tmp[:nbytes])
        nt = np.where(np.array(tdat) < 2400000.)[0]
        nf = np.where(np.array(tdat) < 1.1)[0] - nt[0]
        return nt[0], nf[0]
    nt, nf = dims(file)
    f = open(file,'rb')
    tmp = f.read(nt*8)
    times = struct.unpack(str(nt)+'d',tmp)
    tmp = f.read(nf*8)
    fghz = struct.unpack(str(nf)+'d',tmp)
    tmp = f.read()
    f.close()
    if len(tmp) != nf*nt*4:
        print('File size is incorrect for nt=',nt,'and nf=',nf)
        return {}
    data = np.array(struct.unpack(str(nt*nf)+'f',tmp)).reshape(nf,nt)
    return {'time':times, 'fghz':fghz, 'data':data}