validate_limiter_name Subroutine

public subroutine validate_limiter_name(limiter_name)

Validate limiter names. The current bounded implementation maps these limiters to the same local-bounds clamp; the menu is preserved in input so future limiter-specific formulas can be added without changing cases.

Arguments

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

Source Code

   subroutine validate_limiter_name(limiter_name)
      character(len=*), intent(in) :: limiter_name
      character(len=len(limiter_name)) :: limiter

      limiter = trim(lowercase(limiter_name))
      if (len_trim(limiter) == 0) limiter = 'barth_jespersen'

      select case (trim(limiter))
      case ('none', 'minmod', 'vanleer', 'van_leer', 'mc', 'monotonized_central', &
            'superbee', 'barth_jespersen', 'barth-jespersen', 'venkatakrishnan', 'hlpa')
         return
      case default
         call fatal_error('input', 'scalar_limiter must be one of: none, minmod, vanleer, mc, superbee, barth_jespersen, venkatakrishnan, hlpa')
      end select
   end subroutine validate_limiter_name