1 #ifndef FD_FORWARD_MODEL_H 2 #define FD_FORWARD_MODEL_H 26 virtual void print(std::ostream& Os)
const { Os <<
"FdForwardModel"; }
29 {
return real_fm->num_channels();}
31 {
return real_fm->spectral_domain(Spec_index);}
35 blitz::Array<double, 1> perturb;
virtual boost::shared_ptr< StateVector > state_vector() const
For different instruments, it is more natural to either work with wavenumbers (e.g., GOSAT) or wavelength (e.g., OCO).
This is a full spectrum, which contains a SpectralRange and SpectralDomain.
The forward model represents the encapsulation of modeling spectra from an atmospheric state then app...
virtual Spectrum radiance(int Spec_index, bool Skip_jacobian=false) const
Spectrum for the given spectral band.
This a forward model class that calcualtes jacobians using the finite difference method.
FdForwardModel(const boost::shared_ptr< ForwardModel > &Real_Forward_model, const boost::shared_ptr< StateVector > &Sv, const blitz::Array< double, 1 > &Perturbation)
Constructor.
virtual int num_channels() const
The number of spectral channels associated with forward model.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
This gets the perturbation to use with a finite difference Jacobian.
virtual void print(std::ostream &Os) const
virtual const SpectralDomain spectral_domain(int Spec_index) const
Spectral domain for the given spectral band.
virtual ~FdForwardModel()