ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
ERF_Plotfile2DCatalog.H
Go to the documentation of this file.
1 /**
2  * \file ERF_Plotfile2DCatalog.H
3  */
4 #ifndef ERF_PLOTFILE2DCATALOG_H_
5 #define ERF_PLOTFILE2DCATALOG_H_
6 
7 #include <string>
8 
9 #include <AMReX_Vector.H>
10 
11 namespace plotfile2d
12 {
13 
14 enum class DiagnosticID
15 {
16  ZSurf,
17  LandMask,
18  MapFac,
19  LatM,
20  LonM,
21  UStar,
22  WStar,
23  TStar,
24  QStar,
25  Olen,
26  Pblh,
27  TSurf,
28  QSurf,
29  Z0,
30  U10m,
31  V10m,
32  UEast10m,
33  VNorth10m,
34  OLR,
40  SebTsfc,
41  SebQsfc,
42  SebHfx,
43  SebLh,
44  SensFlux,
45  LatenFlux,
46  SurfPres,
63  ShocUStar,
64  ShocOlen,
97 };
98 
100 {
101  Geometry,
102  SurfaceLayer,
103  Radiation,
104  SurfaceFlux,
105  PBL,
106  SurfaceState,
109  LandSurface,
111 };
112 
113 enum class MissingPolicy
114 {
118 };
119 
121 {
123  const char* name;
124  const char* long_name;
125  const char* units;
128 };
129 
130 const amrex::Vector<DiagnosticDescriptor>& diagnostic_catalog ();
131 
132 amrex::Vector<std::string> diagnostic_names ();
133 
134 const DiagnosticDescriptor* find_diagnostic (const std::string& name);
135 
136 // Runtime Noah-MP soil descriptors use the provider's actual configured layer
137 // count. Their IDs are unique within the returned runtime inventory.
138 amrex::Vector<std::string> dynamic_soil_diagnostic_names (int nsoil);
139 amrex::Vector<std::string>
140 dynamic_soil_diagnostic_names (const amrex::Vector<std::string>& active_lsm_names);
141 const DiagnosticDescriptor* find_dynamic_soil_diagnostic (const std::string& name);
142 bool is_dynamic_soil_diagnostic_name (const std::string& name);
143 
144 } // namespace plotfile2d
145 
146 #endif
std::string name
Definition: ERF_Plotfile2DCatalog.cpp:116
Definition: ERF.H:112
amrex::Vector< std::string > diagnostic_names()
Definition: ERF_Plotfile2DCatalog.cpp:171
amrex::Vector< std::string > dynamic_soil_diagnostic_names(int nsoil)
Definition: ERF_Plotfile2DCatalog.cpp:196
bool is_dynamic_soil_diagnostic_name(const std::string &name)
Definition: ERF_Plotfile2DCatalog.cpp:236
DiagnosticID
Definition: ERF_Plotfile2DCatalog.H:15
DiagnosticCategory
Definition: ERF_Plotfile2DCatalog.H:100
const amrex::Vector< DiagnosticDescriptor > & diagnostic_catalog()
Definition: ERF_Plotfile2DCatalog.cpp:165
MissingPolicy
Definition: ERF_Plotfile2DCatalog.H:114
const DiagnosticDescriptor * find_dynamic_soil_diagnostic(const std::string &name)
Definition: ERF_Plotfile2DCatalog.cpp:227
const DiagnosticDescriptor * find_diagnostic(const std::string &name)
Definition: ERF_Plotfile2DCatalog.cpp:184
Definition: ERF_Plotfile2DCatalog.H:121
DiagnosticID id
Definition: ERF_Plotfile2DCatalog.H:122
MissingPolicy missing_policy
Definition: ERF_Plotfile2DCatalog.H:127
const char * name
Definition: ERF_Plotfile2DCatalog.H:123
const char * units
Definition: ERF_Plotfile2DCatalog.H:125
DiagnosticCategory category
Definition: ERF_Plotfile2DCatalog.H:126
const char * long_name
Definition: ERF_Plotfile2DCatalog.H:124