propagation_matrixAddCIA
- Workspace.propagation_matrixAddCIA(self, propagation_matrix: pyarts3.arts.PropmatVector | None = None, propagation_matrix_jacobian: pyarts3.arts.PropmatMatrix | None = None, select_species: pyarts3.arts.SpeciesEnum | None = None, jacobian_targets: pyarts3.arts.JacobianTargets | None = None, frequency_grid: pyarts3.arts.AscendingGrid | None = None, atmospheric_point: pyarts3.arts.AtmPoint | None = None, absorption_cia_data: pyarts3.arts.ArrayOfCIARecord | None = None, T_extrapolfac: pyarts3.arts.Numeric | None = None, ignore_errors: pyarts3.arts.Index | None = None) None
Add absorption coefficients for HITRAN collision induced absorption (CIA).
This interpolates the cross sections from
absorption_cia_data
. If too few temperature grid-points are available, its polynomial order of interpolation decreases to the maximum allowed. Otherwise, both frequency and temperature are interpolated using third order polynomials.Given that the interpolation is \(\vec{x}_{ij} = f\left(T, \vec{f}\right)\), where the
atmospheric_point
temperature is \(T\) and \(f\) is thefrequency_grid
, \(i\) is an index into theabsorption_cia_data
and \(j\) is an index into the underlyingCIARecord
data structure, the absorption coefficient from CIA is given by\[vec{\alpha}_\mathbf{CIA} = \sum_i n_{i,0} n_{i,1} \sum_j vec{x}_{ij}\]where \(n_{i,0}\) and \(n_{i,1}\) are number densities of the two species involved in the CIA.
The input
T_extrapolfac
sets a limit on the interpolation along the temperature grid of the data. If the temperature grid is \([T_0, T_1, \cdots, T_{n-1}, T_n]\), then this method throws an error if\[T < T_0 - \Delta T_e \left(T_1 - T_0\right)\]or
\[T > T_n + \Delta T_e \left(T_n - T_{n-1}\right)\]where \(\Delta T_e\) is the extrapolation factor given by
T_extrapolfac
. If this happens to you and you believe you can use the computations anyways, setT_extrapolfac
to a very large or infinite value.The frequnecy grid interpolation is limited to within the range of the available data. Any point in
frequency_grid
outside this range will simply be ignored. The frequency interpolation can thus not fail.Note
ignore_errors
can be set to 1 to suppress runtime errors, but any error will result in NaN values in the output. This is useful if you want to debug your results, but not if you want to use them.Author: Stefan Buehler, Oliver Lemke
- Parameters:
propagation_matrix (PropmatVector, optional) – This contains the fully polarized propagation matrix for the current path point. See
propagation_matrix
, defaults toself.propagation_matrix
[INOUT]propagation_matrix_jacobian (PropmatMatrix, optional) – Partial derivative of the
propagation_matrix
with regards tojacobian_targets
. Seepropagation_matrix_jacobian
, defaults toself.propagation_matrix_jacobian
[INOUT]select_species (SpeciesEnum, optional) – Species selection. See
select_species
, defaults toself.select_species
[IN]jacobian_targets (JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. See
jacobian_targets
, defaults toself.jacobian_targets
[IN]frequency_grid (AscendingGrid, optional) – A single frequency grid. See
frequency_grid
, defaults toself.frequency_grid
[IN]atmospheric_point (AtmPoint, optional) – An atmospheric point in ARTS. See
atmospheric_point
, defaults toself.atmospheric_point
[IN]absorption_cia_data (ArrayOfCIARecord, optional) – HITRAN Collision-Induced Absorption (CIA) Data. See
absorption_cia_data
, defaults toself.absorption_cia_data
[IN]T_extrapolfac (Numeric, optional) – Temperature extrapolation factor (relative to grid spacing). \(\Delta T_e\) in text above. Defaults to
0.5
[IN]ignore_errors (Index, optional) – Set to 1 to suppress runtime errors (and return NAN values instead). Defaults to
0
[IN]