26 #ifndef pressurebroadeningdata_h 27 #define pressurebroadeningdata_h 95 const Numeric& dair_pressure_DF);
137 const Vector& foreign_gamma,
139 const Vector& foreign_pressure_DF);
184 const Numeric& gamma0_water_exp,
195 const Index h2o_index)
const;
209 const Index this_species,
210 const Index h2o_species,
272 const Index this_species,
273 const Index h2o_species,
287 const Index this_species,
288 const Index h2o_species,
302 const Index this_species,
303 const Index h2o_species,
317 const Index this_species,
318 const Index h2o_species,
332 const Index this_species,
333 const Index h2o_species,
347 const Index this_species,
348 const Index h2o_species,
455 const Numeric& self_pressure)
const;
461 const Numeric& self_pressure)
const;
464 const Numeric& self_pressure)
const;
468 const Numeric& self_pressure)
const;
471 const Numeric& pressure)
const;
475 const Numeric& self_pressure)
const;
480 const Numeric& self_pressure)
const;
484 const Numeric& pressure)
const;
502 const Index this_species,
503 const Index h2o_species,
511 const Index this_species,
512 const Index h2o_species,
516 const Numeric& self_pressure)
const;
521 const Index this_species,
522 const Index h2o_species,
527 const Index this_species,
528 const Index h2o_species,
532 const Numeric& self_pressure)
const;
537 const Index this_species,
538 const Index h2o_species,
543 const Index this_species,
544 const Index h2o_species,
549 const Numeric& self_pressure)
const;
551 Numeric& dpsf_dForeignExponent,
555 const Index this_species,
556 const Index h2o_species,
562 const Index this_species,
563 const Index h2o_species,
621 const Index this_species,
622 const Index h2o_species,
635 const Index this_species,
636 const Index h2o_species,
641 const Numeric& self_pressure)
const;
646 const Index this_species,
647 const Index h2o_species,
652 const Index this_species,
653 const Index h2o_species,
657 const Numeric& self_pressure)
const;
662 const Index this_species,
663 const Index h2o_species,
668 const Index this_species,
669 const Index h2o_species,
674 const Numeric& self_pressure)
const;
680 const Index this_species,
681 const Index h2o_species,
687 const Index this_species,
688 const Index h2o_species,
710 const Numeric& pressure)
const;
717 const Numeric& pressure)
const;
742 const Numeric& pressure)
const;
751 const Numeric& pressure)
const;
779 #endif //pressurebroadeningdata_h INDEX Index
The type to use for all integer numbers and indices.
void GetAirBroadening_dSelfExponent(Numeric &gamma_dSelfExponent, Numeric &psf_dSelfExponent, const Numeric &theta, const Numeric &self_pressure) const
void GetAirAndWaterBroadening_dWaterPsf(Numeric &psf_dWater, const Numeric &theta, const Numeric &pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
void SetDataFromVectorWithKnownType(ConstVectorView input)
void SetAirBroadeningFromCatalog(const Numeric &sgam, const Numeric &nself, const Numeric &agam, const Numeric &nair, const Numeric &air_pressure_DF, const Numeric &dsgam, const Numeric &dnself, const Numeric &dagam, const Numeric &dnair, const Numeric &dair_pressure_DF)
The HITRAN air broadening scheme was used exclusively for a long time by ARTS.
void SetPlanetaryBroadeningFromCatalog(const Numeric &sgam, const Numeric &nself, const Vector &foreign_gamma, const Vector &n_foreign, const Vector &foreign_pressure_DF)
The ESA planetary study introduced species-dependent pressure broadenings.
Vector vmrs(const ConstVectorView &atmospheric_vmrs, const ArrayOfArrayOfSpeciesTag &atmospheric_species, const QuantumIdentifier &self, const ArrayOfSpeciesTag &lineshape_species, bool self_in_list, bool bath_in_list, Type type)
Returns a VMR vector for this model's main calculations.
void SetHTPAirFromCatalog(const Numeric &gamma0, const Numeric &gamma0_exp, const Numeric &gamma2, const Numeric &gamma2_exp, const Numeric &delta0, const Numeric &delta0_exp, const Numeric &delta2, const Numeric &delta2_exp, const Numeric &fvc, const Numeric &fvc_exp, const Numeric &eta, const Numeric &eta_exp)
TESTING *.
void ChangeSelfRelative(const Numeric &change, const Index this_species, const Index h2o_species, const ArrayOfIndex &broad_spec_locations)
Method for changing self-broadening by relative amount if available Error if not. ...
void SetSelfExponent(const Numeric &new_value, const Index this_species, const Index h2o_species, const ArrayOfIndex &broad_spec_locations)
Method for setting self-broadening exponent if available Error if not.
void GetPressureBroadeningParams_dForeignGamma(Numeric &gamma_dForeign, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
A class implementing complex numbers for ARTS.
void GetVectorFromData(Vector &output) const
Index nelem() const
Number of elements.
void GetAirAndWaterBroadening_dForeignGamma(Numeric &dgamma_dForeign, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
void SetInternalDerivatives(ComplexVector &derivatives, const ArrayOfRetrievalQuantity &ppd, const QuantumIdentifier &QI, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
Sets a vector of derivatives that fits with the QuantumIdentifier and partial derivative.
void GetSDAirBroadening(Numeric &gamma0, Numeric &gamma2, Numeric &delta0, Numeric &delta2, const Numeric &theta, const Numeric &pressure) const
Speed-dependent broadening calculations.
Declarations having to do with the four output streams.
void GetAirBroadening_dForeignGamma(Numeric &gamma_dForeign, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure) const
void GetPressureBroadeningParams_dForeignExponent(Numeric &gamma_dForeignExponent, Numeric &psf_dForeignExponent, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
Routines for setting up the jacobian.
Numeric PlanetaryGammaForeign(Index ii) const
void GetPressureBroadeningParams_dWaterPsf(Numeric &psf_dWater, const Numeric &theta, const Numeric &pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
String Type2StorageTag() const
void GetSDAirBroadening_dT(Numeric &dgamma0, Numeric &dgamma2, Numeric &ddelta0, Numeric &ddelta2, const Numeric &T, const Numeric &T0, const Numeric &pressure) const
void SetTypeFromIndex(const Index &type)
void GetPressureBroadeningParams_dSelfGamma(Numeric &gamma_dSelf, const Numeric &theta, const Numeric &self_pressure) const
ConstVectorView PlanetaryDeltaForeign() const
void GetAirBroadening_dForeignExponent(Numeric &gamma_dForeignExponent, Numeric &psf_dForeignExponent, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure) const
void ChangeForeignShiftRelative(const Numeric &change, const ArrayOfIndex &broad_spec_locations)
Method for changing foreing-broadening shift(s) by relative amount if available Error if not availabl...
This class should contain the data and metadata associated with pressure broadening.
void GetTestBroadening(Numeric &gamma0, Numeric &gamma2, Numeric &delta0, ConstVectorView vmrs, const Numeric &theta, const Numeric &pressure, const Index h2o_index) const
void ChangeForeign(const Numeric &change, const ArrayOfIndex &broad_spec_locations)
Method for changing foreing-broadening(s) if available Error if not available and no change to water ...
void GetPressureBroadeningParams_dWaterExponent(Numeric &gamma_dWaterExponent, Numeric &psf_dWaterExponent, const Numeric &theta, const Numeric &pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
void ChangeSelf(const Numeric &change, const Index this_species, const Index h2o_species, const ArrayOfIndex &broad_spec_locations)
Method for changing self-broadening if available Error if not.
This file contains the definition of Array.
void GetPressureBroadeningParams(Numeric &gamma_0, Numeric &gamma_2, Numeric &eta, Numeric &df_0, Numeric &df_2, Numeric &f_VC, const Numeric &T, const Numeric &T0, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, const ArrayOfIndex &broad_spec_locations, ConstVectorView vmrs) const
All broadening calculations are easiset to perform via these calls.
Index ExpectedVectorLengthFromType() const
void GetAirAndWaterBroadening_dSelfExponent(Numeric &dgamma_dSelfExponent, Numeric &dpsf_dSelfExponent, const Numeric &theta, const Numeric &self_pressure) const
const ArrayOfVector & DataError() const
void SetAirAndWaterBroadeningFromCatalog(const Numeric &sgam, const Numeric &sn, const Numeric &sdelta, const Numeric &agam, const Numeric &an, const Numeric &adelta, const Numeric &wgam, const Numeric &wn, const Numeric &wdelta)
The HITRAN air broadening scheme was used exclusively for a long time by ARTS.
void GetPlanetaryBroadening(Numeric &gamma, Numeric &deltaf, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure, const ArrayOfIndex &broad_spec_locations, ConstVectorView vmrs) const
Planetary broadening calculations.
void ChangeSelfExponent(const Numeric &change, const Index this_species, const Index h2o_species, const ArrayOfIndex &broad_spec_locations)
Method for changing self-broadening exponent if available Error if not.
void GetPressureBroadeningParams_dSelfVMR(Numeric &gamma_dvmr, Numeric &split_dvmr, const Numeric &theta, const Numeric &pressure) const
void GetAirAndWaterBroadening(Numeric &gamma, Numeric &deltaf, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
Air and water broadening calculations *.
Numeric PlanetaryNForeign(Index ii) const
ConstVectorView PlanetaryGammaForeign() const
void GetAirAndWaterBroadening_dSelfGamma(Numeric &dgamma_dSelf, const Numeric &theta, const Numeric &self_pressure) const
void GetAirAndWaterBroadening_dT(Numeric &dgamma_dT, Numeric &ddeltaf_dT, const Numeric &T, const Numeric &T0, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
void GetPressureBroadeningParams_dSelfExponent(Numeric &gamma_dSelfExponent, Numeric &psf_dSelfExponent, const Numeric &theta, const Numeric &self_pressure) const
const ArrayOfVector & Data() const
void GetAirAndWaterBroadening_dWaterExponent(Numeric &gamma_dWaterExponent, Numeric &psf_dWaterExponent, const Numeric &theta, const Numeric &pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
void GetHTPAirBroadening(Numeric &gamma0, Numeric &gamma2, Numeric &delta0, Numeric &delta2, Numeric &fvc, Numeric &eta, const Numeric &theta, const Numeric &pressure) const
Speed-dependent broadening calculations.
Class to identify and match lines by their quantum numbers.
void GetAirAndWaterBroadening_dWaterGamma(Numeric &gamma_dWater, const Numeric &theta, const Numeric &pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
NUMERIC Numeric
The type to use for all floating point numbers.
void GetAirAndWaterBroadening_dForeignExponent(Numeric &dgamma_dForeignExponent, Numeric &dpsf_dForeignExponent, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
void SetSDAirFromCatalog(const Numeric &gamma0, const Numeric &gamma0_exp, const Numeric &gamma2, const Numeric &gamma2_exp, const Numeric &delta0, const Numeric &delta0_exp, const Numeric &delta2, const Numeric &delta2_exp)
TESTING.
void ChangeSelfExponentRelative(const Numeric &change, const Index this_species, const Index h2o_species, const ArrayOfIndex &broad_spec_locations)
Method for changing self-broadening exponent by relative amount if available Error if not...
void GetAirAndWaterBroadening_dSelfPsf(Numeric &dpsf_dSelf, const Numeric &theta, const Numeric &self_pressure) const
void GetAirBroadening_dForeignPsf(Numeric &psf_dForeign, const Numeric &theta, const Numeric &pressure) const
Implementation of Matrix, Vector, and such stuff.
void SetTestFromCatalog(const Numeric &gamma0_air, const Numeric &gamma0_air_exp, const Numeric &gamma0_water, const Numeric &gamma0_water_exp, const Numeric &gamma2_air, const Numeric &gamma2_water, const Numeric &delta0_air, const Numeric &delta0_water)
TESTING.
void SetForeign(const Numeric &new_value, const ArrayOfIndex &broad_spec_locations)
Method for setting foreing-broadening(s) if available Error if not available and no change to water b...
void SetForeignExponent(const Numeric &new_value, const ArrayOfIndex &broad_spec_locations)
Method for setting foreing-broadening exponent(s) if available Error if not available and no change t...
void GetPlanetaryBroadening_dT(Numeric &dgamma_dT, Numeric &ddeltaf_dT, const Numeric &T, const Numeric &T0, const Numeric &pressure, const Numeric &self_pressure, const ArrayOfIndex &broad_spec_locations, ConstVectorView vmrs) const
void GetAirBroadening(Numeric &gamma, Numeric &deltaf, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure) const
Air broadening calculations.
void GetPressureBroadeningParams_dForeignPsf(Numeric &psf_dForeign, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
void GetPressureBroadeningParams_dT(Numeric &dgamma_0_dT, Numeric &dgamma_2_dT, Numeric &deta_dT, Numeric &ddf_0_dT, Numeric &ddf_2_dT, Numeric &df_VC_dT, const Numeric &T, const Numeric &T0, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, const ArrayOfIndex &broad_spec_locations, ConstVectorView vmrs) const
void GetPressureBroadeningParams_dSelfPsf(Numeric &psf_dSelf, const Numeric &theta, const Numeric &self_pressure) const
void ChangeForeignShift(const Numeric &change, const ArrayOfIndex &broad_spec_locations)
Method for changing foreing-broadening shift(s) if available Error if not available and no change to ...
Numeric PlanetaryDeltaForeign(Index ii) const
ConstVectorView PlanetaryNForeign() const
A constant view of a Vector.
Numeric AirBroadeningDAgam() const
Index nelem(const Lines &l)
Number of lines.
void SetSelf(const Numeric &new_value, const Index this_species, const Index h2o_species, const ArrayOfIndex &broad_spec_locations)
Method for setting self-broadening if available Error if not.
void GetAirAndWaterBroadening_dForeignPsf(Numeric &dpsf_dForeign, const Numeric &theta, const Numeric &pressure, const Numeric &self_pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
void StorageTag2SetType(const String &input)
Numeric AirBroadeningDNair() const
const PB_Type & Type() const
Numeric AirBroadeningNair() const
Numeric AirBroadeningPsf() const
Numeric AirBroadeningAgam() const
void ChangeForeignExponent(const Numeric &change, const ArrayOfIndex &broad_spec_locations)
Method for changing foreing-broadening exponent(s) if available Error if not available and no change ...
void GetAirBroadening_dT(Numeric &dgamma_dT, Numeric &ddeltaf_dT, const Numeric &T, const Numeric &T0, const Numeric &pressure, const Numeric &self_pressure) const
void ChangeForeignExponentRelative(const Numeric &change, const ArrayOfIndex &broad_spec_locations)
Method for changing foreing-broadening exponent(s) by relative amount if available Error if not avail...
void GetPressureBroadeningParams_dWaterGamma(Numeric &gamma_dWater, const Numeric &theta, const Numeric &pressure, const Index this_species, const Index h2o_species, ConstVectorView vmrs) const
Numeric AirBroadeningDPsf() const
void GetAirBroadening_dSelfGamma(Numeric &gamma_dSelf, const Numeric &theta, const Numeric &self_pressure) const
void GetHTPAirBroadening_dT(Numeric &dgamma0, Numeric &dgamma2, Numeric &ddelta0, Numeric &ddelta2, Numeric &dfvc, Numeric &deta, const Numeric &T, const Numeric &T0, const Numeric &pressure) const
void ChangeForeignRelative(const Numeric &change, const ArrayOfIndex &broad_spec_locations)
Method for changing foreing-broadening(s) by relative amount if available Error if not available and ...