Translate a namelist string into an LMIX_* code. Returns
LMIX_INVALID on an unrecognised value (fail loud at configure);
only “none”/”off”/”” map to LMIX_NONE.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | name |
pure function parse_lateral_closure(name) result(code) !! Translate a namelist string into an `LMIX_*` code. Returns !! `LMIX_INVALID` on an unrecognised value (fail loud at configure); !! only "none"/"off"/"" map to `LMIX_NONE`. character(len=*), intent(in) :: name integer :: code select case (trim(adjustl(name))) case ("none", "NONE", "off", "OFF", "") code = LMIX_NONE case ("leith", "LEITH") code = LMIX_LEITH case ("smag", "SMAG", "smagorinsky", "SMAGORINSKY") code = LMIX_SMAGORINSKY case ("biharmonic", "BIHARMONIC") code = LMIX_BIHARMONIC case ("leith_biharm", "LEITH_BIHARM", "leith_biharmonic") code = LMIX_LEITH_BIHARM case default code = LMIX_INVALID end select end function parse_lateral_closure