3 #include <configure.hpp>
6 #include <application/exceptions.hpp>
16 throw NotFoundError(
"MwrAbsorberCIA",
"parameter 'xHe'");
20 throw NotFoundError(
"MwrAbsorberCIA",
"parameter 'xCH4'");
24 throw NotFoundError(
"MwrAbsorberCIA",
"parameter 'mix'");
30 Real P = var.
w[IPR] / 1.E5;
33 for (
int i = 1; i <= NVAPOR; ++i) xdry -= var.
w[i];
34 Real XHe = GetPar<Real>(
"xHe") * xdry;
35 Real XCH4 = GetPar<Real>(
"xCH4") * xdry;
36 Real XH2 = (1. - GetPar<Real>(
"xHe") - GetPar<Real>(
"xCH4")) * xdry;
37 Real mix = GetPar<Real>(
"mix");
38 Real wave = (wave1 + wave2) / 2.;
double attenuation_CIA(double freq, double P, double T, double XH2, double XHe, double XCH4, double mix)
void CheckFail() const override
This function fails if the check fails.
Real GetAttenuation(Real wave1, Real wave2, AirParcel const &var) const override
Get attenuation coefficient [1/m].
bool HasPar(std::string const &name) const
Check if a parameter exists.
This file contains declaration of Absorber.