Return .true. if the given scheme (class name) is available in the FOODIE library.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | scheme | Selected integrator given. |
Availability result.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed arrows point from an interface to procedures which implement that interface. This could include the module procedures in a generic interface or the implementation in a submodule of an interface in a parent module.
pure function is_scheme_available(scheme)
!< Return .true. if the given scheme (class name) is available in the FOODIE library.
character(*), intent(in) :: scheme !< Selected integrator given.
logical :: is_scheme_available !< Availability result.
character(99), allocatable :: integrator_schemes(:) !< Name of FOODIE integrator schemes.
integer(I_P) :: i !< Counter.
integrator_schemes = foodie_integrator_schemes()
is_scheme_available = .false.
do i=1, size(integrator_schemes, dim=1)
is_scheme_available = (trim(adjustl(scheme))==trim(adjustl(integrator_schemes(i))))
if (is_scheme_available) return
enddo
endfunction is_scheme_available