IMA tables

IMA has four dimensional data per 192s (it is call 3D data conventionally in irfpy):

  • 32 mass channels (the index represented by m, from 0 to 31)

  • 16 azimuth angles (the index represented by a, from 0 to 15)

  • 96 energy steps (the index represented by e, from 0 to 95)

  • 16 polar angles (the index represented by p, from 0 to 15)

In theory, one can get mass (M, in AMU), energy (E, in eV), and two directions (\(\theta\) and \(\phi\) in degrees) if all the index is known, namely,

\[\begin{split}M = M(m, a, e, p), \\ A = A(m, a, e, p), \\ E = E(m, a, e, p), \\ P = P(m, a, e, p).\end{split}\]

However, it is not so straightforward. It depends highly on the operation, including binning, instrument settings, and so on.

Note

Therefore, it is strongly recommended, again, to the PI team for further data analysis!!

Let us overview some of the key issues related to energy here. Mass table is an advanced topic, and thus not covered here.

Energy table

It is natural that you want to know the energy measured. It looks easy, but indeed, it is not in practice.

It is because IMA has 17 energy tables (for each sensor), and a specific table can be selected at the boot time. The tables are rewritable during the mission.

As of 2016-07-29, there are 4 tables for MEX/IMA and 2 tables for VEX/IMA.

MEX/IMA

Table

Function

Note

T0

irfpy.mima.energy.get_default_table_v4()

Original table. <100 eV cannot be used.

T1

irfpy.mima.energy.get_default_table_v5()

Used from sometime in 2007 (TBC). 10 eV to 25 keV.

T2

irfpy.mima.energy.get_default_table_v5_late()

Used from sometime in 2009 (TBC). Up to 15 keV.

T3

irfpy.mima.energy.get_default_table_v6()

Fast 24 sec mode. Used sporadically after mid-2013.

VEX/IMA

Table

Function

Note

T0

irfpy.vima.energy.get_default_table_v1()

Original table.

T1

irfpy.vima.energy.get_default_table_v3()

Used from sometime in 2009 (TBC). Low energy calibration.

Note

The name of the function follows the IMA calibration report, in which the version of the table is described.

Very unfortunately, for MEX/IMA table v5 exist two different versions. Thus, it is highly confusing but irfpy.aspera handles this contradiction by name convension using _late

Which table was used at a specific observation has not yet implemented in irfpy.aspera. It is indeed one of the most urgent implementations to be done.

How to load energy table?

The energy table is just a 1 dimensional, 96 element array. It can be thus loadable by

>>> import irfpy.vima.energy as viene
>>> estep = viene.get_default_table_v3()
>>> print(estep)
[  2.00036000e+04   1.83090000e+04   1.67622000e+04   1.53475000e+04
   1.40493000e+04   1.28600000e+04   1.17718000e+04   1.07768000e+04
   ...

Exercise 1

Can you load the six energy tables from above, and plot the energy as a function of the energy step?

../_images/3220_1.png