Coefficient file formatΒΆ

The coefficients used in the model can be found in pyamps/coefficients/SW_OPER_MIO_SHA_2E_00000000T000000_99999999T999999_0101.txt.

Below is a description of the coefficient file. This information is not needed to use pyAMPS, but it can be useful if you want to do something more advanced and write new/modify the code.

The coefficient file is a .txt file with fixed width columns. It can be read with the Python pandas library by the following code:

>>> coeff_fn = 'SW_OPER_MIO_SHA_2E_00000000T000000_99999999T999999_0101.txt'
>>> names = ([x for x in open(coeff_fn).readlines() if x.startswith('#')][-1][1:]).strip().split(' ')
>>> coeffs = pd.read_table(coeff_fn, skipinitialspace = True, comment = '#', sep = ' ', names = names, index_col = [0, 1])

The first two columns contain the spherical harmonic wave numbers n and m. The other 76 columns are named


where <param> refers to the 19 external parameters: const, sinca, epsilon_cosca, epsilon_sinca, epsilon_cosca, tilt, tilt_sinca, tilt_cosca, tilt_epsilon, tilt_epsilon_sinca, tilt_epsilon_cosca, tau, tau_sinca, tau_cosca, tilt_tau, tilt_tau_sinca, tilt_tau_cosca, or f107.

Here, const refers to a constant term. sinca and cosca are sin(IMF clock angle) and cos(IMF clock angle), respectively. epsilon is the Newell coupling function divided by 1000 with inputs in nT and km/s. tau is the Newell coupling function with sin replaced by cos. f107 is the F10.7 index in standard units (sfu). tilt is the dipole tilt angle in degrees. Underscores in this list refer to multiplication, e.g.: tilt_tau is the dipole tilt angle multiplied by tau.

The prefix of the column names (apart from n and m) denote the term in a real expansion of the poloidal and toroidal parts of the ionospheric magnetic field as described in Laundal et al. (2016). tor and pol refer to toroidal and poloidal, respectively. _c and _s refer to the cos and sin terms, respectively.

To get the spherical harmonic coefficients for a given set of external parameters, the coefficients should be multiplied by the corresponding external parameter (1 in the case of const), and summed so that four columns remain, one for each tor_c, tor_s, pol_c, and pol_s.

There are several missing entries: The (n, 0) terms for the _s coefficients are undefined, since sin(m*x) = 0 for all x if m = 0. In addition, the toroidal expansion have more terms (higher spatial resolution) than the poloidal expansion, so that pol_c_<param> and pol_s_<param> are missing/undefined for n > 45.