Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions columnphysics/icepack_algae.F90
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,9 @@ subroutine zbio (dt, &

character(len=*),parameter :: subname='(zbio)'

upNOn(:,:) = c0
upNHn(:,:) = c0
grow_alg(:,:) = c0
zbgc_snown(:) = c0
zbgc_atmn (:) = c0
flux_bion (:) = c0
Expand Down
3 changes: 2 additions & 1 deletion columnphysics/icepack_therm_vertical.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1623,14 +1623,15 @@ subroutine thickness_changes (dt, yday, &
! Convert snow to ice if snow lies below freeboard.
!-------------------------------------------------------------------

if (ktherm /= 2) &
if (ktherm /= 2) then
call freeboard (snoice, &
hin, hsn, &
zqin, zqsn, &
dzi, dzs, &
dsnow, &
massice, massliq)
if (icepack_warnings_aborted(subname)) return
endif

!-------------------------------------------------------------------
! Update snow mass tracers for uneven layers
Expand Down
2 changes: 2 additions & 0 deletions columnphysics/icepack_zbgc.F90
Original file line number Diff line number Diff line change
Expand Up @@ -770,6 +770,8 @@ subroutine icepack_biogeochemistry(dt, &
kavg = c0
bphi_o = c0
sloss = c0
upNO = c0
upNH = c0

!-----------------------------------------------------------------
! brine dynamics
Expand Down
7 changes: 4 additions & 3 deletions configuration/driver/icedrv_InitMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,10 @@ subroutine icedrv_initialize
endif
call init_fsd

call icepack_query_parameters(skl_bgc_out=skl_bgc)
call icepack_query_parameters(z_tracers_out=z_tracers)
if (skl_bgc .or. z_tracers) call init_forcing_bgc !cn

call calendar(time) ! determine the initial date

call init_state ! initialize the ice state
Expand All @@ -130,8 +134,6 @@ subroutine icedrv_initialize
!--------------------------------------------------------------------
! coupler communication or forcing data initialization
!--------------------------------------------------------------------
call icepack_query_parameters(skl_bgc_out=skl_bgc)
call icepack_query_parameters(z_tracers_out=z_tracers)
call icepack_query_parameters(wave_spec_out=wave_spec)
call icepack_query_tracer_flags(tr_snow_out=tr_snow)
call icepack_query_tracer_flags(tr_aero_out=tr_aero)
Expand All @@ -142,7 +144,6 @@ subroutine icedrv_initialize
file=__FILE__,line= __LINE__)

call init_forcing ! initialize forcing (standalone)
if (skl_bgc .or. z_tracers) call init_forcing_bgc !cn
if (tr_fsd .and. wave_spec) call get_wave_spec ! wave spectrum in ice
if (precalc_forc) then
call get_forcing(istep) ! precalculated arrays are indexed by istep
Expand Down
2 changes: 2 additions & 0 deletions configuration/driver/icedrv_calendar.F90
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,8 @@ subroutine init_calendar
istep = 0 ! local timestep number
time0=istep0*dt ! start time
time=istep0*dt ! s
time_forc=c0 ! forcing time, not used anymore,
! maintained because it's written to the restart file
yday=c0 ! absolute day number
mday=0 ! day of the month
month=0 ! month
Expand Down
43 changes: 25 additions & 18 deletions configuration/driver/icedrv_flux.F90
Original file line number Diff line number Diff line change
Expand Up @@ -595,6 +595,8 @@ subroutine init_coupler_flux
wind (:) = sqrt(uatm(:)**2 + vatm(:)**2) ! wind speed, (m/s)
Cdn_atm(:) = (vonkar/log(zref/iceruf)) &
* (vonkar/log(zref/iceruf)) ! atmo drag for RASM
rdg_conv(:) = c0
rdg_shear(:) = c0

end subroutine init_coupler_flux

Expand Down Expand Up @@ -722,33 +724,38 @@ subroutine init_history_therm
dpnd_freebd (:) = c0
dpnd_initial(:) = c0
dpnd_dlid (:) = c0
dpnd_flushn (:,:) = c0
dpnd_exponn (:,:) = c0
dpnd_freebdn (:,:) = c0
dpnd_initialn(:,:) = c0
dpnd_dlidn (:,:) = c0
dpnd_melt (:) = c0
dpnd_ridge (:) = c0
frz_onset (:) = c0
mlt_onset (:) = c0

! drag coefficients are computed prior to the atmo_boundary call,
! during the thermodynamics section
Cdn_ocn(:) = dragio
Cdn_atm(:) = (vonkar/log(zref/iceruf)) &
* (vonkar/log(zref/iceruf)) ! atmo drag for RASM

if (formdrag) then
Cdn_atm_rdg (:) = c0
Cdn_atm_ratio(:)= c0
Cdn_atm_floe(:) = c0
Cdn_atm_pond(:) = c0
Cdn_atm_skin(:) = c0
Cdn_ocn_skin(:) = c0
Cdn_ocn_keel(:) = c0
Cdn_ocn_floe(:) = c0
hfreebd (:) = c0
hdraft (:) = c0
hridge (:) = c0
distrdg (:) = c0
hkeel (:) = c0
dkeel (:) = c0
lfloe (:) = c0
dfloe (:) = c0
endif
Cdn_atm_rdg (:) = c0
Cdn_atm_ratio(:)= c0
Cdn_atm_floe(:) = c0
Cdn_atm_pond(:) = c0
Cdn_atm_skin(:) = c0
Cdn_ocn_skin(:) = c0
Cdn_ocn_keel(:) = c0
Cdn_ocn_floe(:) = c0
hfreebd (:) = c0
hdraft (:) = c0
hridge (:) = c0
distrdg (:) = c0
hkeel (:) = c0
dkeel (:) = c0
lfloe (:) = c0
dfloe (:) = c0

end subroutine init_history_therm

Expand Down
13 changes: 13 additions & 0 deletions configuration/driver/icedrv_init.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1158,6 +1158,8 @@ subroutine init_state
use icedrv_state, only: trcr_depend, aicen, trcrn, vicen, vsnon
use icedrv_state, only: aice0, aice, vice, vsno, trcr, aice_init
use icedrv_state, only: n_trcr_strata, nt_strata, trcr_base
use icedrv_state, only: uvel,vvel,divu,shear,strength
use icedrv_arrays_column, only: dhsn, ffracn

integer (kind=int_kind) :: &
i , & ! horizontal indes
Expand Down Expand Up @@ -1270,6 +1272,9 @@ subroutine init_state

do it = 1, ntrcr
! mask for base quantity on which tracers are carried
trcr_base(it,1) = c0
trcr_base(it,2) = c0
trcr_base(it,3) = c0
if (trcr_depend(it) == 0) then ! area
trcr_base(it,1) = c1
elseif (trcr_depend(it) == 1) then ! ice volume
Expand Down Expand Up @@ -1317,6 +1322,14 @@ subroutine init_state
aicen (:,:), trcrn(:,:,:), &
vicen (:,:), vsnon(:,:))

uvel(:) = c0
vvel(:) = c0
divu(:) = c0
shear(:) = c0
strength(:) = c0
dhsn(:,:) = c0
ffracn(:,:) = c0

!-----------------------------------------------------------------
! compute aggregate ice state and open water area
!-----------------------------------------------------------------
Expand Down
8 changes: 8 additions & 0 deletions configuration/driver/icedrv_init_column.F90
Original file line number Diff line number Diff line change
Expand Up @@ -199,6 +199,11 @@ subroutine init_shortwave
alidrn(i,n) = c0
alvdfn(i,n) = c0
alidfn(i,n) = c0
albicen(i,n) = c0
albsnon(i,n) = c0
albpndn(i,n) = c0
snowfracn(i,n) = c0
apeffn(i,n) = c0
fswsfcn(i,n) = c0
fswintn(i,n) = c0
fswthrun(i,n) = c0
Expand Down Expand Up @@ -366,6 +371,7 @@ subroutine init_bgc()
use icedrv_arrays_column, only: zfswin, trcrn_sw
use icedrv_arrays_column, only: ocean_bio_all, ice_bio_net, snow_bio_net
use icedrv_arrays_column, only: bphi, iDi, bTiz, iki
use icedrv_arrays_column, only: Zoo
use icedrv_calendar, only: istep1
use icedrv_system, only: icedrv_system_abort
use icedrv_flux, only: sss, nit, amm, sil, dmsp, dms, algalN, &
Expand Down Expand Up @@ -426,6 +432,8 @@ subroutine init_bgc()
! biogeochemistry initialization
!-----------------------------------------------------------------

Zoo(:,:,:) = c0

!-----------------------------------------------------------------
! Initial Ocean Values if not coupled to the ocean bgc
!-----------------------------------------------------------------
Expand Down
3 changes: 2 additions & 1 deletion configuration/scripts/machines/Macros.derecho_intel
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ FFLAGS := -fp-model precise -convert big_endian -assume byterecl -ftz -trace
FFLAGS_NOOPT:= -O0

ifeq ($(ICE_BLDDEBUG), true)
FFLAGS += -O0 -g -check uninit -check bounds -check pointers -fpe0 -check noarg_temp_created -link_mpi=dbg
# FFLAGS += -O0 -g -check uninit -check bounds -check pointers -fpe0 -check noarg_temp_created -link_mpi=dbg
FFLAGS += -O0 -check all -check noarg_temp_created -warn -warn noerrors -fp-stack-check -fstack-protector-all -fpe0 -debug -ftrapuv -init=snan,arrays -link_mpi=dbg
# FFLAGS += -O0 -g -check all -fpe0 -ftrapuv -fp-model except -check noarg_temp_created -link_mpi=dbg -stand f08
# FFLAGS += -O0 -g -check all -fpe0 -ftrapuv -fp-model except -check noarg_temp_created -init=snan,arrays -link_mpi=dbg
else
Expand Down
3 changes: 2 additions & 1 deletion configuration/scripts/machines/Macros.derecho_inteloneapi
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ FFLAGS_NOOPT:= -O0

ifeq ($(ICE_BLDDEBUG), true)
# -check uninit is needed on the ld step but it still throws errors in 2023.* and 2024.0.*, likely compiler bug
FFLAGS += -O0 -g -check bounds -check pointers -fpe0 -check noarg_temp_created -link_mpi=dbg
# FFLAGS += -O0 -g -check bounds -check pointers -fpe0 -check noarg_temp_created -link_mpi=dbg
FFLAGS += -O0 -check all -check noarg_temp_created -warn -warn noerrors -fp-stack-check -fstack-protector-all -fpe0 -debug -ftrapuv -init=snan,arrays -link_mpi=dbg
# FFLAGS += -O0 -g -check all -fpe0 -ftrapuv -fp-model except -check noarg_temp_created -link_mpi=dbg -stand f08
# FFLAGS += -O0 -g -check all -fpe0 -ftrapuv -fp-model except -check noarg_temp_created -init=snan,arrays -link_mpi=dbg
else
Expand Down
16 changes: 8 additions & 8 deletions configuration/scripts/machines/env.derecho_inteloneapi
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ if ("$inp" != "-nomodules") then
source ${MODULESHOME}/init/csh

module --force purge
module load ncarenv/23.09
module load ncarenv/25.10
module load craype
module load intel-oneapi/2023.2.1
module load ncarcompilers
#module load cray-mpich/8.1.25
#module load hdf5/1.12.2
module load netcdf/4.9.2
module load cray-libsci/23.09.1.1
module load intel/2025.2.1
#module load mkl/2023.3.0
module load ncarcompilers/1.2.0
#module load cray-mpich/8.1.32
module load netcdf/4.9.3
module load cray-libsci/25.03.0

# For perftools with mpiexec
# module load perftools-base
Expand All @@ -38,7 +38,7 @@ setenv OMP_STACKSIZE 64M
setenv ICE_MACHINE_MACHNAME derecho
setenv ICE_MACHINE_MACHINFO "HPE Cray EX Milan Slingshot 11"
setenv ICE_MACHINE_ENVNAME inteloneapi
setenv ICE_MACHINE_ENVINFO "ifx 2023.2.0 20230721, netcdf4.9.2"
setenv ICE_MACHINE_ENVINFO "ifx 2025.2.1 20250806, netcdf4.9.3"
setenv ICE_MACHINE_MAKE gmake
setenv ICE_MACHINE_WKDIR /glade/derecho/scratch/$user/ICEPACK_RUNS
setenv ICE_MACHINE_INPUTDATA /glade/campaign/cesm/development/pcwg
Expand Down
Loading