4 #include <boost/foreach.hpp>    27 bool Convert_from_photon)
    28 : param(Param), convert_from_photon(Convert_from_photon)
    30   using namespace units;
    42   Os << 
"SolarContinuumPolynomial:\n"    46   Os << 
"\n  Parameter units: \n";
    56   Array<double, 1> wl = spec_domain.
wavelength();
    60   res.
value.resize(wl.shape());
    61   res.
units = param.units;
    62   res.
value = param.value(param.value.size() - 1);
    63   for(
int i = ((
int) param.value.size()) - 2; i >= 0; i--) {
    65     res.
value += param.value(i);
    69   if(convert_from_photon)
 const Unit s("s", 1.0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0)
 
This class calculates the solar continuum spectrum. 
 
virtual void print(std::ostream &Os) const
Print description of object. 
 
virtual Spectrum solar_continuum_spectrum(const SpectralDomain &spec_domain) const
This calculate the solar continuum spectrum. 
 
This is a filtering stream that adds a pad to the front of every line written out. 
 
For different instruments, it is more natural to either work with wavenumbers (e.g., GOSAT) or wavelength (e.g., OCO). 
 
#define REGISTER_LUA_DERIVED_CLASS(X, Y)
 
blitz::Array< double, 1 > wavelength(const Unit &Units=units::micron) const
Return data as wavelengths You can optionally supply the units to use. 
 
const Unit micron("micron", 1e-6 *m)
 
blitz::Array< T, D > value
 
Apply value function to a blitz array. 
 
This class calculates the solar continuum spectrum. 
 
This is a full spectrum, which contains a SpectralRange and SpectralDomain. 
 
const Unit m("m", 1.0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
 
We have a number of different spectrums that appear in different parts of the code. 
 
ArrayWithUnit< double, 1 > photon_to_radiance_factor() const
We may want to convert from photon number per second to radiance units. 
 
bool is_commensurate(const Unit &Units) const
Test if this set of units is commensurate with another set. 
 
SolarContinuumPolynomial(const ArrayWithUnit< double, 1 > &Param, bool Convert_from_photon=true)
Constructor. 
 
Contains classes to abstract away details in various Spurr Radiative Transfer software. 
 
#define REGISTER_LUA_END()
 
#define range_min_check(V, Min)
Range check. 
 
const Unit ph("ph", 1.0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0)