ReFRACtor
level_1b_sample_coefficient.h
Go to the documentation of this file.
1 #ifndef LEVEL_1B_SAMPLE_COEFFICIENT_H
2 #define LEVEL_1B_SAMPLE_COEFFICIENT_H
3 #include "level_1b.h"
4 #include "spectral_domain.h"
5 #include "array_ad.h"
6 #include "polynomial_eval.h"
7 #include <blitz/array.h>
8 #include <stdint.h>
9 #include <cmath>
10 
11 namespace FullPhysics {
12 /****************************************************************/
24 public:
25  Level1bSampleCoefficient(const bool One_based = true) : one_based_(One_based) { };
27 
28 //-----------------------------------------------------------------------
34 //-----------------------------------------------------------------------
35 
36  virtual ArrayWithUnit<double, 1> spectral_coefficient(int Spec_index) const = 0;
37 
38 //-----------------------------------------------------------------------
43 //-----------------------------------------------------------------------
44 
45  virtual SpectralDomain sample_grid(int Spec_index) const;
46 
47 //-----------------------------------------------------------------------
49 //-----------------------------------------------------------------------
50 
51  virtual void print(std::ostream& Os) const {Os << "Level1bSampleCoefficient";}
52 
53 private:
54  bool one_based_;
55  virtual double calculate_sample_value_from_coeffs(int Spec_index, int sample_idx) const;
56 };
57 } // End of FullPhysics namespace
58 #endif
virtual void print(std::ostream &Os) const
Print description of object.
virtual SpectralDomain sample_grid(int Spec_index) const
Returns the sample grid (ie wavenumber, wavelength, etc) for the corresponding radiance values...
This is used to wrap the nominal Level 1B file reader.
virtual ArrayWithUnit< double, 1 > spectral_coefficient(int Spec_index) const =0
Returns coefficients for an equation describing the special domain used to translate radiance value i...
For different instruments, it is more natural to either work with wavenumbers (e.g., GOSAT) or wavelength (e.g., OCO).
This is used to read a Level 1B file.
Definition: level_1b.h:15
Contains classes to abstract away details in various Spurr Radiative Transfer software.
Definition: doxygen_python.h:1

Copyright © 2017, California Institute of Technology.
ALL RIGHTS RESERVED.
U.S. Government Sponsorship acknowledged.
Generated Fri Aug 24 2018 15:44:10