Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update version to Icepack 1.3.3 #419

Merged
merged 1 commit into from
Dec 7, 2022
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
10 changes: 5 additions & 5 deletions columnphysics/icepack_itd.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1309,9 +1309,9 @@ subroutine zap_small_areas (dt, ntrcr, &
!-----------------------------------------------------------------

xtmp = (rhoi*vicen(n) + rhos*vsnon(n)) &
* (aice-c1)/aice / dt
dfresh = dfresh + xtmp
* (aice-c1)/aice / dt
dfresh = dfresh + xtmp

if (saltflux_option == 'prognostic') then
sicen = c0
do k=1,nilyr
Expand All @@ -1323,8 +1323,8 @@ subroutine zap_small_areas (dt, ntrcr, &
xtmp = rhoi*vicen(n)*ice_ref_salinity*p001 &
* (aice-c1)/aice / dt
endif
dfsalt = dfsalt + xtmp
dfsalt = dfsalt + xtmp

if (solve_zsal) then
do k = 1,nblyr
xtmp = rhosi*trcrn(nt_fbri,n)*vicen(n)*p001&
Expand Down
2 changes: 1 addition & 1 deletion columnphysics/icepack_parameters.F90
Original file line number Diff line number Diff line change
Expand Up @@ -563,7 +563,7 @@ subroutine icepack_init_parameters( &
dSdt_slow_mode_in , & ! slow mode drainage strength (m s-1 K-1)
phi_c_slow_mode_in , & ! liquid fraction porosity cutoff for slow mode
phi_i_mushy_in ! liquid fraction of congelation ice

character(len=*), intent(in), optional :: &
tfrz_option_in ! form of ocean freezing temperature
! 'minus1p8' = -1.8 C
Expand Down
2 changes: 1 addition & 1 deletion columnphysics/icepack_therm_itd.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1605,7 +1605,7 @@ subroutine add_new_ice (ncat, nilyr, &
!-----------------------------------------------------------------

if (update_ocn_f) then
dfresh = -rhoi*vi0new/dt
dfresh = -rhoi*vi0new/dt
if (saltflux_option == 'prognostic') then
dfsalt = Si0new*p001*dfresh
else
Expand Down
2 changes: 1 addition & 1 deletion columnphysics/icepack_therm_vertical.F90
Original file line number Diff line number Diff line change
Expand Up @@ -453,7 +453,7 @@ subroutine thermo_vertical (nilyr, nslyr, &
else
fsaltn = fsaltn - rhoi*dhi*ice_ref_salinity*p001/dt
endif
fhocnn = fhocnn + fadvocn ! for ktherm=2
fhocnn = fhocnn + fadvocn ! for ktherm=2

if (hin == c0) then
if (tr_pond_topo) fpond = fpond - aicen * apond * hpond
Expand Down
2 changes: 1 addition & 1 deletion columnphysics/version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ICEPACK 1.3.2
ICEPACK 1.3.3
4 changes: 2 additions & 2 deletions configuration/driver/icedrv_InitMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ subroutine icedrv_initialize
use icedrv_flux, only: init_coupler_flux, init_history_therm, &
init_flux_atm_ocn
use icedrv_forcing, only: init_forcing, get_forcing, get_wave_spec
use icedrv_forcing_bgc, only: get_forcing_bgc, faero_default, fiso_default, init_forcing_bgc
use icedrv_forcing_bgc, only: get_forcing_bgc, faero_default, fiso_default, init_forcing_bgc
use icedrv_restart_shared, only: restart
use icedrv_init, only: input_data, init_state, init_grid2, init_fsd
use icedrv_init_column, only: init_thermo_vertical, init_shortwave, init_zbgc
Expand Down Expand Up @@ -138,7 +138,7 @@ subroutine icedrv_initialize
if (icepack_warnings_aborted()) call icedrv_system_abort(string=subname, &
file=__FILE__,line= __LINE__)

call init_forcing ! initialize forcing (standalone)
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
call get_forcing(istep1) ! get forcing from data arrays
Expand Down
18 changes: 9 additions & 9 deletions configuration/driver/icedrv_MAIN.F90
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
!=======================================================================
! Copyright (c) 2022, Triad National Security, LLC
! All rights reserved.
!
!
! Copyright 2022. Triad National Security, LLC. This software was
! produced under U.S. Government contract DE-AC52-06NA25396 for Los
! produced under U.S. Government contract DE-AC52-06NA25396 for Los
! Alamos National Laboratory (LANL), which is operated by Triad
! National Security, LLC for the U.S. Department of Energy. The U.S.
! Government has rights to use, reproduce, and distribute this software.
! NEITHER THE GOVERNMENT NOR TRIAD NATIONAL SECURITY, LLC MAKES ANY
! National Security, LLC for the U.S. Department of Energy. The U.S.
! Government has rights to use, reproduce, and distribute this software.
! NEITHER THE GOVERNMENT NOR TRIAD NATIONAL SECURITY, LLC MAKES ANY
! WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LIABILITY FOR THE USE OF
! THIS SOFTWARE. If software is modified to produce derivative works,
! such modified software should be clearly marked, so as not to confuse
! THIS SOFTWARE. If software is modified to produce derivative works,
! such modified software should be clearly marked, so as not to confuse
! it with the version available from LANL.
!
! The full license and distribution policy are available from
! https://github.com/CICE-Consortium
!
!
!=======================================================================

! Main driver routine for Icepack, the column package for CICE.
! Main driver routine for Icepack, the column package for CICE.
! Initializes and steps through the model.
!
! author Elizabeth C. Hunke, LANL
Expand Down
38 changes: 19 additions & 19 deletions configuration/driver/icedrv_RunMod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ subroutine ice_step
!-----------------------------------------------------------------

call icepack_query_parameters(skl_bgc_out=skl_bgc, z_tracers_out=z_tracers)
call icepack_query_parameters(solve_zsal_out=solve_zsal, &
call icepack_query_parameters(solve_zsal_out=solve_zsal, &
calc_Tsfc_out=calc_Tsfc, &
wave_spec_out=wave_spec)
call icepack_query_tracer_flags(tr_brine_out=tr_brine,tr_fsd_out=tr_fsd, &
Expand All @@ -147,7 +147,7 @@ subroutine ice_step
!-----------------------------------------------------------------
! Scale radiation fields
!-----------------------------------------------------------------

if (calc_Tsfc) call prep_radiation ()

! call icedrv_diagnostics_debug ('post prep_radiation')
Expand All @@ -169,26 +169,26 @@ subroutine ice_step
!-----------------------------------------------------------------
! dynamics, transport, ridging
!-----------------------------------------------------------------

call init_history_dyn

! wave fracture of the floe size distribution
! note this is called outside of the dynamics subcycling loop
if (tr_fsd .and. wave_spec) call step_dyn_wave(dt)

do k = 1, ndtd

! ridging
call step_dyn_ridge (dt_dyn, ndtd)

! clean up, update tendency diagnostics
offset = c0
call update_state (dt_dyn, daidtd, dvidtd, dagedtd, offset)

enddo

! call icedrv_diagnostics_debug ('post dynamics')

!-----------------------------------------------------------------
! snow redistribution and metamorphosis
!-----------------------------------------------------------------
Expand All @@ -203,21 +203,21 @@ subroutine ice_step
!-----------------------------------------------------------------
! albedo, shortwave radiation
!-----------------------------------------------------------------

call step_radiation (dt)

!-----------------------------------------------------------------
! get ready for coupling and the next time step
!-----------------------------------------------------------------

call coupling_prep

! call icedrv_diagnostics_debug ('post step_rad, cpl')

!-----------------------------------------------------------------
! write data
!-----------------------------------------------------------------

if (mod(istep,diagfreq) == 0) then
call runtime_diags(dt) ! log file
if (solve_zsal) call zsal_diags
Expand All @@ -228,16 +228,16 @@ subroutine ice_step
if (history_cdf) then
call history_write()
endif

if (write_restart == 1) then
call dumpfile ! core variables for restarting
if (solve_zsal .or. skl_bgc .or. z_tracers) &
call write_restart_bgc ! biogeochemistry
call final_restart
endif

end subroutine ice_step

!=======================================================================
!
! Prepare for coupling
Expand All @@ -264,7 +264,7 @@ subroutine coupling_prep

! local variables

integer (kind=int_kind) :: &
integer (kind=int_kind) :: &
n , & ! thickness category index
i , & ! horizontal index
k , & ! tracer index
Expand Down Expand Up @@ -314,7 +314,7 @@ subroutine coupling_prep
do n = 1, ncat
do i = 1, nx
if (aicen(i,n) > puny) then

alvdf(i) = alvdf(i) + alvdfn(i,n)*aicen(i,n)
alidf(i) = alidf(i) + alidfn(i,n)*aicen(i,n)
alvdr(i) = alvdr(i) + alvdrn(i,n)*aicen(i,n)
Expand All @@ -329,7 +329,7 @@ subroutine coupling_prep

apeff_ai(i) = apeff_ai(i) + apeffn(i,n)*aicen(i,n) ! for history
snowfrac(i) = snowfrac(i) + snowfracn(i,n)*aicen(i,n) ! for history

endif ! aicen > puny
enddo
enddo
Expand Down Expand Up @@ -357,8 +357,8 @@ subroutine coupling_prep
fsalt_ai (i) = fsalt (i)
fhocn_ai (i) = fhocn (i)
fswthru_ai(i) = fswthru(i)
fzsal_ai (i) = fzsal (i)
fzsal_g_ai(i) = fzsal_g(i)
fzsal_ai (i) = fzsal (i)
fzsal_g_ai(i) = fzsal_g(i)

if (nbtrcr > 0) then
do k = 1, nbtrcr
Expand Down
22 changes: 11 additions & 11 deletions configuration/driver/icedrv_arrays_column.F90
Original file line number Diff line number Diff line change
Expand Up @@ -123,12 +123,12 @@ module icedrv_arrays_column
! aerosol optical properties -> band |
! v aerosol
! for combined dust category, use category 4 properties
real (kind=dbl_kind), dimension(icepack_nspint,icepack_max_aero), public :: &
real (kind=dbl_kind), dimension(icepack_nspint,icepack_max_aero), public :: &
kaer_tab , & ! aerosol mass extinction cross section (m2/kg)
waer_tab , & ! aerosol single scatter albedo (fraction)
gaer_tab ! aerosol asymmetry parameter (cos(theta))

real (kind=dbl_kind), dimension(icepack_nspint,icepack_nmodal1), public :: &
real (kind=dbl_kind), dimension(icepack_nspint,icepack_nmodal1), public :: &
kaer_bc_tab, & ! BC mass extinction cross section (m2/kg)
waer_bc_tab, & ! BC single scatter albedo (fraction)
gaer_bc_tab ! BC aerosol asymmetry parameter (cos(theta))
Expand All @@ -144,7 +144,7 @@ module icedrv_arrays_column

real (kind=dbl_kind), dimension (nblyr+1), public :: &
igrid ! biology vertical interface points

real (kind=dbl_kind), dimension (nilyr+1), public :: &
cgrid , & ! CICE vertical coordinate
icgrid , & ! interface grid for CICE (shortwave variable)
Expand Down Expand Up @@ -197,12 +197,12 @@ module icedrv_arrays_column
integer (kind=int_kind), dimension(nx,icepack_max_algae), public :: &
algal_peak ! vertical location of algal maximum, 0 if no maximum

real (kind=dbl_kind), &
real (kind=dbl_kind), &
dimension (nx,nblyr+1,ncat), public :: &
Zoo ! N losses accumulated in timestep (ie. zooplankton/bacteria)
! (mmol/m^3)

real (kind=dbl_kind), &
real (kind=dbl_kind), &
dimension (nx,ncat), public :: &
dhbr_top , & ! brine top change
dhbr_bot ! brine bottom change
Expand All @@ -228,18 +228,18 @@ module icedrv_arrays_column
NO_net ! Total nitrate per grid cell

logical (kind=log_kind), dimension (nx), public :: &
Rayleigh_criteria ! .true. means Ra_c was reached
Rayleigh_criteria ! .true. means Ra_c was reached

real (kind=dbl_kind), dimension (nx), public :: &
Rayleigh_real ! .true. = c1, .false. = c0

real (kind=dbl_kind), &
real (kind=dbl_kind), &
dimension (nx,ncat), public :: &
sice_rho ! avg sea ice density (kg/m^3) ! ech: diagnostic only?

real (kind=dbl_kind), &
real (kind=dbl_kind), &
dimension (nx,ncat), public :: &
fzsaln , & ! category fzsal(kg/m^2/s)
fzsaln , & ! category fzsal(kg/m^2/s)
fzsaln_g ! salt flux from gravity drainage only

real (kind=dbl_kind), dimension (nx), public :: &
Expand All @@ -256,7 +256,7 @@ module icedrv_arrays_column
real (kind=dbl_kind), dimension (nx), public :: &
upNO , & ! nitrate uptake rate (mmol/m^2/d) times aice
upNH ! ammonium uptake rate (mmol/m^2/d) times aice

real (kind=dbl_kind), &
dimension(nx,max_ntrcr,ncat), public :: &
trcrn_sw ! bgc tracers active in the delta-Eddington shortwave
Expand All @@ -283,7 +283,7 @@ module icedrv_arrays_column
real (kind=dbl_kind), dimension (nx,nfreq), public :: &
wave_spectrum ! wave spectrum

real (kind=dbl_kind), dimension (nx,nfsd), public :: &
real (kind=dbl_kind), dimension (nx,nfsd), public :: &
! change in floe size distribution due to processes
d_afsd_newi, d_afsd_latg, d_afsd_latm, d_afsd_wave, d_afsd_weld

Expand Down
Loading