Canoe
Comprehensive Atmosphere N' Ocean Engine
concentration_inversion.hpp
Go to the documentation of this file.
1 #ifndef SRC_INVERSION_CONCENTRATION_INVERSION_HPP_
2 #define SRC_INVERSION_CONCENTRATION_INVERSION_HPP_
3 
4 // C/C++ header
5 #include <string>
6 #include <vector>
7 
8 // canoe
9 #include <configure.hpp>
10 
11 // athena
12 #include <athena/defs.hpp>
13 
14 // inversion
15 #include "inversion.hpp"
16 
18  public:
19  ConcentrationInversion(MeshBlock *pmb, ParameterInput *pin, std::string name);
21 
22  void InitializePositions() override;
23 
24  void UpdateConcentration(Hydro *phydro, Real *Xp, int k, int jl,
25  int ju) const;
26 
27  protected:
28  // inversion variable id
29  std::vector<int> idx_;
30 
31  // prior standard deviation
32  Real Xstd_[1 + NVAPOR];
33 };
34 
35 #endif // SRC_INVERSION_CONCENTRATION_INVERSION_HPP_
ConcentrationInversion(MeshBlock *pmb, ParameterInput *pin, std::string name)
void UpdateConcentration(Hydro *phydro, Real *Xp, int k, int jl, int ju) const