GlacierParameterUpdate Subroutine

private subroutine GlacierParameterUpdate(time)

update parameter map that change in time

Arguments

Type IntentOptional Attributes Name
type(DateTime), intent(in) :: time

Variables

Type Visibility Attributes Name Initial
character(len=300), public :: filename
character(len=300), public :: varname

Source Code

SUBROUTINE GlacierParameterUpdate   & 
  !
  (time)       

IMPLICIT NONE

!Arguments with intent(in):
TYPE (DateTime), INTENT (IN) :: time

!local declarations:
CHARACTER (LEN = 300) :: filename
CHARACTER (LEN = 300) :: varname

!------------------------------end of declarations-----------------------------
  
  
  
!melt coefficient
IF (  time == meltCoefficientIce % next_time ) THEN
   !destroy current grid
   filename = meltCoefficientIce % file_name
   varname = meltCoefficientIce % var_name
   CALL GridDestroy (meltCoefficientIce)
   !read new grid in netcdf file
   CALL NewGrid (meltCoefficientIce, TRIM(filename), NET_CDF, &
                  variable = TRIM(varname), time = time)
END IF

!melt temperature
IF (  time == meltTemperature % next_time ) THEN
   !destroy current grid
   filename = meltTemperature % file_name
   varname = meltTemperature % var_name
   CALL GridDestroy (meltTemperature)
   !read new grid in netcdf file
   CALL NewGrid (meltTemperature, TRIM(filename), NET_CDF, &
                  variable = TRIM(varname), time = time)
END IF

!hydraulic conductivity
IF (  time == iceConductivity % next_time ) THEN
   !destroy current grid
   filename = iceConductivity % file_name
   varname = iceConductivity % var_name
   CALL GridDestroy (iceConductivity)
   !read new grid in netcdf file
   CALL NewGrid (iceConductivity, TRIM(filename), NET_CDF, &
                  variable = TRIM(varname), time = time)
END IF
  
RETURN
END SUBROUTINE GlacierParameterUpdate