Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(type_input) | :: | self | ||||
type(json_file), | intent(inout) | :: | json |
subroutine read_parameters_solver_settings(self, json) implicit none class(type_input) :: self type(json_file), intent(inout) :: json logical :: found character(:), allocatable :: key key = join([solver_settings, bdf_order]) call json%get(key, self%basic%solver_settings%bdf_order, found) call json%print_error_message(output_unit) if (.not. found) then call json%destroy() call error_message(904, c_opt=key) else if (.not. value_in_range(self%basic%solver_settings%bdf_order, 1, 6)) then call json%destroy() call error_message(905, c_opt=key) end if key = join([solver_settings, reordering]) call json%get(key, self%basic%solver_settings%reordering, found) call json%print_error_message(output_unit) if (.not. found) then call global_logger%log_warning(message="Default reordering is set to 'none'.") self%basic%solver_settings%reordering = "none" else if (.not. any(valid_reordering_types(:) == self%basic%solver_settings%reordering)) then call json%destroy() call error_message(905, c_opt=key) end if key = join([solver_settings, coloring]) call json%get(key, self%basic%solver_settings%coloring, found) call json%print_error_message(output_unit) if (.not. found) then call global_logger%log_warning(message="Default coloring is set to 'none'.") self%basic%solver_settings%coloring = "none" else if (.not. any(coloring_types(:) == self%basic%solver_settings%coloring)) then call json%destroy() call error_message(905, c_opt=key) end if call read_parameters_solver_settings_nonlinear(self, json) call read_parameters_solver_settings_linear(self, json) call read_parameters_solver_parallel_settings(self, json) end subroutine read_parameters_solver_settings