Scheme-Constants
- DudhiaSWParameters
model
atmospheric_radiation
dudhia_sw
Scheme constants of the Dudhia (1989) shortwave radiation scheme, transcribed from the in-line literals of SUBROUTINE SWPARA in phys/module_ra_sw.F (WRF 4.8). Mounted by the DudhiaSW component as subsystem `par` so that no tuning constant is written inline in the physics. The clear-sky scattering coefficient (namelist swrad_scat, stored by swinit as cssca = swrad_scat * 1e-5 m^2/kg) is a run-time namelist choice and therefore a parameter of the component itself, not of this table. Values are the nominal decimal values of the Fortran source; the real64 kernel build used for the reference tests promotes these default-real literals to binary64 (-fdefault-real-8), so no single-precision rounding note applies here.
- FireBehaviorParameters
model
wildland_fire
fire_behavior
Scheme constants and unit conversions of NCAR's Community Fire Behavior Model (fire_behavior, the WRF-Fire/SFIRE physics line: physics/ros_wrffire_mod.F90, fuel_anderson_mod.F90, fmc_wrffire_mod.F90, level_set_mod.F90, fire_physics_mod.F90, share/constants_mod.F90 and share/fuel_mod.F90), transcribed from the `parameter` declarations and in-line literals of the Fortran, including the fuel-moisture fits and class tables of fmc_wrffire_mod and the single-precision tiny and epsilon. Mounted by the fire_behavior components as subsystem `par` so that no tuning constant is written inline in the physics. The Rothermel (1972) fits are empirical formulae in US customary units (ft, lb, Btu, min); fire_behavior converts the SI fuel inputs to those units, evaluates the fits, and converts the spread rate back, so the conversion factors are scheme constants here (the Fortran literals 0.3048, 2.205, 196.850, 0.00508, 1055 -- note 196.850 ft/min per m/s and 0.00508 m/s per ft/min are each written independently in the source and are not exact reciprocals). The coefficients of the US-unit fits are dimensionless numbers whose implied units are recorded in their descriptions. Values are the nominal decimal values of the source; fire_behavior is a default-real (real32) code, so every test against it uses rel 1e-5 (the tolerance contract for a single-precision reference).
- SfclayRevParameters
model
atmospheric_dynamics
sfclayrev
Scheme constants of WRF's revised MM5 surface-layer scheme (sf_sfclay_physics = 1, `sf_sfclayrev_run` in phys/physics_mmm/sf_sfclayrev.F90, WRF 4.8 / NCAR MMM-physics; Jimenez et al. 2012), transcribed from the module `parameter` declarations and the in-line literals of the kernel so that no tuning constant is written inline in the physics. Mounted by the SfclayRev component as subsystem `par`. Values are the nominal (decimal) values written in the Fortran source. The coefficients of the similarity functions themselves (Cheng-Brutsaert 6.1/2.5 and 5.3/1.1, Kansas 16, free-convection 10/34 and the 0.33 exponent) and the psi lookup-table discretisation (step 0.01, 1000 nodes) are properties of the published functions, not tuning constants, and live with the functions in similarity_functions.esm. NOTE (FORTRAN_BUGS.md N2/N10): the kernel's literals are default-real, so a real64 build runs with their single-precision roundings (e.g. 1/2.5 = 0.4000000059604645, sqrt(3.) and atan(1.) evaluated in real32, the lookup-table nodes float(n)*0.01 rounded to real32); the SfclayRev tests document the resulting O(1e-7) relative mismatch in their tolerances rather than reproducing the rounding here.
- SlabParameters
model
land_surface
slab
Scheme constants of the WRF 5-layer slab (thermal diffusion) land-surface scheme, transcribed from the module parameters and in-line literals of phys/module_sf_slab.F (WRF 4.8, SUBROUTINE SLAB1D). Mounted by the slab component as subsystem `par` so that no tuning constant is written inline in the physics. Values are the nominal (decimal) values of the Fortran source; the WRF build evaluates them in single precision.
- WSM6Parameters
model
atmospheric_dynamics
wsm6
Scheme constants of the WRF single-moment 6-class microphysics scheme (WSM6), transcribed from the `parameter` declarations, the mp_wsm6_init products and the in-line literals of phys/physics_mmm/mp_wsm6.F90 (WRF 4.8, NCAR/MMM-physics CCPP kernel mp_wsm6_run). Mounted by the WSM6 components as subsystem `par` so that no tuning constant is written inline in the physics. Values are the nominal (decimal) values of the Fortran source; the two Gamma-function constants are the values WSM6 itself computes with its `rgmma` routine (a Weierstrass product truncated after 10000 factors), which differ from the exact Gamma function by about 7e-4 (recorded in EqWeFiC FORTRAN_BUGS.md) -- the scheme's effective constants are the rgmma values, so those are what the tests reproduce. NOTE (also in EqWeFiC FORTRAN_BUGS.md): the kernel declares its constants real(kind_phys) but initialises them from default-real literals, so a real64 build runs with single-precision roundings (bvtr = 0.800000011920929, avtr = 841.9000244); the WSM6 tests document the resulting O(1e-7) relative mismatch in their tolerances rather than reproducing the rounding here. EqWeFiC, cited here for FORTRAN_BUGS.md and couplings/, is https://github.com/EarthSciML/EqWeFiC, where these components were developed and are coupled into a WRF column.
- YSUParameters
model
atmospheric_dynamics
ysu
Scheme constants of the YSU (Yonsei University) nonlocal boundary-layer scheme, transcribed from the `parameter` declarations and in-line literals of phys/physics_mmm/bl_ysu.F90 (WRF 4.8, NCAR/MMM-physics CCPP kernel `bl_ysu_run`). Mounted by the YSU component as subsystem `par` so that no tuning constant is written inline in the physics. Values are the nominal (decimal) values written in the Fortran source. NOTE (recorded in FORTRAN_BUGS.md of EarthSciML/EqWeFiC): the kernel declares these as real(kind_phys) but initialises them from default-real literals, so a real64 build actually runs with the single-precision roundings (e.g. h1 = 0.33333335 -> 0.3333333432674408, not 1/3; afac = 6.800000190734863); the YSU tests document the resulting O(1e-7) relative mismatch in their tolerances rather than reproducing the rounding here.