1 #ifndef LEVEL_1B_SCALE_RADIANCE_H 2 #define LEVEL_1B_SCALE_RADIANCE_H 4 #include <boost/shared_ptr.hpp> 16 : l1b(L1b), scaling(Scaling) {}
21 {
return l1b->number_spectrometer(); }
24 {
return l1b->relative_velocity(Spec_index); }
27 {
return l1b->time(Spec_index); }
30 {
return l1b->latitude(i); }
33 {
return l1b->longitude(i); }
36 {
return l1b->sounding_zenith(i); }
39 {
return l1b->sounding_azimuth(i); }
42 {
return l1b->stokes_coefficient(i); }
45 {
return l1b->solar_zenith(i); }
48 {
return l1b->solar_azimuth(i); }
51 {
return l1b->altitude(i); }
54 {
return l1b->sample_grid(Spec_index); }
58 virtual void print(std::ostream& Os)
const;
61 blitz::Array<double, 1> scaling;
virtual DoubleWithUnit sounding_azimuth(int i) const
Sounding azimuth.
Level1bScaleRadiance(const boost::shared_ptr< Level1b > &L1b, const blitz::Array< double, 1 > &Scaling)
virtual DoubleWithUnit solar_zenith(int i) const
Solar zenith.
virtual ~Level1bScaleRadiance()
For different instruments, it is more natural to either work with wavenumbers (e.g., GOSAT) or wavelength (e.g., OCO).
virtual DoubleWithUnit latitude(int i) const
Latitude.
virtual DoubleWithUnit altitude(int i) const
Altitude.
virtual SpectralDomain sample_grid(int Spec_index) const
Returns the sample grid (ie wavenumber, wavelength, etc) for the corresponding radiance values...
virtual SpectralRange radiance(int Spec_index) const
Radiance, for given spectral band.
This is used to read a Level 1B file.
virtual DoubleWithUnit solar_azimuth(int i) const
Solar azimuth.
virtual Time time(int Spec_index) const
Time of sounding.
virtual DoubleWithUnit relative_velocity(int Spec_index) const
Relative velocity.
virtual void print(std::ostream &Os) const
Print description of object.
We frequently have a double with units associated with it.
We have a number of different spectrums that appear in different parts of the code.
virtual blitz::Array< double, 1 > stokes_coefficient(int i) const
Return stokes coefficients.
This is a simple time class.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
virtual DoubleWithUnit longitude(int i) const
Longitude.
Scales the measured radiance of another Level1b class for each spectral band.
virtual int number_spectrometer() const
Number of spectrometers.
virtual DoubleWithUnit sounding_zenith(int i) const
Sounding zenith.