1 #ifndef SPECTRAL_WINDOW_H 2 #define SPECTRAL_WINDOW_H 5 #include <blitz/array.h> 40 int Spec_index)
const = 0;
54 virtual void print(std::ostream& Os)
const { Os <<
"SpectralWindow";}
virtual SpectralBound spectral_bound() const =0
Bounds of spectral window.
virtual void print(std::ostream &Os) const
For different instruments, it is more natural to either work with wavenumbers (e.g., GOSAT) or wavelength (e.g., OCO).
This is a Mixin for classes that can be printed.
virtual std::vector< int > grid_indexes(const SpectralDomain &Grid, int Spec_index) const =0
Given a list of wavenumbers, this returns the indices that fall within the window.
This is a full spectrum, which contains a SpectralRange and SpectralDomain.
This gives the upper and lower bounds of the SpectralWindow.
virtual int number_spectrometer() const =0
Number of spectrometers.
This class represents a the spectral window.
virtual ~SpectralWindow()
SpectralDomain apply(const SpectralDomain &Grid, int Spec_index) const
Apply a spectral window to a SpectralDomain, returning the possibly empty part of the domain that pas...
Contains classes to abstract away details in various Spurr Radiative Transfer software.