1 #ifndef SIMPLE_FIXED_SPECTRUM_SAMPLING_H     2 #define SIMPLE_FIXED_SPECTRUM_SAMPLING_H    21                           double wn_start2, 
double wn_end2, 
double wn_step2,
    22                           double wn_start3, 
double wn_end3, 
double wn_step3);
    34     return spec_domain[spec_index];}
    35   virtual void print(std::ostream& Os) 
const;
    37   std::vector<SpectralDomain> spec_domain;
 #define range_check(V, Min, Max)
Range check. 
 
virtual ~SimpleFixedSpectrumSampling()
 
SimpleFixedSpectrumSampling(double wn_start, double wn_end, double wn_step)
Constructor. 
 
For different instruments, it is more natural to either work with wavenumbers (e.g., GOSAT) or wavelength (e.g., OCO). 
 
int number_spectrometer() const
Number of spectrometers we have. 
 
virtual void print(std::ostream &Os) const
Print to stream. 
 
This determines the sampling of the spectrum that should be used for each of the spectrum indexes...
 
We frequently have a double with units associated with it. 
 
Contains classes to abstract away details in various Spurr Radiative Transfer software. 
 
virtual SpectralDomain spectral_domain(int spec_index, const SpectralDomain &Lowres_grid, const DoubleWithUnit &Ils_half_width) const
Wave numbers to use for the given spectrometer. 
 
This is a simple SpectrumSampling that is just a uniform sampling.