spectral_propmatAddCIA
- Workspace.spectral_propmatAddCIA(self, spectral_propmat: PropmatVector = self.spectral_propmat, spectral_propmat_jac: PropmatMatrix = self.spectral_propmat_jac, select_species: SpeciesEnum = self.select_species, jac_targets: JacobianTargets = self.jac_targets, freq_grid: AscendingGrid = self.freq_grid, atm_point: AtmPoint = self.atm_point, abs_cia_data: CIARecords = self.abs_cia_data, T_extrapolfac: Numeric = 0.5, ignore_errors: Index = 0) None
Add absorption coefficients for HITRAN collision induced absorption (CIA).
This interpolates the cross sections from
abs_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
atm_pointtemperature is \(T\) and \(f\) is thefreq_grid, \(i\) is an index into theabs_cia_dataand \(j\) is an index into the underlyingCIARecorddata 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_extrapolfacsets 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_extrapolfacto a very large or infinite value.The frequency grid interpolation is limited to within the range of the available data. Any point in
freq_gridoutside this range will simply be ignored. The frequency interpolation can thus not fail.Note
ignore_errorscan 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:
spectral_propmat (~pyarts3.arts.PropmatVector, optional) – This contains the fully polarized propagation matrix for the current path point. Defaults to
self.spectral_propmat. [INOUT]spectral_propmat_jac (~pyarts3.arts.PropmatMatrix, optional) – Partial derivative of the
spectral_propmatwith regards tojac_targets. Defaults toself.spectral_propmat_jac. [INOUT]select_species (~pyarts3.arts.SpeciesEnum, optional) – Species selection. Defaults to
self.select_species. [IN]jac_targets (~pyarts3.arts.JacobianTargets, optional) – A list of targets for the Jacobian Matrix calculations. Defaults to
self.jac_targets. [IN]freq_grid (~pyarts3.arts.AscendingGrid, optional) – A frequency grid. Unit: Hz. Defaults to
self.freq_grid. [IN]atm_point (~pyarts3.arts.AtmPoint, optional) – An atmospheric point in ARTS. Defaults to
self.atm_point. [IN]abs_cia_data (~pyarts3.arts.CIARecords, optional) – HITRAN Collision-Induced Absorption (CIA) Data. Defaults to
self.abs_cia_data. [IN]T_extrapolfac (~pyarts3.arts.Numeric, optional) – Temperature extrapolation factor (relative to grid spacing). \(\Delta T_e\) in text above. Defaults to
0.5[IN]ignore_errors (~pyarts3.arts.Index, optional) – Set to 1 to suppress runtime errors (and return NAN values instead). Defaults to
0[IN]