&ocean_wetdry_nml: dynamic wetting/drying for the BT substep.
Design + validation numbers: docs/ocean_wetdry_plan.md.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(config_t), | intent(in), | target | :: | cfg | ||
| type(nml_schema_t), | intent(inout) | :: | schema |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(nml_group_t), | private | :: | g | ||||
| logical, | private, | pointer | :: | pl | |||
| real(kind=wp), | private, | pointer | :: | pr |
subroutine register_ocean_wetdry(cfg, schema) !! `&ocean_wetdry_nml`: dynamic wetting/drying for the BT substep. !! Design + validation numbers: docs/ocean_wetdry_plan.md. type(config_t), target, intent(in) :: cfg type(nml_schema_t), intent(inout) :: schema type(nml_group_t) :: g logical, pointer :: pl real(wp), pointer :: pr g%name = "ocean_wetdry" g%doc = "Dynamic wetting/drying for the split-explicit barotropic substep." pl => cfg%ocean%wetdry%enable call g%add(nml_logical("enable", pl, & "Dynamic wet/dry: upwind BT face thickness + positive-definite "// & "outflow limiter + bed-blocking momentum gate")) pr => cfg%ocean%wetdry%dry_depth call g%add(nml_real("dry_depth", pr, & "Total-depth dry threshold", units="m", min=0.0_wp)) pr => cfg%ocean%wetdry%rewet_depth call g%add(nml_real("rewet_depth", pr, & "Hysteresis re-wet threshold (must exceed dry_depth)", & units="m", min=0.0_wp)) pr => cfg%ocean%wetdry%land_margin call g%add(nml_real("land_margin", pr, & "Static-land headroom above rest MSL (intertidal cutoff)", & units="m", min=0.0_wp)) call schema%add_group(g) end subroutine register_ocean_wetdry