ARTS
2.3.1285(git:92a29ea9-dirty)
|
Go to the source code of this file.
Functions | |
Numeric | vector1 (const StokesVector &a, const ConstVectorView &B, const StokesVector &da, const ConstVectorView &dB_dT, const StokesVector &dS, bool dT, Index i) noexcept |
Eigen::Vector2d | vector2 (const StokesVector &a, const ConstVectorView &B, const StokesVector &da, const ConstVectorView &dB_dT, const StokesVector &dS, bool dT, Index i) noexcept |
Eigen::Vector3d | vector3 (const StokesVector &a, const ConstVectorView &B, const StokesVector &da, const ConstVectorView &dB_dT, const StokesVector &dS, bool dT, Index i) noexcept |
Eigen::Vector4d | vector4 (const StokesVector &a, const ConstVectorView &B, const StokesVector &da, const ConstVectorView &dB_dT, const StokesVector &dS, bool dT, Index i) noexcept |
Eigen::Matrix< double, 1, 1 > | matrix1 (const Numeric &a) noexcept |
Eigen::Matrix2d | matrix2 (const Numeric &a, const Numeric &b) noexcept |
Eigen::Matrix3d | matrix3 (const Numeric &a, const Numeric &b, const Numeric &c, const Numeric &u) noexcept |
Eigen::Matrix4d | matrix4 (const Numeric &a, const Numeric &b, const Numeric &c, const Numeric &d, const Numeric &u, const Numeric &v, const Numeric &w) noexcept |
Eigen::Matrix< double, 1, 1 > | matrix1 (const ConstMatrixView m) noexcept |
Eigen::Matrix2d | matrix2 (const ConstMatrixView m) noexcept |
Eigen::Matrix3d | matrix3 (const ConstMatrixView m) noexcept |
Eigen::Matrix4d | matrix4 (const ConstMatrixView m) noexcept |
Eigen::Matrix< double, 1, 1 > | inv1 (const Numeric &a) noexcept |
Eigen::Matrix2d | inv2 (const Numeric &a, const Numeric &b) noexcept |
Eigen::Matrix3d | inv3 (const Numeric &a, const Numeric &b, const Numeric &c, const Numeric &u) noexcept |
Eigen::Matrix4d | inv4 (const Numeric &a, const Numeric &b, const Numeric &c, const Numeric &d, const Numeric &u, const Numeric &v, const Numeric &w) noexcept |
void | transmat1 (TransmissionMatrix &T, const PropagationMatrix &K1, const PropagationMatrix &K2, const Numeric &r, const Index iz=0, const Index ia=0) noexcept |
void | transmat2 (TransmissionMatrix &T, const PropagationMatrix &K1, const PropagationMatrix &K2, const Numeric &r, const Index iz=0, const Index ia=0) noexcept |
void | transmat3 (TransmissionMatrix &T, const PropagationMatrix &K1, const PropagationMatrix &K2, const Numeric &r, const Index iz=0, const Index ia=0) noexcept |
void | transmat4 (TransmissionMatrix &T, const PropagationMatrix &K1, const PropagationMatrix &K2, const Numeric &r, const Index iz=0, const Index ia=0) noexcept |
void | dtransmat1 (TransmissionMatrix &T, ArrayOfTransmissionMatrix &dT1, ArrayOfTransmissionMatrix &dT2, const PropagationMatrix &K1, const PropagationMatrix &K2, const ArrayOfPropagationMatrix &dK1, const ArrayOfPropagationMatrix &dK2, const Numeric &r, const Numeric &dr_dT1, const Numeric &dr_dT2, const Index it, const Index iz, const Index ia) noexcept |
void | dtransmat2 (TransmissionMatrix &T, ArrayOfTransmissionMatrix &dT1, ArrayOfTransmissionMatrix &dT2, const PropagationMatrix &K1, const PropagationMatrix &K2, const ArrayOfPropagationMatrix &dK1, const ArrayOfPropagationMatrix &dK2, const Numeric &r, const Numeric &dr_dT1, const Numeric &dr_dT2, const Index it, const Index iz, const Index ia) noexcept |
void | dtransmat3 (TransmissionMatrix &T, ArrayOfTransmissionMatrix &dT1, ArrayOfTransmissionMatrix &dT2, const PropagationMatrix &K1, const PropagationMatrix &K2, const ArrayOfPropagationMatrix &dK1, const ArrayOfPropagationMatrix &dK2, const Numeric &r, const Numeric &dr_dT1, const Numeric &dr_dT2, const Index it, const Index iz, const Index ia) noexcept |
void | dtransmat4 (TransmissionMatrix &T, ArrayOfTransmissionMatrix &dT1, ArrayOfTransmissionMatrix &dT2, const PropagationMatrix &K1, const PropagationMatrix &K2, const ArrayOfPropagationMatrix &dK1, const ArrayOfPropagationMatrix &dK2, const Numeric &r, const Numeric &dr_dT1, const Numeric &dr_dT2, const Index it, const Index iz, const Index ia) noexcept |
void | transmat (TransmissionMatrix &T, const PropagationMatrix &K1, const PropagationMatrix &K2, const Numeric &r) noexcept |
void | dtransmat (TransmissionMatrix &T, ArrayOfTransmissionMatrix &dT1, ArrayOfTransmissionMatrix &dT2, const PropagationMatrix &K1, const PropagationMatrix &K2, const ArrayOfPropagationMatrix &dK1, const ArrayOfPropagationMatrix &dK2, const Numeric &r, const Numeric &dr_dT1=0, const Numeric &dr_dT2=0, const Index it=-1, const Index iz=0, const Index ia=0) noexcept |
void | stepwise_transmission (TransmissionMatrix &T, ArrayOfTransmissionMatrix &dT1, ArrayOfTransmissionMatrix &dT2, const PropagationMatrix &K1, const PropagationMatrix &K2, const ArrayOfPropagationMatrix &dK1, const ArrayOfPropagationMatrix &dK2, const Numeric &r, const Numeric &dr_dtemp1, const Numeric &dr_dtemp2, const Index temp_deriv_pos) |
Set the stepwise transmission matrix. More... | |
void | stepwise_source (RadiationVector &J, ArrayOfRadiationVector &dJ, const PropagationMatrix &K, const StokesVector &a, const StokesVector &S, const ArrayOfPropagationMatrix &dK, const ArrayOfStokesVector &da, const ArrayOfStokesVector &dS, const ConstVectorView B, const ConstVectorView dB_dT, const ArrayOfRetrievalQuantity &jacobian_quantities, const bool &jacobian_do) |
Set the stepwise source. More... | |
void | update_radiation_vector (RadiationVector &I, ArrayOfRadiationVector &dI1, ArrayOfRadiationVector &dI2, const RadiationVector &J1, const RadiationVector &J2, const ArrayOfRadiationVector &dJ1, const ArrayOfRadiationVector &dJ2, const TransmissionMatrix &T, const TransmissionMatrix &PiT, const ArrayOfTransmissionMatrix &dT1, const ArrayOfTransmissionMatrix &dT2, const RadiativeTransferSolver solver) |
Update the Radiation Vector. More... | |
ArrayOfTransmissionMatrix | cumulative_transmission (const ArrayOfTransmissionMatrix &T, const CumulativeTransmission type) |
Accumulate the transmission matrix over all layers. More... | |
void | set_backscatter_radiation_vector (ArrayOfRadiationVector &I, ArrayOfArrayOfArrayOfRadiationVector &dI, const RadiationVector &I_incoming, const ArrayOfTransmissionMatrix &T, const ArrayOfTransmissionMatrix &PiTf, const ArrayOfTransmissionMatrix &PiTr, const ArrayOfTransmissionMatrix &Z, const ArrayOfArrayOfTransmissionMatrix &dT1, const ArrayOfArrayOfTransmissionMatrix &dT2, const ArrayOfArrayOfTransmissionMatrix &dZ, const BackscatterSolver solver) |
Set the backscatter radiation vector. More... | |
ArrayOfTransmissionMatrix | cumulative_backscatter (ConstTensor5View t, ConstMatrixView m) |
Accumulated backscatter (???) More... | |
ArrayOfArrayOfTransmissionMatrix | cumulative_backscatter_derivative (ConstTensor5View t, const ArrayOfMatrix &aom) |
Accumulated backscatter derivative (???) More... | |
std::ostream & | operator<< (std::ostream &os, const TransmissionMatrix &tm) |
Output operator. More... | |
std::ostream & | operator<< (std::ostream &os, const ArrayOfTransmissionMatrix &atm) |
Output operator. More... | |
std::ostream & | operator<< (std::ostream &os, const ArrayOfArrayOfTransmissionMatrix &aatm) |
Output operator. More... | |
std::ostream & | operator<< (std::ostream &os, const RadiationVector &rv) |
Output operator. More... | |
std::ostream & | operator<< (std::ostream &os, const ArrayOfRadiationVector &arv) |
Output operator. More... | |
std::ostream & | operator<< (std::ostream &os, const ArrayOfArrayOfRadiationVector &aarv) |
Output operator. More... | |
std::istream & | operator>> (std::istream &is, TransmissionMatrix &tm) |
Input operator. More... | |
std::istream & | operator>> (std::istream &is, RadiationVector &rv) |
Input operator. More... | |
Variables | |
constexpr Numeric | lower_is_considered_zero_for_sinc_likes = 1e-4 |
ArrayOfTransmissionMatrix cumulative_backscatter | ( | ConstTensor5View | t, |
ConstMatrixView | m | ||
) |
Accumulated backscatter (???)
FIXMEDOC Patrick, these are translated from other functions that accumulate the back-scattering. I do not remember how this worked.
t | Tensor5 of backscattering |
m | (???) |
Definition at line 1714 of file transmissionmatrix.cc.
References joker, matrix1(), matrix2(), matrix3(), matrix4(), ConstTensor5View::nbooks(), ConstTensor5View::ncols(), ConstTensor5View::npages(), ns, and ConstTensor5View::nshelves().
ArrayOfArrayOfTransmissionMatrix cumulative_backscatter_derivative | ( | ConstTensor5View | t, |
const ArrayOfMatrix & | aom | ||
) |
Accumulated backscatter derivative (???)
FIXMEDOC Patrick, these are translated from other functions that accumulate the back-scattering. I do not remember how this worked.
t | Tensor5 of backscattering |
m | (???) |
Definition at line 1755 of file transmissionmatrix.cc.
References joker, matrix1(), matrix2(), matrix3(), matrix4(), ConstTensor5View::nbooks(), ConstTensor5View::ncols(), Array< base >::nelem(), ConstTensor5View::npages(), ns, and ConstTensor5View::nshelves().
ArrayOfTransmissionMatrix cumulative_transmission | ( | const ArrayOfTransmissionMatrix & | T, |
const CumulativeTransmission | type | ||
) |
Accumulate the transmission matrix over all layers.
[in] | T | Transmission matrix through all layers |
[in] | type | Type of accumulation to target |
Definition at line 1527 of file transmissionmatrix.cc.
References Forward, i, n, Array< base >::nelem(), ns, and Reverse.
Referenced by emission_from_propmat_field(), get_stepwise_transmission_matrix(), iyEmissionStandardSequential(), iyHybrid2(), and iyTransmissionStandard().
|
inlinenoexcept |
Definition at line 1324 of file transmissionmatrix.cc.
References dtransmat1(), dtransmat2(), dtransmat3(), dtransmat4(), and PropagationMatrix::StokesDimensions().
Referenced by stepwise_transmission().
|
inlinenoexcept |
Definition at line 460 of file transmissionmatrix.cc.
Referenced by dtransmat().
|
inlinenoexcept |
Definition at line 495 of file transmissionmatrix.cc.
Referenced by dtransmat().
|
inlinenoexcept |
Definition at line 546 of file transmissionmatrix.cc.
Referenced by dtransmat().
|
inlinenoexcept |
Definition at line 750 of file transmissionmatrix.cc.
Referenced by dtransmat().
|
inlinenoexcept |
Definition at line 184 of file transmissionmatrix.cc.
Definition at line 188 of file transmissionmatrix.cc.
Referenced by stepwise_source().
|
inlinenoexcept |
Definition at line 192 of file transmissionmatrix.cc.
Referenced by stepwise_source().
|
inlinenoexcept |
Definition at line 209 of file transmissionmatrix.cc.
Referenced by stepwise_source().
|
inlinenoexcept |
Definition at line 102 of file transmissionmatrix.cc.
Referenced by cumulative_backscatter(), and cumulative_backscatter_derivative().
|
inlinenoexcept |
Definition at line 143 of file transmissionmatrix.cc.
Definition at line 106 of file transmissionmatrix.cc.
Referenced by cumulative_backscatter(), cumulative_backscatter_derivative(), and stepwise_source().
|
inlinenoexcept |
Definition at line 147 of file transmissionmatrix.cc.
|
inlinenoexcept |
Definition at line 110 of file transmissionmatrix.cc.
Referenced by cumulative_backscatter(), cumulative_backscatter_derivative(), and stepwise_source().
|
inlinenoexcept |
Definition at line 151 of file transmissionmatrix.cc.
|
inlinenoexcept |
Definition at line 117 of file transmissionmatrix.cc.
Referenced by cumulative_backscatter(), cumulative_backscatter_derivative(), and stepwise_source().
|
inlinenoexcept |
Definition at line 164 of file transmissionmatrix.cc.
std::ostream& operator<< | ( | std::ostream & | os, |
const TransmissionMatrix & | tm | ||
) |
Output operator.
Definition at line 1804 of file transmissionmatrix.cc.
References TransmissionMatrix::T1, TransmissionMatrix::T2, TransmissionMatrix::T3, and TransmissionMatrix::T4.
std::ostream& operator<< | ( | std::ostream & | os, |
const ArrayOfTransmissionMatrix & | atm | ||
) |
Output operator.
Definition at line 1812 of file transmissionmatrix.cc.
std::ostream& operator<< | ( | std::ostream & | os, |
const ArrayOfArrayOfTransmissionMatrix & | aatm | ||
) |
Output operator.
Definition at line 1818 of file transmissionmatrix.cc.
std::ostream& operator<< | ( | std::ostream & | os, |
const RadiationVector & | rv | ||
) |
Output operator.
Definition at line 1824 of file transmissionmatrix.cc.
std::ostream& operator<< | ( | std::ostream & | os, |
const ArrayOfRadiationVector & | arv | ||
) |
Output operator.
Definition at line 1833 of file transmissionmatrix.cc.
std::ostream& operator<< | ( | std::ostream & | os, |
const ArrayOfArrayOfRadiationVector & | aarv | ||
) |
Output operator.
Definition at line 1838 of file transmissionmatrix.cc.
std::istream& operator>> | ( | std::istream & | is, |
TransmissionMatrix & | tm | ||
) |
Input operator.
Definition at line 1844 of file transmissionmatrix.cc.
References TransmissionMatrix::T1, TransmissionMatrix::T2, TransmissionMatrix::T3, and TransmissionMatrix::T4.
std::istream& operator>> | ( | std::istream & | is, |
RadiationVector & | rv | ||
) |
Input operator.
Definition at line 1860 of file transmissionmatrix.cc.
void set_backscatter_radiation_vector | ( | ArrayOfRadiationVector & | I, |
ArrayOfArrayOfArrayOfRadiationVector & | dI, | ||
const RadiationVector & | I_incoming, | ||
const ArrayOfTransmissionMatrix & | T, | ||
const ArrayOfTransmissionMatrix & | PiTf, | ||
const ArrayOfTransmissionMatrix & | PiTr, | ||
const ArrayOfTransmissionMatrix & | Z, | ||
const ArrayOfArrayOfTransmissionMatrix & | dT1, | ||
const ArrayOfArrayOfTransmissionMatrix & | dT2, | ||
const ArrayOfArrayOfTransmissionMatrix & | dZ, | ||
const BackscatterSolver | solver | ||
) |
Set the backscatter radiation vector.
[in,out] | I | Radiation vector of all layers |
[in,out] | dI | Radiation vector derivative of all layers |
[in] | I_incoming | Incoming radiation vector |
[in] | T | Transmission matrix of all layers |
[in] | PiTf | Forwards accumulated transmission of all layers |
[in] | PiTr | Backwards accumulated transmission of all layers |
[in] | Z | Reflection matrix of all layers |
[in] | dT1 | Transmission matrix derivative for level 1 of all layers |
[in] | dT2 | Transmission matrix derivative for level 2 of all layers |
[in] | dZ | erivative of reflection matrix of all layers |
[in] | solver | Type of backscattering of all layers |
Definition at line 1548 of file transmissionmatrix.cc.
References CommutativeTransmission, FullTransmission, Array< base >::nelem(), and ns.
void stepwise_source | ( | RadiationVector & | J, |
ArrayOfRadiationVector & | dJ, | ||
const PropagationMatrix & | K, | ||
const StokesVector & | a, | ||
const StokesVector & | S, | ||
const ArrayOfPropagationMatrix & | dK, | ||
const ArrayOfStokesVector & | da, | ||
const ArrayOfStokesVector & | dS, | ||
const ConstVectorView | B, | ||
const ConstVectorView | dB_dT, | ||
const ArrayOfRetrievalQuantity & | jacobian_quantities, | ||
const bool & | jacobian_do | ||
) |
Set the stepwise source.
[in,out] | J | Source vector |
[in,out] | dJ | Source vector derivatives |
[in] | K | Propagation matrix |
[in] | a | Absorption vector |
[in] | S | Scattering source vector |
[in] | dK | Propagation matrix derivatives |
[in] | da | Absorption vector derivatives |
[in] | dS | Scattering source vector derivatives |
[in] | B | Planck vector |
[in] | dB_dT | Planck vector derivative wrt temperature |
[in] | jacobian_quantities | As WSV |
[in] | jacobian_do | Do Jacobian? |
Definition at line 1371 of file transmissionmatrix.cc.
References i, inv2(), inv3(), inv4(), PropagationMatrix::IsRotational(), PropagationMatrix::K12(), PropagationMatrix::K13(), PropagationMatrix::K14(), PropagationMatrix::K23(), PropagationMatrix::K24(), PropagationMatrix::K34(), PropagationMatrix::Kjj(), matrix2(), matrix3(), matrix4(), Array< base >::nelem(), PropagationMatrix::NumberOfFrequencies(), RadiationVector::setSource(), RadiationVector::SetZero(), RadiationVector::StokesDim(), Temperature, RadiationVector::Vec1(), RadiationVector::Vec2(), RadiationVector::Vec3(), RadiationVector::Vec4(), vector1(), vector2(), vector3(), and vector4().
Referenced by emission_from_propmat_field(), iyEmissionStandard(), iyEmissionStandardSequential(), and iyHybrid2().
void stepwise_transmission | ( | TransmissionMatrix & | T, |
ArrayOfTransmissionMatrix & | dT1, | ||
ArrayOfTransmissionMatrix & | dT2, | ||
const PropagationMatrix & | K1, | ||
const PropagationMatrix & | K2, | ||
const ArrayOfPropagationMatrix & | dK1, | ||
const ArrayOfPropagationMatrix & | dK2, | ||
const Numeric & | r, | ||
const Numeric & | dr_dtemp1, | ||
const Numeric & | dr_dtemp2, | ||
const Index | temp_deriv_pos | ||
) |
Set the stepwise transmission matrix.
[in,out] | T | Transmission matrix |
[in,out] | dT1 | Transmission matrix derivative wrt level 1 |
[in,out] | dT2 | Transmission matrix derivative wrt level 2 |
[in] | K1 | Propagation matrix wrt level 1 |
[in] | K2 | Propagation matrix wrt level 2 |
[in] | dK1 | Propagation matrix derivative wrt level 1 |
[in] | dK2 | Propagation matrix derivative wrt level 2 |
[in] | r | Distance through layer |
[in] | dr_dtemp1 | Distance through layer derivative wrt temperature of level 1 |
[in] | dr_dtemp2 | Distance through layer derivative wrt temperature of level 2 |
[in] | temp_deriv_pos | Position of derivative of temperature (-1 if not present) |
Definition at line 1353 of file transmissionmatrix.cc.
References dtransmat(), Array< base >::nelem(), and transmat().
Referenced by emission_from_propmat_field(), iyEmissionStandardSequential(), iyHybrid2(), and iyTransmissionStandard().
|
inlinenoexcept |
Definition at line 1304 of file transmissionmatrix.cc.
References r, transmat1(), transmat2(), transmat3(), and transmat4().
Referenced by stepwise_transmission(), and TransmissionMatrix::TransmissionMatrix().
|
inlinenoexcept |
Definition at line 248 of file transmissionmatrix.cc.
References i, PropagationMatrix::Kjj(), TransmissionMatrix::Mat1(), and PropagationMatrix::NumberOfFrequencies().
Referenced by transmat().
|
inlinenoexcept |
Definition at line 259 of file transmissionmatrix.cc.
References i, PropagationMatrix::K12(), PropagationMatrix::Kjj(), TransmissionMatrix::Mat2(), and PropagationMatrix::NumberOfFrequencies().
Referenced by transmat().
|
inlinenoexcept |
Definition at line 275 of file transmissionmatrix.cc.
References i, PropagationMatrix::K12(), PropagationMatrix::Kjj(), and PropagationMatrix::NumberOfFrequencies().
Referenced by transmat().
|
inlinenoexcept |
Definition at line 338 of file transmissionmatrix.cc.
References i, PropagationMatrix::K12(), PropagationMatrix::Kjj(), and PropagationMatrix::NumberOfFrequencies().
Referenced by transmat().
void update_radiation_vector | ( | RadiationVector & | I, |
ArrayOfRadiationVector & | dI1, | ||
ArrayOfRadiationVector & | dI2, | ||
const RadiationVector & | J1, | ||
const RadiationVector & | J2, | ||
const ArrayOfRadiationVector & | dJ1, | ||
const ArrayOfRadiationVector & | dJ2, | ||
const TransmissionMatrix & | T, | ||
const TransmissionMatrix & | PiT, | ||
const ArrayOfTransmissionMatrix & | dT1, | ||
const ArrayOfTransmissionMatrix & | dT2, | ||
const RadiativeTransferSolver | solver | ||
) |
Update the Radiation Vector.
[in,out] | I | Radiation vector |
[in,out] | dI1 | Radiation vector derivatives to level 1 |
[in,out] | dI2 | Radiation vector derivatives to level 2 |
[in] | J1 | Source vector from level 1 |
[in] | J2 | Source vector from level 2 |
[in] | dJ1 | Source vector derivative from level 1 |
[in] | dJ2 | Source vector derivative from level 2 |
[in] | T | Transmission matrix through layer |
[in] | PiT | Accumulated transmission matrix to space |
[in] | dT1 | Transmission matrix derivatives through layer from level 1 |
[in] | dT2 | Transmission matrix derivatives through layer from level 2 |
[in] | solver | Type of solver to use |
Definition at line 1484 of file transmissionmatrix.cc.
References RadiationVector::add_avg(), RadiationVector::add_weighted(), Emission, i, RadiationVector::leftMul(), LinearWeightedEmission, RadiationVector::rem_avg(), and Transmission.
Referenced by emission_from_propmat_field(), iyEmissionStandardSequential(), iyHybrid2(), and iyTransmissionStandard().
|
inlinenoexcept |
Definition at line 35 of file transmissionmatrix.cc.
References i.
Referenced by MCGeneral(), MCIPA(), and stepwise_source().
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
constexpr Numeric lower_is_considered_zero_for_sinc_likes = 1e-4 |
Definition at line 33 of file transmissionmatrix.cc.