load_from_file Subroutine

private subroutine load_from_file(self, fini, go_on_fail)

Load from file.

Arguments

Type IntentOptional AttributesName
class(solver_object), intent(inout) :: self

Solver object.

type(file_ini), intent(in) :: fini

Simulation parameters ini file handler.

logical, intent(in), optional :: go_on_fail

Go on if load fails.


Source Code


Source Code

   subroutine load_from_file(self, fini, go_on_fail)
   !< Load from file.
   class(solver_object), intent(inout)        :: self        !< Solver object.
   type(file_ini),       intent(in)           :: fini        !< Simulation parameters ini file handler.
   logical,              intent(in), optional :: go_on_fail  !< Go on if load fails.
   logical                                    :: go_on_fail_ !< Go on if load fails, local variable.
   character(999)                             :: buffer      !< Buffer string.

   go_on_fail_ = .true. ; if (present(go_on_fail)) go_on_fail_ = go_on_fail

   call fini%get(section_name=INI_SECTION_NAME, &
                 option_name='time_integrator', &
                 val=buffer,               &
                 error=self%error%status)
   if (.not.go_on_fail_) &
      call self%error%check(message='failed to load ['//INI_SECTION_NAME//'].(time_integrator)', is_severe=.not.go_on_fail_)
   if (self%error%status <= 0) self%time_integrator = trim(adjustl(buffer))

   call fini%get(section_name=INI_SECTION_NAME,     &
                 option_name='convective_operator', &
                 val=buffer,                        &
                 error=self%error%status)
   if (.not.go_on_fail_) &
      call self%error%check(message='failed to load ['//INI_SECTION_NAME//'].(convective_operator)', is_severe=.not.go_on_fail_)
   if (self%error%status <= 0) self%convective_operator = trim(adjustl(buffer))

   call fini%get(section_name=INI_SECTION_NAME,    &
                 option_name='diffusive_operator', &
                 val=buffer,                       &
                 error=self%error%status)
   if (.not.go_on_fail_) &
      call self%error%check(message='failed to load ['//INI_SECTION_NAME//'].(diffusive_operator)', is_severe=.not.go_on_fail_)
   if (self%error%status <= 0) self%diffusive_operator = trim(adjustl(buffer))

   call fini%get(section_name=INI_SECTION_NAME,  &
                 option_name='turbulence_model', &
                 val=buffer,                     &
                 error=self%error%status)
   if (.not.go_on_fail_) &
      call self%error%check(message='failed to load ['//INI_SECTION_NAME//'].(turbulence_model)', is_severe=.not.go_on_fail_)
   if (self%error%status <= 0) self%turbulence_model = trim(adjustl(buffer))

   call fini%get(section_name=INI_SECTION_NAME,      &
                 option_name='artificial_viscosity', &
                 val=self%artificial_viscosity,      &
                 error=self%error%status)
   if (.not.go_on_fail_) &
      call self%error%check(message='failed to load ['//INI_SECTION_NAME//'].(artificial_viscosity)', is_severe=.not.go_on_fail_)

   call fini%get(section_name=INI_SECTION_NAME,     &
                 option_name='residuals_tolerance', &
                 val=self%residuals_tolerance,      &
                 error=self%error%status)
   if (.not.go_on_fail_) &
      call self%error%check(message='failed to load ['//INI_SECTION_NAME//'].(residuals_tolerance)', is_severe=.not.go_on_fail_)

   call fini%get(section_name=INI_SECTION_NAME,        &
                 option_name='pseudo_compressibility', &
                 val=self%pseudo_compressibility,      &
                 error=self%error%status)
   if (.not.go_on_fail_) &
      call self%error%check(message='failed to load ['//INI_SECTION_NAME//'].(pseudo_compressibility)', is_severe=.not.go_on_fail_)

   call fini%get(section_name=INI_SECTION_NAME, &
                 option_name='chimera_forcing', &
                 val=self%chimera_forcing,      &
                 error=self%error%status)
   if (.not.go_on_fail_) &
      call self%error%check(message='failed to load ['//INI_SECTION_NAME//'].(chimera_forcing)', is_severe=.not.go_on_fail_)
   endsubroutine load_from_file


adim_assign_adim allocate_blocks block_assign_block block_d_assign_block_d cell_assign_cell cells_number cells_number check cli_parse cli_parse cli_parse close compute_extents compute_faces_metrics compute_metrics compute_metrics compute_reference_values compute_space_operator compute_volumes correct_metrics cp create_linspace description description description description description description description description description destroy destroy destroy destroy destroy destroy destroy destroy destroy destroy destroy destroy destroy destroy destroy err_assign_err face_assign_face file_assign_file free_assign_free grid_d_assign_grid_d initialize initialize initialize initialize initialize initialize initialize initialize initialize initialize initialize initialize initialize initialize initialize initialize_unix initialize_windows integrate interpolate_at_nodes iolength iolength iopos_block_nodes is_the_end load_file_grid load_file_name_from_file load_file_parameters load_from_file load_from_file load_from_file load_from_file load_from_file load_from_file load_from_file load_grid_dimensions_from_file load_input_files load_nodes_from_file load_nodes_from_file mkdir node_assign_node node_to_center nodes_number nodes_number nullify_normals open os_assign_os parse_command_line_interface progress rm save_file_grid save_file_grid save_file_grid_tec save_file_grid_vtk save_file_name_into_file save_file_parameters save_grid_dimensions_into_file save_into_file save_into_file save_into_file save_into_file save_into_file save_into_file save_into_file save_nodes_into_file save_nodes_into_file set_command_line_interface set_stop solver_assign_solver time_assign_time update