lir_achem.compute_source

This is the module computing the source of the ionisation in the D-region

Functions

F_O2(chi, NO2)

Function necessary to compute the absorption cross-section of O2 for Lyman-a Taken from Reddmann & Uhl, 2003 and Pavlov, 2014

chapman(chi, neutrals_here)

Computes the integral of the Chapman function.

compute_H(neutrals_here)

Computes the height scale in the atmosphere

compute_Lya_absorption(n_here, chi[, Ch, H])

Compute the absorption of Lyman-alpha radiation from Reddmann and Uhl, 2003

compute_tau(rad_here, neutral_profiles, chi)

Computes the absorbed flux at D-regions altitudes

f_chapman(Y)

Function 'f' necessary for the computation of the Chapman function according to Smith & Smith (1972)

get_tau(chi, neutrals_here, cs_O, cs_O2, ...)

Computes tau in Equation (4) of Pavlov, 2014

lir_achem.compute_source.compute_tau(rad_here, neutral_profiles, chi)[source]

Computes the absorbed flux at D-regions altitudes

Parameters:
  • rad_here – radiation class instance

  • neutral_profiles – Class instance of neutrals

  • altitudes_D – Altitude of interest (km - Only one altitude here)

  • chi – Solar zenith angle (in °)

Returns:

Values of tau for EUV, SXR and HXR wavelengths. tau_HXR_bins is an array with taus computed for bins of 0.05 nm length (e.g. 0.05-0.1 nm).

tau is returned because if the neutrals densities do not vary on solar flare timescales, then tau should stay the same. In this case, it is only necessary to compute it once, and not at each iteration

lir_achem.compute_source.compute_Lya_absorption(n_here, chi, Ch=None, H=None)[source]

Compute the absorption of Lyman-alpha radiation from Reddmann and Uhl, 2003

Parameters:
  • n_here – Neutrals class instance

  • chi – Solar zenith angle (in °)

  • H (Ch,) – Chapman function and atmosphere scale height (optional). If they are not given, they are recomputed

Returns:

Absorption cross-section (in cm2) of O2 for Lyman-alpha

lir_achem.compute_source.F_O2(chi, NO2)[source]

Function necessary to compute the absorption cross-section of O2 for Lyman-a Taken from Reddmann & Uhl, 2003 and Pavlov, 2014

Parameters:
  • chi – Solar zenith angle (in °)

  • NO2 – N(O2)=[O2]HCh, which is computed in the compute_Lya_absorption

Returns:

F, value of the function for different solar zenith angles

lir_achem.compute_source.get_tau(chi, neutrals_here, cs_O, cs_O2, cs_N2, altitude_here, Ch=None, H=None)[source]

Computes tau in Equation (4) of Pavlov, 2014

Parameters:
  • chi – Solar zenith angle

  • neutrals_here – Neutrals class instance

  • cs_O – Cross section of O at that wavelength in cm2

  • cs_O2 – Cross section of O2 at that wavelength

  • cs_N2 – Cross section of N2 at that wavelength

  • altitude_here – Altitude (in km) of the computation

  • Ch – Chapman function (if computed before). Default: None

  • H – Atmosphere scale-height (in km, if computed previously). Default: None

Returns:

  • tau

lir_achem.compute_source.chapman(chi, neutrals_here)[source]

Computes the integral of the Chapman function. It is based on Brasseur & Solomon (2005) if the solar zenith angle is less than 90°, and on Smith & Smith (1972) if it is above

Parameters:
  • chi – Solar zenith angle (in °)

  • neutrals_here – neutrals class instance

Returns:

Ch, value of the Chapman function and H, height scale (in km). Both are arrays, with the same size as the altitudes in neutrals_here

lir_achem.compute_source.compute_H(neutrals_here)[source]

Computes the height scale in the atmosphere

Parameters:

neutrals_here – ‘neutrals’ class instance

Returns:

H height scale (in km). Array with the same size as the densities in neutrals_here

lir_achem.compute_source.f_chapman(Y)[source]

Function ‘f’ necessary for the computation of the Chapman function according to Smith & Smith (1972)