tem_init_restart_alloc Subroutine

public subroutine tem_init_restart_alloc(me, comm, rank, comm_size, solver, nDofs_write)

This subroutine initializes the restart in case of reading initial conditions from restart file. The dependent scheme id is passed as input.

Arguments

Type IntentOptional Attributes Name
type(tem_restart_type), intent(inout) :: me
integer, intent(in) :: comm
integer, intent(in) :: rank
integer, intent(in) :: comm_size
type(tem_solveHead_type), intent(in), optional :: solver
integer, intent(in), optional :: nDofs_write

Calls

proc~~tem_init_restart_alloc~~CallsGraph proc~tem_init_restart_alloc tem_init_restart_alloc proc~tem_solvertag tem_solverTag proc~tem_init_restart_alloc->proc~tem_solvertag

Called by

proc~~tem_init_restart_alloc~~CalledByGraph proc~tem_init_restart_alloc tem_init_restart_alloc proc~tem_init_restart tem_init_restart proc~tem_init_restart->proc~tem_init_restart_alloc proc~hvs_output_init hvs_output_init proc~hvs_output_init->proc~tem_init_restart proc~tem_init_tracker tem_init_tracker proc~tem_init_tracker->proc~hvs_output_init

Source Code

  subroutine tem_init_restart_alloc( me, comm, rank, comm_size, solver, nDofs_write )
    ! -------------------------------------------------------------------- !
    type(tem_restart_type), intent(inout) :: me
    integer, intent(in) :: comm, rank, comm_size
    type(tem_solveHead_type), optional, intent(in) :: solver
    integer, optional, intent(in) :: nDofs_write

    ! Inherit communicator information from the tree (or subTree)  we are to
    ! act on in this restart object:
    me%comm%comm      = comm
    me%comm%rank      = rank
    me%comm%comm_size = comm_size
    me%comm%root      = 0

    ! if provided reset the simulation name and solver tag
    if ( present(solver) ) then
      me%header%simName          = trim(solver%simName)
      me%header%solverTag        = tem_solverTag(solver)
      me%header%solverConfigFile = solver%configFile
    end if

    if ( present(nDofs_write) ) then
      me%write_file%nDofs = nDofs_write
    else
      me%write_file%nDofs = 1
    end if

    ! Set the prefix for the header file.
    me%header%headerPrefix = trim(me%controller%writePrefix) &
      &                      // trim(me%header%simName)
    ! Set the prefix for all binary files.
    me%header%binPrefix = trim(me%controller%writePrefix) &
      &                      // trim(me%header%simName)


    ! Reset all the values of the chunk information
    me%nChunkElems = 0
    me%write_file%chunkSize  = 0
    me%read_file%chunkSize   = 0
    me%write_file%nChunks    = 0
    me%read_file%nChunks     = 0
    me%write_file%maxnChunks = 0
    me%read_file%maxnChunks  = 0

    end subroutine tem_init_restart_alloc