ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
ERF_Plotfile2DCatalog.H
Go to the documentation of this file.
1 #ifndef ERF_PLOTFILE2DCATALOG_H_
2 #define ERF_PLOTFILE2DCATALOG_H_
3 
4 #include <string>
5 
6 #include <AMReX_Vector.H>
7 
8 namespace plotfile2d
9 {
10 
11 enum class DiagnosticID
12 {
13  ZSurf,
14  LandMask,
15  MapFac,
16  LatM,
17  LonM,
18  UStar,
19  WStar,
20  TStar,
21  QStar,
22  Olen,
23  Pblh,
24  TSurf,
25  QSurf,
26  Z0,
27  OLR,
28  SensFlux,
29  LatenFlux,
30  SurfPres,
46  ShocUStar,
47  ShocOlen,
78 };
79 
81 {
82  Geometry,
84  Radiation,
86  PBL,
92 };
93 
94 enum class MissingPolicy
95 {
99 };
100 
102 {
104  const char* name;
105  const char* long_name;
106  const char* units;
109 };
110 
111 const amrex::Vector<DiagnosticDescriptor>& diagnostic_catalog ();
112 
113 amrex::Vector<std::string> diagnostic_names ();
114 
115 const DiagnosticDescriptor* find_diagnostic (const std::string& name);
116 
117 // Runtime Noah-MP soil descriptors use the provider's actual configured layer
118 // count. Their IDs are unique within the returned runtime inventory.
119 amrex::Vector<std::string> dynamic_soil_diagnostic_names (int nsoil);
120 amrex::Vector<std::string>
121 dynamic_soil_diagnostic_names (const amrex::Vector<std::string>& active_lsm_names);
122 const DiagnosticDescriptor* find_dynamic_soil_diagnostic (const std::string& name);
123 bool is_dynamic_soil_diagnostic_name (const std::string& name);
124 
125 } // namespace plotfile2d
126 
127 #endif
std::string name
Definition: ERF_Plotfile2DCatalog.cpp:97
Definition: ERF_Plotfile2DCatalog.cpp:7
amrex::Vector< std::string > diagnostic_names()
Definition: ERF_Plotfile2DCatalog.cpp:152
amrex::Vector< std::string > dynamic_soil_diagnostic_names(int nsoil)
Definition: ERF_Plotfile2DCatalog.cpp:177
bool is_dynamic_soil_diagnostic_name(const std::string &name)
Definition: ERF_Plotfile2DCatalog.cpp:217
DiagnosticID
Definition: ERF_Plotfile2DCatalog.H:12
DiagnosticCategory
Definition: ERF_Plotfile2DCatalog.H:81
const amrex::Vector< DiagnosticDescriptor > & diagnostic_catalog()
Definition: ERF_Plotfile2DCatalog.cpp:146
MissingPolicy
Definition: ERF_Plotfile2DCatalog.H:95
const DiagnosticDescriptor * find_dynamic_soil_diagnostic(const std::string &name)
Definition: ERF_Plotfile2DCatalog.cpp:208
const DiagnosticDescriptor * find_diagnostic(const std::string &name)
Definition: ERF_Plotfile2DCatalog.cpp:165
Definition: ERF_Plotfile2DCatalog.H:102
DiagnosticID id
Definition: ERF_Plotfile2DCatalog.H:103
MissingPolicy missing_policy
Definition: ERF_Plotfile2DCatalog.H:108
const char * name
Definition: ERF_Plotfile2DCatalog.H:104
const char * units
Definition: ERF_Plotfile2DCatalog.H:106
DiagnosticCategory category
Definition: ERF_Plotfile2DCatalog.H:107
const char * long_name
Definition: ERF_Plotfile2DCatalog.H:105