1 #ifndef _ATM_SKYSTATUS_H
2 #define _ATM_SKYSTATUS_H
29 #error This is a C++ include file and cannot be used from plain C
168 Length wh2o(dwh2o, units);
385 return getTebbSky(n, nc, skycoupling, Tspill);
425 return getTebbSky(n, nc, wh2o, skycoupling, Tspill);
445 return getTebbSky(n, nc, airmass, skycoupling, Tspill);
466 return getTebbSky(n, nc, wh2o, airmass, skycoupling, Tspill);
666 return getTrjSky(n, nc, skycoupling, Tspill);
706 return getTrjSky(n, nc, wh2o, skycoupling, Tspill);
726 return getTrjSky(n, nc, airmass, skycoupling, Tspill);
747 return getTrjSky(n, nc, wh2o, airmass, skycoupling, Tspill);
1154 double tropoLapseRate,
1156 const Length &wvScaleHeight);
1207 double tropoLapseRate);
1215 const Length &wvScaleHeight);
1224 double tropoLapseRate);
1232 const Length &wvScaleHeight);
1245 const Length &wvScaleHeight);
1249 unsigned int refChan,
1257 unsigned int refChan,
1259 const string &freqUnits)
1267 const string &freqUnits)
1274 const vector<double> &chanFreq,
1275 const string &freqUnits)
1281 unsigned int refChan,
1308 unsigned int spwId = 0;
1318 unsigned int spwId = 0;
1327 const vector<double> &v_transmission)
1335 const vector<double> &v_transmission,
1341 const vector<Percent> &signalGain,
1342 const vector<vector<Temperature> > &vv_tebb,
1343 const vector<vector<double> > &spwId_filters,
1345 const vector<double> &skycoupling,
1346 const vector<Temperature> &tspill);
1349 const vector<Percent> &signalGain,
1350 const vector<Temperature> &v_tebb,
1351 const vector<vector<double> > &spwId_filters,
1353 const vector<double> &skycoupling,
1354 const vector<Temperature> &tspill);
1368 const vector<Temperature> &v_tebb,
1369 const vector<double> &spwId_filter,
1376 const vector<Temperature> &v_tebb,
1377 const vector<vector<double> > &spwId_filters,
1384 const vector<Temperature> &v_tebb,
1390 const vector<Temperature> &v_tebb,
1395 const vector<vector<Temperature> > &vv_tebb,
1396 const vector<double> &skycoupling,
1397 const vector<Temperature> &tspill);
1400 const vector<Temperature> &v_tebb,
1401 const vector<double> &skycoupling,
1402 const vector<Temperature> &tspill);
1411 const vector<Temperature> &v_tebb,
1412 const vector<double> &spwId_filter,
1417 const vector<vector<Temperature> > &vv_tebb,
1418 const vector<vector<double> > &spwId_filters,
1419 const vector<double> &skycoupling,
1420 const vector<Temperature> &tspill);
1423 const vector<Temperature> &v_tebb,
1424 const vector<vector<double> > &spwId_filters,
1425 const vector<double> &skycoupling,
1426 const vector<Temperature> &tspill);
1436 const vector<Temperature> &v_tebb,
1442 const vector<vector<Temperature> > &vv_tebb,
1444 const vector<double> &skycoupling,
1445 const vector<Temperature> &tspill);
1448 const vector<Temperature> &v_tebb,
1450 const vector<double> &skycoupling,
1451 const vector<Temperature> &tspill);
1461 const vector<Temperature> &v_tebb,
1462 const vector<double> &spwId_filter,
1468 const vector<vector<Temperature> > &vv_tebb,
1469 const vector<vector<double> > &spwId_filters,
1471 const vector<double> &skycoupling,
1472 const vector<Temperature> &tspill);
1475 const vector<Temperature> &v_tebb,
1476 const vector<vector<double> > &spwId_filters,
1478 const vector<double> &skycoupling,
1479 const vector<Temperature> &tspill);
1491 const vector<Temperature> &v_tebb,
1496 const vector<Percent> &signalGain,
1497 const vector<vector<Temperature> > &vv_tebb,
1498 const vector<double> &skycoupling,
1499 const vector<Temperature> &tspill);
1502 const vector<Percent> &signalGain,
1503 const vector<Temperature> &v_tebb,
1504 const vector<double> &skycoupling,
1505 const vector<Temperature> &tspill);
1516 const vector<Temperature> &v_tebb,
1517 const vector<double> &spwId_filter,
1522 const vector<Percent> &signalGain,
1523 const vector<vector<Temperature> > &vv_tebb,
1524 const vector<vector<double> > &spwId_filters,
1525 const vector<double> &skycoupling,
1526 const vector<Temperature> &tspill);
1529 const vector<Percent> &signalGain,
1530 const vector<Temperature> &v_tebb,
1531 const vector<vector<double> > &spwId_filters,
1532 const vector<double> &skycoupling,
1533 const vector<Temperature> &tspill);
1545 const vector<Temperature> &v_tebb,
1551 const vector<Percent> &signalGain,
1552 const vector<vector<Temperature> > &vv_tebb,
1554 const vector<double> &skycoupling,
1555 const vector<Temperature> &tspill);
1558 const vector<Percent> &signalGain,
1559 const vector<Temperature> &v_tebb,
1561 const vector<double> &skycoupling,
1562 const vector<Temperature> &tspill);
1573 const vector<Temperature> &v_tebb,
1578 const vector<Temperature> &v_tebb,
1579 const vector<double> &spwId_filter,
1584 const vector<Temperature> &v_tebb,
1590 const vector<Temperature> &v_tebb,
1591 const vector<double> &spwId_filter,
1666 vector<WVRMeasurement> &RadiometerData,
1671 vector<WVRMeasurement> &RadiometerData,
1684 vector<WVRMeasurement> &RadiometerData,
1707 const vector<double> &v_transmission,
1713 const vector<Temperature> &v_tebbspec,
1720 const vector<Temperature> &v_tebbspec,
1733 const vector<Temperature> &v_tebbspec,
1746 const vector<Temperature> &v_tebbspec,
1767 double tropoLapseRate,
1769 const Length &wvScaleHeight);
1773 const vector<double> &v_transmission,
1780 const vector<Temperature> &v_measuredSkyTEBB,
1782 const vector<double> &spwId_filter,
1787 vector<unsigned int>(1, spwId),
1788 vector<Percent>(1, signalGain),
1789 vector<vector<Temperature> >(1, v_measuredSkyTEBB),
1791 vector<vector<double> >(1, spwId_filter),
1792 vector<double>(1, skycoupling),
1793 vector<Temperature>(1, tspill));
1798 const vector<Percent> &signalGain,
1799 const vector<vector<Temperature> > &measuredSkyTEBB,
1801 const vector<vector<double> > &spwId_filters,
1802 const vector<double> &skycoupling,
1803 const vector<Temperature> &tspill);
1807 const vector<Percent> &signalGain,
1808 const vector<Temperature> &measuredAverageSkyTEBB,
1810 const vector<vector<double> > &spwId_filters,
1811 const vector<double> &skycoupling,
1812 const vector<Temperature> &tspill);
1816 const vector<Temperature> &measuredSkyTEBB,
1818 const vector<double> &spwId_filter,
1824 const vector<unsigned int> &radiometricChannels,
1825 const vector<double> &skyCoupling,
1826 const vector<Percent> &signalGain,
1828 const Angle &elevation);
1830 double RT(
double pfit_wh2o,
1836 return RT(pfit_wh2o, skycoupling, tspill,
airMass_, spwid, nc);
1838 double RT(
double pfit_wh2o,
1843 return RT(pfit_wh2o, skycoupling, tspill,
airMass_, spwid);
1845 double RT(
double pfit_wh2o,
1852 double RT(
double pfit_wh2o,
1858 double tebb_channel = 0.0;
1859 for(
unsigned int n = 0; n <
v_numChan_[spwid]; n++) {
1860 tebb_channel = tebb_channel +
RT(pfit_wh2o,
1865 n) / (v_numChan_[spwid]);
1867 return tebb_channel;
1870 double RT(
double pfit_wh2o,
1876 vector<double> spwId_filter;
1877 for(
unsigned int n = 0; n <
v_numChan_[spwid]; n++) {
1878 spwId_filter.push_back(1.0);
1880 return RT(pfit_wh2o,
1889 double RT(
double pfit_wh2o,
1896 vector<double> spwId_filter;
1897 for(
unsigned int n = 0; n <
v_numChan_[spwid]; n++) {
1898 spwId_filter.push_back(1.0);
1900 return RT(pfit_wh2o,
1909 double RT(
double pfit_wh2o,
1913 const vector<double> &spwId_filter)
1915 return RT(pfit_wh2o,
1924 double RT(
double pfit_wh2o,
1928 const vector<double> &spwId_filter,
1931 return RT(pfit_wh2o,
1940 double RT(
double pfit_wh2o,
1945 const vector<double> &spwId_filter,
1955 return RTRJ(pfit_wh2o, skycoupling, tspill,
airMass_, spwid, nc);
1962 return RTRJ(pfit_wh2o, skycoupling, tspill,
airMass_, spwid);
1964 double RTRJ(
double pfit_wh2o,
1977 double trj_channel = 0.0;
1978 for(
unsigned int n = 0; n <
v_numChan_[spwid]; n++) {
1979 trj_channel = trj_channel +
RTRJ(pfit_wh2o,
1984 n) / (v_numChan_[spwid]);
1995 vector<double> spwId_filter;
1996 for(
unsigned int n = 0; n <
v_numChan_[spwid]; n++) {
1997 spwId_filter.push_back(1.0);
1999 return RTRJ(pfit_wh2o,
2015 vector<double> spwId_filter;
2016 for(
unsigned int n = 0; n <
v_numChan_[spwid]; n++) {
2017 spwId_filter.push_back(1.0);
2019 return RTRJ(pfit_wh2o,
2032 const vector<double> &spwId_filter)
2034 return RTRJ(pfit_wh2o,
2047 const vector<double> &spwId_filter,
2050 return RTRJ(pfit_wh2o,
2059 double RTRJ(
double pfit_wh2o,
2064 const vector<double> &spwId_filter,
#define ATM_NAMESPACE_END
Temperature getAverageTrjSky(const Length &wh2o, double skycoupling, const Temperature &Tspill)
Accesor to the average Rayleigh-Jeans Temperature in spectral window 0, for the current conditions...
Opacity getTotalOpacity(unsigned int spwid, unsigned int nc)
Angle getNonDispersiveH2OPhaseDelay()
Accesor to get the integrated zenith H2O Atmospheric Phase Delay (Non-Dispersive part) for the curren...
Opacity getAverageO2LinesOpacity(unsigned int spwid)
Opacity getDryOpacity(unsigned int nc)
Length getUserWH2O() const
Accessor to get the user water vapor column.
Temperature getAverageTebbSky(unsigned int spwid, const Length &wh2o)
Accesor to the average Equivalent Blackbody Temperature in spectral window spwid, for the current con...
Temperature getTrjSky(unsigned int spwid, unsigned int nc)
Accesor to the Rayleigh-Jeans Temperature in spectral window spwid and channel nc, for the currnet (user) Water Vapor Column, the current Air Mass, and perfect Sky Coupling to the sky.
This is an auxiliary class that allows to create objects corresponding to measurements (and their ana...
Opacity getAverageNO2LinesOpacity(unsigned int spwid)
Opacity getWetOpacity(unsigned int nc)
Accesor to get the integrated zenith Wet Opacity for the current conditions, for the point nc of spec...
void updateSkyCoupling_fromWVR(vector< WVRMeasurement > &RadiometerData, unsigned int n, unsigned int m, WaterVaporRadiometer &external_wvr)
std::vector< unsigned int > v_transfertId_
Opacity getAverageDryContOpacity(unsigned int spwid)
Opacity getAverageH2OContOpacity(unsigned int spwid)
double getAverageH2OPathLengthDerivative(unsigned int spwid)
Temperature getTebbSky(unsigned int nc, const Length &wh2o, double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel nc, for Water Column wh2o, Air Mass airmass, Sky Coupling skycoupling, and Spill Over Temperature Tspill.
Temperature getAverageTebbSky(double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the average Equivalent Blackbody Temperature in spectral window 0, for the current conditi...
Temperature getAverageTrjSky(double airmass)
Accesor to the average Rayleigh-Jeans Temperature in spectral window 0, for the current conditions...
Length getAverageO2LinesPathLength()
Opacity getAverageDryContOpacity(unsigned int spwid)
Length mkWaterVaporRetrieval_fromFTS(unsigned int spwId, const vector< double > &v_transmission, const Frequency &f1, const Frequency &f2)
double RT(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid)
Opacity getH2OContOpacity(unsigned int spwid, unsigned int nc)
Accesor to get the integrated zenith H2O Continuum Opacity for the current conditions, for the point nc of spectral window spwid.
double sigmaSkyCouplingRetrieval_fromWVR(double par_fit, const WaterVaporRadiometer &wvr, vector< WVRMeasurement > &RadiometerData, unsigned int n)
ATM_NAMESPACE_BEGIN typedef ATM_NAMESPACE::Percent Humidity
Opacity getWetOpacityUpTo(Length refalti)
Temperature getAverageTebbSky(const Length &wh2o)
Accesor to the average Equivalent Blackbody Temperature in spectral window 0, for the current conditi...
Opacity getAverageN2OLinesOpacity(unsigned int spwid)
double get() const
Accessor to the temperature value in International System units (K)
This is an axuliary class to SkyStatus that allows to identify the spectral windows that actually cor...
Length getGroundWH2O() const
Method to get the zenith column of water vapor.
Length WaterVaporRetrieval_fromTEBB(const vector< unsigned int > &spwId, const vector< Percent > &signalGain, const vector< vector< Temperature > > &vv_tebb, const vector< vector< double > > &spwId_filters, double airmass, const vector< double > &skycoupling, const vector< Temperature > &tspill)
Zenith Water Vapor column retrieval based on fitting measured brightness temperatures of the atmosphe...
Opacity getAverageH2OContOpacity(const Length &integratedwatercolumn, unsigned int spwid)
Opacity getH2OLinesOpacity()
Accesor to get the integrated zenith H2O Lines Opacity for the current conditions, for a single frequency RefractiveIndexProfile object or for the point 0 of spectral window 0 of a multi-window RefractiveIndexProfile object.
Temperature getAverageTrjSky(double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the average Rayleigh-Jeans Temperature in spectral window 0, for the current conditions...
double sigmaSkyCouplingRetrieval_fromWVR(double par_fit, const WaterVaporRadiometer &wvr, vector< WVRMeasurement > &RadiometerData, unsigned int n, unsigned int m)
double RTRJ(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid, const Percent &signalgain)
Temperature getAverageTebbSky(unsigned int spwid)
Accesor to the average Equivalent Blackbody Temperature in spectral window spwid, for the current con...
bool spwidAndIndexAreValid(unsigned int spwid, unsigned int idx)
Method to assess if a channel frequency index of a given spectral window is valid.
Temperature getTebbSky(unsigned int spwid, unsigned int nc)
Accesor to the Equivalent Blackbody Temperature in spectral window spwid and channel nc...
Temperature getTebbSky(unsigned int nc, double airmass)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel nc, for the currnet (user) Water Vapor Column, Air Mass airmass, and perfect Sky Coupling to the sky.
Length mkWaterVaporRetrieval_fromTEBB(unsigned int spwId, const Percent &signalGain, const vector< Temperature > &v_measuredSkyTEBB, double airm, const vector< double > &spwId_filter, double skycoupling, const Temperature &tspill)
void WaterVaporRetrieval_fromWVR(vector< WVRMeasurement > &RadiometerData, unsigned int n, unsigned int m)
Performs water vapor retrieval for WVR measurement sets between n and m.
Temperature getAverageTebbSky()
Accesor to the average Equivalent Blackbody Temperature in spectral window 0, for the current conditi...
Opacity getAverageCOLinesOpacity(unsigned int spwid)
Opacity getAverageN2OLinesOpacity(unsigned int spwid)
double RT(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid, unsigned int nc)
Temperature getTebbSky(unsigned int spwid, unsigned int nc, double airmass)
Accesor to the Equivalent Blackbody Temperature in spectral window spwid and channel nc...
double RTRJ(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid, const vector< double > &spwId_filter)
Temperature getSigmaFit(unsigned int spwId, const vector< Temperature > &v_tebbspec, double skyCoupling, const Temperature &Tspill)
double getSigmaTransmissionFit(){}
void setAirMass(double airMass)
Setter for air mass in SkyStatus without performing water vapor retrieval.
Temperature getAverageTrjSky()
Accesor to the average Rayleigh-Jeans Temperature in spectral window 0, for the current conditions a...
Temperature getTrjSky(unsigned int nc, double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel nc, for the current User W...
double RT(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid, const vector< double > &spwId_filter, const Percent &signalgain)
Temperature getAverageTebbSky(unsigned int spwid, double airmass)
Accesor to the average Equivalent Blackbody Temperature in spectral window spwid, for the current con...
Opacity getAverageWetOpacity(const Length &integratedwatercolumn, unsigned int spwid)
Angle getAverageNonDispersiveH2OPhaseDelay()
Accessor to get the average integrated zenith Atmospheric Phase Delay (Non-Dispersive part) in spectr...
bool updateProfilesAndRadiance(const Length &altitude, const Pressure &groundPressure, const Temperature &groundTemperature, double tropoLapseRate, const Humidity &relativeHumidity, const Length &wvScaleHeight)
Temperature getAverageTrjSky(double skycoupling, const Temperature &Tspill)
Accesor to the average Rayleigh-Jeans Temperature in spectral window 0 for the current conditions...
void updateSkyCouplingChannel_fromWVR(vector< WVRMeasurement > &RadiometerData, unsigned int ichan, unsigned int n, unsigned int m)
Performs a sky coupling retrieval using WVR measurement sets between n and m (obtains the ratio betwe...
WVRMeasurement mkWaterVaporRetrieval_fromWVR(const vector< Temperature > &measuredSkyBrightnessVector, const vector< unsigned int > &radiometricChannels, const vector< double > &skyCoupling, const vector< Percent > &signalGain, const Temperature &spilloverTemperature, const Angle &elevation)
Temperature getWVRAverageSigmaTskyFit(const vector< WVRMeasurement > &RadiometerData, unsigned int n, unsigned int m)
Opacity getWetOpacityUpTo(unsigned int nc, Length refalti)
Temperature sigma_TEBBfit_
double RT(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid, const vector< double > &spwId_filter)
Opacity getAverageH2OLinesOpacity(unsigned int spwid)
Temperature getTrjSky(unsigned int nc, double skycoupling, const Temperature &Tspill)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel nc, for the current (user)...
Opacity getDryOpacity()
Function to retrieve the integrated Dry Opacity along the atmospheric path for single frequency Refra...
Temperature getTrjSky(unsigned int nc)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel nc, for the currnet (user)...
Length getAverageH2OPathLength(unsigned int spwid)
void updateSkyCoupling_fromWVR(vector< WVRMeasurement > &RadiometerData, unsigned int n, unsigned int m)
Performs a sky coupling retrieval using WVR measurement sets between n and m (obtains the ratio betwe...
Opacity getAverageSO2LinesOpacity(unsigned int spwid)
double RTRJ(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid)
Temperature getTrjSky(unsigned int nc, const Length &wh2o)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel nc, for Water Vapor Column...
Opacity getTotalOpacityUpTo(unsigned int spwid, unsigned int nc, Length refalti)
void addNewSpectralWindow(unsigned int numChan, unsigned int refChan, double *chanFreq, const string &freqUnits)
Setter of new spectral windows (adds frequencies to the SpectralGrid and calculates the corresponding...
Temperature getTrjSky(double airmass)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel 0, for the currnet (user) ...
Opacity getTotalOpacity(unsigned int nc)
Temperature getTebbSky(unsigned int spwid, unsigned int nc, double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the Equivalent Blackbody Temperature in spectral window spwid and channel nc...
Opacity getAverageO3LinesOpacity(unsigned int spwid)
void setSkyBackgroundTemperature(const Temperature &skyBackgroundTemperature)
Setter for sky background temperature in SkyStatus without performing water vapor retrieval...
Opacity getH2OLinesOpacityUpTo(Length refalti)
double sigmaSkyCouplingChannelRetrieval_fromWVR(double par_fit, const WaterVaporRadiometer &wvr, vector< WVRMeasurement > &RadiometerData, unsigned int ichan, unsigned int n, unsigned int m)
void addNewSpectralWindow(unsigned int numChan, double refFreq, const vector< double > &chanFreq, const string &freqUnits)
Setter of new spectral windows (adds frequencies to the SpectralGrid and calculates the corresponding...
Opacity getWetOpacity()
Accesor to get the integrated zenith Wet Opacity for the current conditions, for a single frequency R...
double getAverageNonDispersiveDryPathLength_GroundTemperatureDerivative(unsigned int spwid)
Temperature getTebbSky(unsigned int spwid, unsigned int nc, const Length &wh2o)
Accesor to the Equivalent Blackbody Temperature in spectral window spwid and channel nc...
Opacity getAverageO3LinesOpacity(unsigned int spwid)
Temperature getTrjSky(unsigned int nc, double airmass)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel nc, for the currnet (user)...
Length getAverageDispersiveDryPathLength(unsigned int spwid)
void addNewSpectralWindow(unsigned int numChan, unsigned int refChan, const Frequency &refFreq, const Frequency &chanSep, const Frequency &intermediateFreq, const SidebandSide &sbSide, const SidebandType &sbType)
Setter of new spectral windows (adds frequencies to the SpectralGrid and calculates the corresponding...
Opacity getTotalOpacityUpTo(unsigned int nc, Length refalti)
Opacity getTotalOpacityUpTo(unsigned int nc, Length refalti);.
Temperature getTrjSky(unsigned int spwid, unsigned int nc, double airmass)
Accesor to the Rayleigh-Jeans Temperature in spectral window spwid and channel nc, for the currnet (user) Water Vapor Column, Air Mass airmass, and perfect Sky Coupling to the sky.
From the layerThickness and layerTemperature arrays (from AtmProfile), the RefractiveIndexProfile arr...
Temperature getTebbSky(unsigned int nc)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel nc, for the currnet (user) Water Vapor Column, the current Air Mass, and perfect Sky Coupling to the sky.
double RTRJ(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid, const vector< double > &spwId_filter, const Percent &signalgain)
Opacity getH2OContOpacity()
Accesor to get the integrated zenith H2O Continuum Opacity for the current conditions, for a single frequency RefractiveIndexProfile object or for the point 0 of spectral window 0 of a multi-window RefractiveIndexProfile object.
Temperature getTebbSky(unsigned int nc, double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel nc, for the current User Water Column, Air Mass airmass, Sky Coupling skycoupling, and Spill Over Temperature Tspill.
double RT(double pfit_wh2o, double skycoupling, double tspill, double airmass, unsigned int spwid)
double RTRJ(double pfit_wh2o, double skycoupling, double tspill, double airmass, unsigned int spwid)
Opacity getDryOpacityUpTo(Length refalti)
Percent getWaterVaporRadiometerSignalGain(int n) const
Accessor to the sky coupling of channel n of the Water Vapor Radiometer.
vector< double > getSkyCoupling() const
Accessor to Sky coupling of the different radiometric channels (vector of double) ...
Temperature getWVRAverageSigmaTskyFit(const vector< WVRMeasurement > &RadiometerData, unsigned int n)
double getSigmaTransmissionFit(unsigned int spwId, const vector< double > &v_transmission, double airm, const Frequency &f1, const Frequency &f2)
#define ATM_NAMESPACE_BEGIN
Length WaterVaporRetrieval_fromFTS(unsigned int spwId, const vector< double > &v_transmission)
Zenith Water Vapor column retrieval based on fitting the vector of zenith atmospheric transmission gi...
Angle getDispersiveH2OPhaseDelay()
Accesor to get the integrated zenith H2O Atmospheric Phase Delay (Dispersive part) for the current co...
vector< Percent > getsignalGain() const
Accessor to signalGain of the different radiometric channels (vector of percent)
Temperature getTrjSky(unsigned int spwid, unsigned int nc, const Length &wh2o, double airmass)
Accesor to the Rayleigh-Jeans Temperature in spectral window spwid and channel nc, for Water Vapor Column wh2o, Air Mass airmass, and perfect Sky Coupling to the sky.
Temperature getTrjSky(unsigned int spwid, unsigned int nc, const Length &wh2o)
Accesor to the Rayleigh-Jeans Temperature in spectral window spwid and channel nc, for Water Vapor Column wh2o, the current Air Mass, and perfect Sky Coupling to the sky.
Temperature getAverageTebbSky(const Length &wh2o, double skycoupling, const Temperature &Tspill)
Accesor to the average Equivalent Blackbody Temperature in spectral window 0, for the current conditi...
Temperature getTebbSky(unsigned int spwid, unsigned int nc, const Length &wh2o, double skycoupling, const Temperature &Tspill)
Accesor to the Equivalent Blackbody Temperature in spectral window spwid and channel nc...
Length getAverageNonDispersiveDryPathLength()
Opacity getH2OLinesOpacity(unsigned int spwid, unsigned int nc)
Accesor to get the integrated zenith H2O Lines Opacity for the current conditions, for the point nc of spectral window spwid.
double getAverageH2OPathLengthDerivative()
Length getAverageO2LinesPathLength(unsigned int spwid)
Function to retrieve the average integrated Atmospheric Path Length (due to O2 Lines) in spectral Win...
Opacity getAverageWetOpacity(unsigned int spwid)
Accesor to get the average Wet Opacity for the current conditions, in spectral window spwid...
Temperature getAverageTrjSky(unsigned int spwid, double skycoupling, const Temperature &Tspill)
Accesor to the average Rayleigh-Jeans Temperature in spectral window spwid for the current conditions...
Opacity getH2OContOpacityUpTo(Length refalti)
Length getAverageO2LinesPathLength(unsigned int spwid)
Temperature getAverageTrjSky(unsigned int spwid, const Length &wh2o, double skycoupling, const Temperature &Tspill)
Accesor to the average Rayleigh-Jeans Temperature in spectral window spwid, for the current condition...
Temperature getAverageTrjSky(unsigned int spwid, const Length &wh2o)
Accesor to the average Rayleigh-Jeans Temperature in spectral window spwid, for the current condition...
Opacity getAverageH2OLinesOpacity(const Length &integratedwatercolumn, unsigned int spwid)
Temperature getAverageTebbSky(unsigned int spwid, const Length &wh2o, double skycoupling, const Temperature &Tspill)
Accesor to the average Equivalent Blackbody Temperature in spectral window spwid, for the current con...
WaterVaporRadiometer getWaterVaporRadiometer() const
Accessor to get or check the water vapor radiometer channels.
Length getDispersiveH2OPathLength()
Accesor to get the integrated zenith H2O Atmospheric Path length (Dispersive part) for the current co...
void iniSkyStatus()
Basic Method initialize the class when using the constructors.
double SkyCouplingRetrieval_fromTEBB(unsigned int spwId, const vector< Temperature > &v_tebb, double skycoupling, const Temperature &tspill)
Length wh2o_user_
Water vapor column used for radiative transfer calculations. If not provided,.
Length getAverageSO2LinesPathLength(unsigned int spwid)
Function to retrieve the average integrated Atmospheric Path Length (due to SO2 Lines) in spectral Wi...
Temperature getTebbSky(unsigned int nc, const Length &wh2o)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel nc, for Water Vapor Column wh2o, the current Air Mass, and perfect Sky Coupling to the sky.
Profile of the absorption and Phase coefficient(s) at given frequency(ies) for an atmospheric profile...
Opacity getAverageNO2LinesOpacity(unsigned int spwid)
Temperature getTrjSky(unsigned int spwid, unsigned int nc, double skycoupling, const Temperature &Tspill)
Accesor to the Rayleigh-Jeans Temperature in spectral window spwid and channel nc, for the current (user) Water Vapor Column and Air Mass, Sky Coupling skycoupling, and Spill Over Temperature Tspill.
Temperature getTebbSky()
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel 0, for the currnet (user) Water Vapor Column, the current Air Mass, and perfect Sky Coupling to the sky.
Length getAverageN2OLinesPathLength(unsigned int spwid)
Function to retrieve the average integrated Atmospheric Path Length (due to N2O Lines) in spectral Wi...
Temperature getAverageTebbSky(unsigned int spwid, double skycoupling, const Temperature &Tspill)
Accesor to the average Equivalent Blackbody Temperature in spectral window spwid for the current cond...
Temperature getAverageTrjSky(unsigned int spwid, double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the average Rayleigh-Jeans Temperature in spectral window spwid, for the current condition...
Temperature getTrjSky(const Length &wh2o)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel 0, for Water Vapor Column ...
Opacity getAverageTotalOpacity(unsigned int spwid)
double getAverageNonDispersiveDryPathLength_GroundPressureDerivative(unsigned int spwid)
unsigned int add(unsigned int numChan, unsigned int refChan, const Frequency &refFreq, const Frequency &chanSep)
Add a new spectral window, uniformly sampled, this spectral window having no sideband.
Temperature getAverageTebbSky(unsigned int spwid, double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the average Equivalent Blackbody Temperature in spectral window spwid, for the current con...
Defines pressure with units.
Length getAverageH2OPathLength()
Temperature getAverageTebbSky(double airmass)
Accesor to the average Equivalent Blackbody Temperature in spectral window 0, for the current conditi...
double RTRJ(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid, unsigned int nc)
Temperature getWVRSigmaChannelTskyFit(const vector< WVRMeasurement > &RadiometerData, unsigned int ichan, unsigned int n, unsigned int m)
Temperature getAverageTebbSky(double skycoupling, const Temperature &Tspill)
Accesor to the average Equivalent Blackbody Temperature in spectral window 0 for the current conditio...
void setWaterVaporRadiometer(const WaterVaporRadiometer &waterVaporRadiometer)
(Re)setter of water vapor radiometer channels
Temperature getTrjSky(unsigned int spwid, unsigned int nc, double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the Rayleigh-Jeans Temperature in spectral window spwid and channel nc, for the current User Water Column, Air Mass airmass, Sky Coupling skycoupling, and Spill Over Temperature Tspill.
void updateSkyCoupling_fromWVR(vector< WVRMeasurement > &RadiometerData, unsigned int n)
Temperature getSigmaFit(unsigned int spwId, const vector< Temperature > &v_tebbspec, const Length &wh2o, double skyCoupling, const Temperature &Tspill)
Angle getAverageH2OPhaseDelay(unsigned int spwid)
Class for opacities [no dimensions].
double RT(double pfit_wh2o, double skycoupling, double tspill, double airmass, unsigned int spwid, const Percent &signalgain)
Temperature getGroundTemperature() const
Accessor to the current Ground Temperature used in the object.
Opacity getTotalOpacityUpTo(Length refalti)
Temperature getAverageTrjSky(unsigned int spwid)
Accesor to the average Rayleigh-Jeans Temperature in spectral window spwid, for the current condition...
double mkSkyCouplingRetrieval_fromTEBB(unsigned int spwId, const Percent &signalGain, const vector< Temperature > &measuredSkyTEBB, double airm, const vector< double > &spwId_filter, double skycoupling, const Temperature &tspill)
Temperature getAverageTrjSky(const Length &wh2o)
Accesor to the average Rayleigh-Jeans Temperature in spectral window 0, for the current conditions...
Opacity getWetOpacityUpTo(unsigned int spwid, unsigned int nc, Length refalti)
double getAverageDispersiveDryPathLength_GroundTemperatureDerivative(unsigned int spwid)
Length getAverageO3LinesPathLength(unsigned int spwid)
Function to retrieve the average integrated Atmospheric Path Length (due to O3 Lines) in spectral Win...
Temperature getTebbSky(unsigned int spwid, unsigned int nc, const Length &wh2o, double airmass)
Accesor to the Equivalent Blackbody Temperature in spectral window spwid and channel nc...
Temperature getSkyBackgroundTemperature() const
Accessor to get sky background temperature.
Length WaterVaporRetrieval_fromFTS(const vector< double > &v_transmission, const Frequency &f1, const Frequency &f2)
Same as above but using for the retrieval only the measurements between frequencies f1 and f2>f1...
Opacity getH2OContOpacityUpTo(unsigned int spwid, unsigned int nc, Length refalti)
Length getAverageDispersiveDryPathLength()
void setUserWH2O(double dwh2o, const string &units)
Alternative form of the setter for user zenith water vapor column for forward radiative transfer calc...
Angle getAverageH2OPhaseDelay()
Length getAverageNonDispersiveDryPathLength(unsigned int spwid)
Function to retrieve the average integrated Atmospheric Path Length (Dry part) in spectral Window spw...
Opacity getAverageSO2LinesOpacity(unsigned int spwid)
Length getAverageNonDispersiveH2OPathLength()
Accessor to get the average integrated zenith Atmospheric Path Length (Non-Dispersive part) in spectr...
Temperature skyBackgroundTemperature_
Blackbody temperature of the sky background.
double get() const
Accessor to get the numerical value of length (in International System units: m)
Temperature getTebbSky(unsigned int spwid, unsigned int nc, double skycoupling, const Temperature &Tspill)
Accesor to the Equivalent Blackbody Temperature in spectral window spwid and channel nc...
Opacity getAverageDryOpacity(unsigned int spwid)
double sigma_transmission_FTSfit_
no accessors provided for these
void addNewSpectralWindow(unsigned int numChan, unsigned int refChan, const Frequency &refFreq, const Frequency &chanSep)
Setter of new spectral windows (adds frequencies to the SpectralGrid and calculates the corresponding...
Opacity getAverageDryOpacity(unsigned int spwid)
Opacity getTotalOpacity()
Length getAverageDispersiveH2OPathLength()
Accessor to get the average integrated zenith Atmospheric Path Length (Dispersive part) in spectral W...
Opacity getAverageO2LinesOpacity(unsigned int spwid)
Length getAverageNonDispersiveDryPathLength(unsigned int spwid)
Temperature getTebbSky(unsigned int nc, double skycoupling, const Temperature &Tspill)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel nc, for the current (user) Water Vapor Column and Air Mass, Sky Coupling skycoupling, and Spill Over Temperature Tspill.
Length getAverageNO2LinesPathLength(unsigned int spwid)
Function to retrieve the average integrated Atmospheric Path Length (due to NO2 Lines) in spectral Wi...
double getAverageDispersiveDryPathLength_GroundPressureDerivative(unsigned int spwid)
Defines a Class for those parameters being angles.
void rmSkyStatus()
Resets retrieved water column to zero, or the default value.
Temperature value with units.
bool setBasicAtmosphericParameters(const Length &altitude, const Pressure &groundPressure, const Temperature &groundTemperature, double tropoLapseRate, const Humidity &humidity, const Length &wvScaleHeight)
Setter for a new set of basic atmospheric parameters.
Defines a frequency value with units.
SkyStatus(const RefractiveIndexProfile &refractiveIndexProfile)
The basic constructor.
double getAirMass() const
Accessor to get airmass.
Temperature getTebbSky(const Length &wh2o)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel 0, for Water Vapor Column wh2o, the current Air Mass, and perfect Sky Coupling to the sky.
Temperature getTrjSky(unsigned int nc, const Length &wh2o, double skycoupling, const Temperature &Tspill)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel nc, for Water Vapor Column...
double airMass_
Air Mass used for the radiative transfer.
Temperature getTebbSky(unsigned int nc, const Length &wh2o, double airmass)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel nc, for Water Vapor Column wh2o, Air Mass airmass, and perfect Sky Coupling to the sky.
double RT(double pfit_wh2o, double skycoupling, double tspill, unsigned int spwid, const Percent &signalgain)
WaterVaporRadiometer waterVaporRadiometer_
!< the one retrieved from the water vapor radiometer channels will be used.
Length getNonDispersiveH2OPathLength()
Accesor to get the integrated zenith H2O Atmospheric Path length (Non-Dispersive part) for the curren...
Opacity getDryOpacity(unsigned int spwid, unsigned int nc)
Temperature getTebbSky(unsigned int nc, const Length &wh2o, double skycoupling, const Temperature &Tspill)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel nc, for Water Vapor Column wh2o, the current Air Mass, Sky Coupling skycoupling, and Spill Over Temperature Tspill.
void setUserWH2O(const Length &wh2o)
Setter for user zenith water vapor column for forward radiative transfer calculations.
Temperature getTebbSky(double airmass)
Accesor to the Equivalent Blackbody Temperature in spectral window 0 and channel 0, for the currnet (user) Water Vapor Column, Air Mass airmass, and perfect Sky Coupling to the sky.
Temperature getTrjSky(unsigned int spwid, unsigned int nc, const Length &wh2o, double skycoupling, const Temperature &Tspill)
Accesor to the Rayleigh-Jeans Temperature in spectral window spwid and channel nc, for Water Vapor Column wh2o, the current Air Mass, Sky Coupling skycoupling, and Spill Over Temperature Tspill.
Class for those physical parameters having dimensions of Length [L].
Temperature getAverageTrjSky(unsigned int spwid, double airmass)
Accesor to the average Rayleigh-Jeans Temperature in spectral window spwid, for the current condition...
Angle getAverageDispersiveH2OPhaseDelay()
Accessor to get the average integrated zenith Atmospheric Phase Delay (Dispersive part) for the curre...
Length WaterVaporRetrieval_fromFTS(const vector< double > &v_transmission)
Zenith Water Vapor column retrieval based on fitting the vector of zenith atmospheric transmission gi...
Length getAverageCOLinesPathLength(unsigned int spwid)
Function to retrieve the average integrated Atmospheric Path Length (due to CO Lines) in spectral Win...
Temperature getTrjSky()
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel 0, for the currnet (user) ...
std::vector< unsigned int > v_numChan_
number of channels for every spectral window
Temperature getTrjSky(unsigned int nc, const Length &wh2o, double airmass, double skycoupling, const Temperature &Tspill)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel nc, for Water Column wh2o...
Temperature getTrjSky(unsigned int nc, const Length &wh2o, double airmass)
Accesor to the Rayleigh-Jeans Temperature in spectral window 0 and channel nc, for Water Vapor Column...
Opacity getH2OLinesOpacityUpTo(unsigned int spwid, unsigned int nc, Length refalti)
double RTRJ(double pfit_wh2o, double skycoupling, double tspill, double airmass, unsigned int spwid, const Percent &signalgain)
Temperature getSigmaFit(unsigned int spwId, const vector< Temperature > &v_tebbspec, double airmass, double skyCoupling, const Temperature &Tspill)
Defines a class for quantities that may be expressed in percent.
Opacity getWetOpacity(unsigned int spwid, unsigned int nc)
Accesor to get the integrated zenith Wet Opacity for the current conditions, for the point nc of spec...
void addNewSpectralWindow(const vector< Frequency > &chanFreq)
void WaterVaporRetrieval_fromWVR(vector< WVRMeasurement > &RadiometerData, unsigned int n)
void addNewSpectralWindow(unsigned int numChan, double refFreq, double *chanFreq, const string &freqUnits)
Setter of new spectral windows (adds frequencies to the SpectralGrid and calculates the corresponding...
void updateSkyCoupling_fromWVR(vector< WVRMeasurement > &RadiometerData, unsigned int n, WaterVaporRadiometer &external_wvr)
double getWaterVaporRadiometerSkyCoupling(int n) const
Accessor to the sky coupling of channel n of the Water Vapor Radiometer.
Opacity getAverageCOLinesOpacity(unsigned int spwid)