ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
ERF_TurbStruct.H File Reference
#include <ERF_MYNNStruct.H>
Include dependency graph for ERF_TurbStruct.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  TurbChoice
 

Functions

 AMREX_ENUM (LESType, None, Smagorinsky, Smagorinsky2D, Deardorff)
 
 AMREX_ENUM (RANSType, None, kEqn)
 
 AMREX_ENUM (PBLType, None, MYJ, MYNN25, MYNNEDMF, YSU, MRF, SHOC)
 
 AMREX_ENUM (StratType, theta, thetav, thetal)
 
template<typename T >
int query_one_or_per_level (const amrex::ParmParse &pp, const char *query_string, T &query_var, const int lev, const int maxlev)
 
template<typename T >
int query_one_or_per_level_enum_case_insensitive (const amrex::ParmParse &pp, const char *query_string, T &query_var, const int lev, const int maxlev)
 

Function Documentation

◆ AMREX_ENUM() [1/4]

AMREX_ENUM ( LESType  ,
None  ,
Smagorinsky  ,
Smagorinsky2D  ,
Deardorff   
)

◆ AMREX_ENUM() [2/4]

AMREX_ENUM ( PBLType  ,
None  ,
MYJ  ,
MYNN25  ,
MYNNEDMF  ,
YSU  ,
MRF  ,
SHOC   
)

◆ AMREX_ENUM() [3/4]

AMREX_ENUM ( RANSType  ,
None  ,
kEqn   
)

◆ AMREX_ENUM() [4/4]

AMREX_ENUM ( StratType  ,
theta  ,
thetav  ,
thetal   
)

◆ query_one_or_per_level()

template<typename T >
int query_one_or_per_level ( const amrex::ParmParse &  pp,
const char *  query_string,
T query_var,
const int  lev,
const int  maxlev 
)
22 {
23  int count = pp.countval(query_string);
24  if (count == 0) {
25  return 0; // nothing to do
26  } else if (count == 1) {
27  return pp.query(query_string, query_var);
28  } else if (count == maxlev + 1) {
29  return pp.query(query_string, query_var, lev);
30  } else {
31  amrex::Error(
32  "For parmparse variable " + pp.prefixedName(query_string) +
33  ": if specified, specify once total or once for each level");
34  return 0; // avoid compiler warning
35  }
36 }
ParmParse pp("prob")

Referenced by TurbChoice::init_params().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ query_one_or_per_level_enum_case_insensitive()

template<typename T >
int query_one_or_per_level_enum_case_insensitive ( const amrex::ParmParse &  pp,
const char *  query_string,
T query_var,
const int  lev,
const int  maxlev 
)
46 {
47  int count = pp.countval(query_string);
48  if (count == 0) {
49  return 0; // nothing to do
50  } else if (count == 1) {
51  return pp.query_enum_case_insensitive(query_string, query_var);
52  } else if (count >= maxlev + 1) {
53  return pp.query_enum_case_insensitive(query_string, query_var, lev);
54  } else {
55  amrex::Error(
56  "For parmparse variable " + pp.prefixedName(query_string) +
57  ": if specified, specify once total or at least once for each level");
58  return 0; // avoid compiler warning
59  }
60 }

Referenced by SolverChoice::init_params().

Here is the call graph for this function:
Here is the caller graph for this function: