ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
ERF_SLM_DefaultParams.H
Go to the documentation of this file.
1 #ifndef ERF_SLM_DEFAULT_PARAMS_H
2 #define ERF_SLM_DEFAULT_PARAMS_H
3 
4 #include <array>
5 
6 #include <AMReX_REAL.H>
7 
8 namespace SLMDefaultParams {
9 
10 constexpr int num_veg_params = 20;
11 
12 // Values copied from the MODIS/STAS sections of NoahmpTable.TBL.
13 inline constexpr std::array<amrex::Real, num_veg_params> cwpvt = {
14  0.18, 0.67, 0.18, 0.67, 0.29, 1.0, 2.0, 1.3, 1.0, 5.0,
15  1.17, 1.67, 1.67, 1.67, 0.18, 0.18, 0.18, 0.67, 1.0, 0.18};
16 inline constexpr std::array<amrex::Real, num_veg_params> den = {
17  0.28, 0.02, 0.28, 0.10, 0.10, 10.0, 10.0, 10.0, 0.02, 100.0,
18  5.05, 25.0, 0.01, 25.0, 0.0, 0.01, 0.01, 1.0, 1.0, 1.0};
19 inline constexpr std::array<amrex::Real, num_veg_params> hvb = {
20  8.50, 8.00, 7.00, 11.5, 10.0, 0.10, 0.10, 0.10, 0.10, 0.05,
21  0.10, 0.10, 1.00, 0.10, 0.0, 0.0, 0.0, 0.30, 0.20, 0.10};
22 inline constexpr std::array<amrex::Real, num_veg_params> rc = {
23  1.20, 3.60, 1.20, 1.40, 1.40, 0.12, 0.12, 0.12, 3.00, 0.03,
24  0.75, 0.08, 1.00, 0.08, 0.0, 0.01, 0.01, 0.30, 0.30, 0.30};
25 inline constexpr std::array<amrex::Real, num_veg_params> rhol_vis = {
26  0.07, 0.10, 0.07, 0.10, 0.10, 0.07, 0.07, 0.07, 0.10, 0.11,
27  0.105, 0.11, 0.0, 0.11, 0.0, 0.0, 0.0, 0.10, 0.10, 0.10};
28 inline constexpr std::array<amrex::Real, num_veg_params> rhol_nir = {
29  0.35, 0.45, 0.35, 0.45, 0.45, 0.35, 0.35, 0.35, 0.45, 0.58,
30  0.515, 0.58, 0.0, 0.58, 0.0, 0.0, 0.0, 0.45, 0.45, 0.45};
31 inline constexpr std::array<amrex::Real, num_veg_params> rhos_vis = {
32  0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.16, 0.36,
33  0.26, 0.36, 0.0, 0.36, 0.0, 0.0, 0.0, 0.16, 0.16, 0.16};
34 inline constexpr std::array<amrex::Real, num_veg_params> rhos_nir = {
35  0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.39, 0.58,
36  0.485, 0.58, 0.0, 0.58, 0.0, 0.0, 0.0, 0.39, 0.39, 0.39};
37 inline constexpr std::array<amrex::Real, num_veg_params> taul_vis = {
38  0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.07,
39  0.06, 0.07, 0.0, 0.07, 0.0, 0.0, 0.0, 0.05, 0.05, 0.05};
40 inline constexpr std::array<amrex::Real, num_veg_params> taul_nir = {
41  0.10, 0.25, 0.10, 0.25, 0.25, 0.10, 0.10, 0.10, 0.25, 0.25,
42  0.25, 0.25, 0.0, 0.25, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25};
43 inline constexpr std::array<amrex::Real, num_veg_params> taus_vis = {
44  0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.220,
45  0.1105, 0.220, 0.0, 0.220, 0.0, 0.0, 0.0, 0.001, 0.001, 0.001};
46 inline constexpr std::array<amrex::Real, num_veg_params> taus_nir = {
47  0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.001, 0.380,
48  0.1905, 0.380, 0.0, 0.380, 0.0, 0.0, 0.0, 0.001, 0.001, 0.001};
49 
50 inline constexpr std::array<amrex::Real, 8> albsat_vis =
51  {0.15, 0.11, 0.10, 0.09, 0.08, 0.07, 0.06, 0.05};
52 inline constexpr std::array<amrex::Real, 8> albsat_nir =
53  {0.30, 0.22, 0.20, 0.18, 0.16, 0.14, 0.12, 0.10};
54 inline constexpr std::array<amrex::Real, 8> albdry_vis =
55  {0.27, 0.22, 0.20, 0.18, 0.16, 0.14, 0.12, 0.10};
56 inline constexpr std::array<amrex::Real, 8> albdry_nir =
57  {0.54, 0.44, 0.40, 0.36, 0.32, 0.28, 0.24, 0.20};
58 inline constexpr std::array<amrex::Real, 2> alblak = {0.60, 0.40};
59 inline constexpr std::array<amrex::Real, 2> omegas = {0.8, 0.4};
60 
61 } // namespace SLMDefaultParams
62 
63 #endif
Definition: ERF_SLM_DefaultParams.H:8
constexpr std::array< amrex::Real, num_veg_params > rhos_nir
Definition: ERF_SLM_DefaultParams.H:34
constexpr std::array< amrex::Real, num_veg_params > taul_vis
Definition: ERF_SLM_DefaultParams.H:37
constexpr std::array< amrex::Real, num_veg_params > taus_vis
Definition: ERF_SLM_DefaultParams.H:43
constexpr std::array< amrex::Real, 8 > albdry_vis
Definition: ERF_SLM_DefaultParams.H:54
constexpr std::array< amrex::Real, num_veg_params > rhos_vis
Definition: ERF_SLM_DefaultParams.H:31
constexpr std::array< amrex::Real, num_veg_params > taul_nir
Definition: ERF_SLM_DefaultParams.H:40
constexpr std::array< amrex::Real, 2 > omegas
Definition: ERF_SLM_DefaultParams.H:59
constexpr std::array< amrex::Real, 8 > albsat_nir
Definition: ERF_SLM_DefaultParams.H:52
constexpr std::array< amrex::Real, num_veg_params > den
Definition: ERF_SLM_DefaultParams.H:16
constexpr std::array< amrex::Real, num_veg_params > rhol_vis
Definition: ERF_SLM_DefaultParams.H:25
constexpr std::array< amrex::Real, num_veg_params > rc
Definition: ERF_SLM_DefaultParams.H:22
constexpr int num_veg_params
Definition: ERF_SLM_DefaultParams.H:10
constexpr std::array< amrex::Real, num_veg_params > hvb
Definition: ERF_SLM_DefaultParams.H:19
constexpr std::array< amrex::Real, num_veg_params > cwpvt
Definition: ERF_SLM_DefaultParams.H:13
constexpr std::array< amrex::Real, 8 > albsat_vis
Definition: ERF_SLM_DefaultParams.H:50
constexpr std::array< amrex::Real, 8 > albdry_nir
Definition: ERF_SLM_DefaultParams.H:56
constexpr std::array< amrex::Real, num_veg_params > rhol_nir
Definition: ERF_SLM_DefaultParams.H:28
constexpr std::array< amrex::Real, 2 > alblak
Definition: ERF_SLM_DefaultParams.H:58
constexpr std::array< amrex::Real, num_veg_params > taus_nir
Definition: ERF_SLM_DefaultParams.H:46