Canoe
Comprehensive Atmosphere N' Ocean Engine
ProfileInversion Class Reference

#include <profile_inversion.hpp>

Inheritance diagram for ProfileInversion:
[legend]

Public Member Functions

 ProfileInversion (MeshBlock *pmb, ParameterInput *pin, std::string name)
 
 ~ProfileInversion ()
 
size_t samples () const
 
void InitializePositions () override
 
void UpdateHydro (Hydro *phydro, ParameterInput *pin) const override
 
Real LogPosteriorProbability (Radiation *prad, Hydro *phydro, Real const *par, Real *val, int k) const override
 
void UpdateProfiles (Hydro *phydro, Real **XpSample, int k, int jl, int ju) const
 
void ConvectiveAdjustment (Hydro *phydro, int k, int ju) const
 
virtual Real LogPriorProbability (Real **XpSample) const
 
int getX2Span () const override
 
- Public Member Functions inherited from Inversion
 Inversion (MeshBlock *pmb, ParameterInput *pin, std::string name)
 Constructor and destructor. More...
 
virtual ~Inversion ()
 
virtual void CalculateFitTarget (Radiation const *prad, Real *val, int nvalue, int k, int j) const
 
void InitializeChain (int nstep, int nwalker, int ndim, int nvalue)
 
void MakeMCMCOutputs (std::string fname)
 
void MCMCInit (Radiation *prad, Hydro *phydro)
 
void MCMCMove (Radiation *prad, Hydro *phydro)
 
void MCMCSave (Hydro *phydro)
 
void ResetChain ()
 
int GetDims () const
 
int GetValues () const
 
int GetWalkers () const
 
int GetSteps () const
 
void SetLogProbability (int k, Real lnp)
 
Real GetLogProbability (int k) const
 
void setX2Indices (int j)
 
bool ShouldFITSOutput (std::string variable_name) const override
 MeshOutputGroup functions. More...
 
void LoadFITSOutputData (OutputType *pod, int *num_vars) const override
 
- Public Member Functions inherited from NamedGroup
 NamedGroup (std::string name)
 
virtual ~NamedGroup ()
 
std::string GetName () const
 
- Public Member Functions inherited from FITSOutputGroup
virtual ~FITSOutputGroup ()
 

Protected Attributes

std::vector< Real > plevel_
 
std::vector< int > idx_
 
Real chi_
 
Real Xstd_ [1+NVAPOR]
 
Real Xlen_ [1+NVAPOR]
 
- Protected Attributes inherited from Inversion
std::string name_
 
Eigen::VectorXd target_
 
Eigen::MatrixXd icov_
 
Real ** init_pos_
 
bool fit_differential_
 
int jl_
 
int ju_
 
MeshBlock const * pmy_block_
 pointer to parent MeshBlock More...
 

Detailed Description

Definition at line 16 of file profile_inversion.hpp.

Constructor & Destructor Documentation

◆ ProfileInversion()

ProfileInversion::ProfileInversion ( MeshBlock *  pmb,
ParameterInput *  pin,
std::string  name 
)

Definition at line 40 of file profile_inversion.cpp.

◆ ~ProfileInversion()

ProfileInversion::~ProfileInversion ( )

Definition at line 38 of file profile_inversion.cpp.

Member Function Documentation

◆ samples()

size_t ProfileInversion::samples ( ) const
inline

Definition at line 21 of file profile_inversion.hpp.

◆ InitializePositions()

void ProfileInversion::InitializePositions ( )
overridevirtual

Reimplemented from Inversion.

Definition at line 123 of file profile_inversion.cpp.

◆ UpdateHydro()

void ProfileInversion::UpdateHydro ( Hydro *  phydro,
ParameterInput *  pin 
) const
overridevirtual

Reimplemented from Inversion.

Definition at line 149 of file profile_inversion.cpp.

◆ LogPosteriorProbability()

Real ProfileInversion::LogPosteriorProbability ( Radiation prad,
Hydro *  phydro,
Real const *  par,
Real *  val,
int  k 
) const
overridevirtual

Reimplemented from Inversion.

Definition at line 29 of file profile_inversion_posterior.cpp.

◆ UpdateProfiles()

void ProfileInversion::UpdateProfiles ( Hydro *  phydro,
Real **  XpSample,
int  k,
int  jl,
int  ju 
) const

Definition at line 197 of file profile_inversion.cpp.

◆ ConvectiveAdjustment()

void ProfileInversion::ConvectiveAdjustment ( Hydro *  phydro,
int  k,
int  ju 
) const

Definition at line 310 of file profile_inversion.cpp.

◆ LogPriorProbability()

Real ProfileInversion::LogPriorProbability ( Real **  XpSample) const
virtual

Definition at line 19 of file profile_inversion_prior.cpp.

◆ getX2Span()

int ProfileInversion::getX2Span ( ) const
inlineoverridevirtual

Reimplemented from Inversion.

Definition at line 37 of file profile_inversion.hpp.

Member Data Documentation

◆ plevel_

std::vector<Real> ProfileInversion::plevel_
protected

Definition at line 41 of file profile_inversion.hpp.

◆ idx_

std::vector<int> ProfileInversion::idx_
protected

Definition at line 44 of file profile_inversion.hpp.

◆ chi_

Real ProfileInversion::chi_
protected

Definition at line 47 of file profile_inversion.hpp.

◆ Xstd_

Real ProfileInversion::Xstd_[1+NVAPOR]
protected

Definition at line 48 of file profile_inversion.hpp.

◆ Xlen_

Real ProfileInversion::Xlen_[1+NVAPOR]
protected

Definition at line 49 of file profile_inversion.hpp.


The documentation for this class was generated from the following files: