parse_lateral_closure Function

public 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.

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: name

Return Value integer


Called by

proc~~parse_lateral_closure~~CalledByGraph proc~parse_lateral_closure parse_lateral_closure proc~configure_ocean_lateral configure_ocean_lateral proc~configure_ocean_lateral->proc~parse_lateral_closure proc~validate_config validate_config proc~validate_config->proc~parse_lateral_closure proc~build_pending_handle build_pending_handle proc~build_pending_handle->proc~validate_config proc~engine_setup engine_setup proc~engine_setup->proc~configure_ocean_lateral proc~complete_ocean_create complete_ocean_create proc~complete_ocean_create->proc~engine_setup proc~driver_run_ocean driver_run_ocean proc~driver_run_ocean->proc~engine_setup proc~driver_validate driver_validate proc~driver_validate->proc~engine_setup proc~rdb_ocean_create_from_string rdb_ocean_create_from_string proc~rdb_ocean_create_from_string->proc~build_pending_handle proc~rdb_ocean_create_from_string->proc~complete_ocean_create proc~rdb_ocean_create_pending rdb_ocean_create_pending proc~rdb_ocean_create_pending->proc~build_pending_handle proc~driver_run driver_run proc~driver_run->proc~driver_run_ocean proc~rdb_ocean_create_finalize rdb_ocean_create_finalize proc~rdb_ocean_create_finalize->proc~complete_ocean_create

Source Code

   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