ReFRACtor
pressure_level_input.h
Go to the documentation of this file.
1 #ifndef PRESSURE_LEVEL_INPUT_H
2 #define PRESSURE_LEVEL_INPUT_H
3 #include "printable.h"
4 #include "hdf_file.h"
5 #include <blitz/array.h>
6 
7 namespace FullPhysics {
8 /****************************************************************/
22 class PressureLevelInput : public Printable<PressureLevelInput> {
23 public:
24 //-----------------------------------------------------------------------
28 //-----------------------------------------------------------------------
29 
30  PressureLevelInput(const blitz::Array<double, 1>& Press_level)
31  : press_level(Press_level.copy()) {}
32 
33 //-----------------------------------------------------------------------
38 //-----------------------------------------------------------------------
39 
40  PressureLevelInput(const HdfFile& Hdf_file,
41  const std::string& Hdf_group = "Pressure")
42  : press_level(Hdf_file.read_field<double, 1>(Hdf_group + "/Pressure")) {}
43 
44  virtual ~PressureLevelInput() {}
45 
46 //-----------------------------------------------------------------------
49 //-----------------------------------------------------------------------
50 
51  const blitz::Array<double, 1>& pressure_level() const {return press_level; }
52 
53 //-----------------------------------------------------------------------
55 //-----------------------------------------------------------------------
56 
57  void print(std::ostream& Os) const;
58 private:
59  blitz::Array<double, 1> press_level;
60 };
61 }
62 #endif
PressureLevelInput(const blitz::Array< double, 1 > &Press_level)
Constructor.
This is a Mixin for classes that can be printed.
Definition: printable.h:24
This class reads and writes a HDF5 file.
Definition: hdf_file.h:39
void print(std::ostream &Os) const
Print to a stream.
PressureLevelInput(const HdfFile &Hdf_file, const std::string &Hdf_group="Pressure")
Constructor.
In a retrieval, there are typically two different pressure levels of interest.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
Definition: doxygen_python.h:1
const blitz::Array< double, 1 > & pressure_level() const
Pressure levels that input data was defined on.

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