read_parameters_range Subroutine

private subroutine read_parameters_range(kt_grids_range_config_in)

FIXME : Add documentation

Arguments

Type IntentOptional Attributes Name
type(kt_grids_range_config_type), intent(in), optional :: kt_grids_range_config_in

Contents

Source Code


Source Code

  subroutine read_parameters_range(kt_grids_range_config_in)
    use file_utils, only: error_unit
    use text_options, only: text_option, get_option_value
    implicit none
    type(kt_grids_range_config_type), intent(in), optional :: kt_grids_range_config_in
    integer :: ierr
    type (text_option), dimension(3), parameter :: kyspacingopts = &
         [ text_option('default', kyspacingopt_linear), &
         text_option('linear', kyspacingopt_linear), &
         text_option('exponential', kyspacingopt_exp) ]

    if (parameters_read) return
    parameters_read = .true.

    if (present(kt_grids_range_config_in)) kt_grids_range_config = kt_grids_range_config_in

    call kt_grids_range_config%init(name = 'kt_grids_range_parameters', requires_index = .false.)

    ! Copy out internal values into module level parameters
    associate(self => kt_grids_range_config)
#include "kt_grids_range_copy_out_auto_gen.inc"
    end associate

    ierr = error_unit()
    call get_option_value(kyspacing_option, kyspacingopts, kyspacingopt_switch,&
         ierr, "kyspacing_option in kt_grids_range_parameters",.true.)
  end subroutine read_parameters_range