diff --git a/SHiELD/atmos_model.F90 b/SHiELD/atmos_model.F90 index 03c35e1..489d73c 100644 --- a/SHiELD/atmos_model.F90 +++ b/SHiELD/atmos_model.F90 @@ -152,7 +152,7 @@ module atmos_model_mod logical :: dycore_only = .false. logical :: debug = .false. logical :: sync = .false. -logical :: first_time_step = .true. +logical :: first_time_step = .false. logical :: fprint = .true. logical :: ignore_rst_cksum = .false. ! enforce (.false.) or override (.true.) data integrity restart checksums real, dimension(4096) :: fdiag = 0. ! xic: TODO: this is hard coded, space can run out in some cases. Should make it allocatable. @@ -634,7 +634,7 @@ subroutine update_atmos_model_state (Atmos) if (mpp_pe() == mpp_root_pe()) write(6,*) ' gfs diags time since last bucket empty: ',time_int/3600.,'hrs' call atmosphere_nggps_diag(Atmos%Time) endif - if (ANY(nint(fdiag(:)*3600.0) == seconds) .or. (fdiag_fix .and. mod(seconds, nint(fdiag(1)*3600.0)) .eq. 0) .or. first_time_step) then + if (ANY(nint(fdiag(:)*3600.0) == seconds) .or. (fdiag_fix .and. mod(seconds, nint(fdiag(1)*3600.0)) .eq. 0) .or. (IPD_Control%kdt == 1 .and. first_time_step)) then if(Atmos%iau_offset > zero) then if( time_int - Atmos%iau_offset*3600. > zero ) then time_int = time_int - Atmos%iau_offset*3600. diff --git a/solo/atmos_model.F90 b/solo/atmos_model.F90 index 02d8161..c4f47ad 100644 --- a/solo/atmos_model.F90 +++ b/solo/atmos_model.F90 @@ -66,6 +66,7 @@ program atmos_model character(len=17) :: calendar = 'no_calendar ' !< The calendar type used by the current integration. Valid values are !! consistent with the time_manager module: 'gregorian', 'julian', !! 'noleap', or 'thirty_day'. All values must be lower case. + !! In solo_core the default is no_calendar integer, dimension(4) :: current_time = (/ 0, 0, 0, 0/) !< The current time integration starts with (DD,HH,MM,SS) integer :: years=0 !< Number of years the current integration will be run integer :: months=0 !< Number of months the current integration will be run