temperature_from_filter_ratio

xrtpy.response.temperature_from_filter_ratio.temperature_from_filter_ratio(map1, map2, abundance_model='coronal', binfac=1, Trange=None, no_threshold=False, Te_err_threshold=0.5, photon_noise_threshold=0.2, mask=None, verbose=False)

Get coronal temperatures and emission measures from a pair of images using the filter ratio method.

Note

The program uses solar spectra calculated with CHIANTI database ver. 10.0 (density: \(10^9\) cm-3, ionization equilibrium: chianti.ioneq)

Parameters:

map1~sunpy.map.sources.hinode.XRTMap

sunpy.map.Map for the first XRT level 1 data image. If the image is normalized, then it is assumed that the un-normalized image can be recovered by multiplying by the exposure time (exposure time must be available in the metadata). It is also assumed that the metadata history will contain the string "XRT_RENORMALIZE" if the image has been normalized.

map2~sunpy.map.sources.hinode.XRTMap

sunpy.map.Map for the second image (must use different filters from the first image). The image shape should match that in map1. The same considerations apply as for map1.

abundance_modelstring, optional

Chianti abundance model for the spectrum assumed when deriving the plasma temperatures and emission measures. The default is coronal abundances. Other currently available choices are "photospheric" and "hybrid".

binfacinteger, optional (default = 1)

spatial binning factor

Trange2 element sequence containing floats [Optional]

Range of log10(temperature) values to examine. Must be in order from lower to higher.

Te_err_thresholdfloat [Optional]

Threshold value for the temperature error. (default = 0.5 [50%]) Values of temperature with error exceeding the threshold are set to 0.

photon_noise_thresholdfloat [Optional]

Threshold value for ratio of photon noise to signal. (default = 0.2 [20%]). If photon noise/signal exceeds this value, the corresponding temperatures are set to 0.

maskBoolean array of the same shape as the images [Optional]

If provided, masks out parts of the images from the analysis. Note: pixels to be masked out should be True, unmasked should be False.

no_thresholdBoolean [Optional]

If True, no thresholds are set. (default = False)

verboseBoolean [Optional]

If True, information is printed

Returns:

TempEMdatanamedtuple of ~sunpy.map.sources.hinode.XRTMap objects

namedtuple containing the attributes Tmap, EMmap, Terrmap and EMerrmap where the maps correspond to images and metadata with: log10 of the derived electron temperature [K], log10 of the derived volume emission measure [cm^-3], uncertainty in log10 temperature [K], and uncertainty in log10 volume emission measure [cm^-3].

Examples:

Using this function, you can derive the coronal temperature using filter ratio method.

>>> T_EM = temperature_from_filter_ratio(map1, map2) 

If you want to bin the image data in space to reduce photon noise, set binfac to the factor by which you want to bin. For example to bin the data by a factor of 3 do:

>>> T_EM = temperature_from_filter_ratio(map1, map2, binfac=3) 

The data is binned first and then the temperature is derived. Note that the image size is reduced by the factor binfac in each dimension, which contrasts with the behavior of the IDL routine xrt_teem.pro.

Notes

The returned values of pixels where the temperature cannot be derived or the error is greater than the threshold or the photon noise is greater than the threshold are set to 0. The EM for those pixels is also set to 0. The masks included in the output maps mask out pixels for which the data for either image is 0 or for which temperature cannot be determined, as well as for those masked out by an input mask (if provided).

The details of the coronal-temperature-diagnostic capability of Hinode/XRT is described in Narukage et al. 2011, Solar Phys., 269, 169. http://adsabs.harvard.edu/doi/10.1007/s11207-010-9685-2 and Narukage et al. 2013, Solar Phys., http://adsabs.harvard.edu/doi/10.1007/s11207-013-0368-7 These two papers are the reference papers of this program.

Modification History:

IDL routine written by N.Narukage (NAOJ). See original IDL code for more details.