Index | Rundeck: P1SoM40 | Created: Thu May 9 03:30:17 EDT 2024 |
SEAICE | File: SEAICE.f |
Author : Original Development Team
Version:
Subroutines:
- addice
- ADDICE adds ice formed in the ocean to ice variables
- alami
- Calculation of thermal diffusion of ice J/(m*degC*sec) =f(T,S)
(based on Pringle et al, 2007)
- deidti
- Calculation of effective specific heat of ice J/(kg degC) =f(T,S)
- ei
- Calculation of energy of ice (J/kg) as a function of temp and salinity
- em
- Calculation of the energy of ice melt (J/kg) as a function of salinity
- fi
- Calculation of liquid water that can be frozen in ice (kg/m2)
- get_snow_ice_layer
- Split thermal layer fields into ice and snow components
in each thermal layer: i.e. SNOW in L1/L2, ICE in L1/L2
- icelake_fluxes
- icelake calculates fluxes at base of lake ice (no salinity)
- iceocean_fluxes
- iceocean calculates fluxes at base of sea ice
- mi
- Calculation of ice melt (kg/m2) as a function of hsi and salinity
- prec_si
- PREC_SI Adds the precipitation to sea/lake ice
- relayer
- relayer lower level ice because of mass flux btw layer 2 and 3
and possible changes in mass in each layer
- relayer_12
- Relayer upper 2 snow/ice layers if required
- sea_ice
- SEA_ICE applies surface fluxes to ice covered areas
- set_snow_ice_layer
- Collect snow and ice mass layer fields into thermal layers
SNOW in L1 and L2, ICE in L1 , ICE in L2
- simelt
- SIMELT melts sea ice laterally and if it is too small
Note: all amounts are with respect to the ocean/lake fraction
- snowice
- solar_ice_frac
- solar_ice_frac calculates the fraction of solar radiation
transmitted through the ice, taking albedo into account, but
assuming constant proportions of visible and near-ir.
Based on Ebert et al, 1995.
- ssidec
- SSIDEC decays salinity in sea ice
- tfrez
- tfrez calculates freezing temperature of sea water
- ti
- Ti calculates sea ice temperature as a function of internal
energy and salinity content depending on ice thermo formulation
- tice
- TICE returns array of ice temperatures from model variables
Global Variables:
- lhm : used from constant
- rhoi : used from constant
Used by: | :printlk | :seaice_to_atmgrid | :surface | :surface_landice |
- byrhoi : used from constant
- rhow : used from constant
- shi : used from constant
- shw : used from constant
- byshi : used from constant
- bylhm : used from constant
- rhows : used from constant
- seconds_per_day : used from timeconstants_mod
- lmi :
integer, parameter
- number of temperature layers in ice
Initial Value= 4
Used by: | :advsi_diag_ocnml | :altstyle_seaice_ic | :checki | :checkost | :daily_ocnml_offline | :form_si | :ground_si | :melt_si | :precip_si | :read_seaice | :seaice_to_atmgrid | :underice | SEAICE_COM | STRAITS |
- xsi :
real*8, parameter, dimension(lmi)
- fractions of mass layer in each temp. layer
Initial Value= (/0.5d0, 0.5d0, 0.5d0, 0.5d0/)
Used by: | :advsi | :altstyle_seaice_ic | :checki | :checkost | :daily_lake | :form_si | :ground_si | :melt_si | :precip_si | :printlk | :read_seaice | :seaice_to_atmgrid | :set_noice_defaults | :surface | :surface_landice | :underice |
- byxsi :
real*8, parameter, dimension(lmi)
- recipricol of XSI
Initial Value= (/ 1./XSI(1), 1./XSI(2), 1./XSI(3), 1./XSI(4) /)
- z1i :
real*8, parameter
- thickness of first layer ice (m)
Initial Value= .1d0
Used by: | :read_seaice |
- ace1i :
real*8, parameter
- ice mass first layer (kg/m^2)
Initial Value= Z1I*RHOI
Used by: | :advsi | :advsi_diag_ocnml | :altstyle_seaice_ic | :calc_apress | :checki | :conserv_lmsi | :conserv_omsi | :daily_lake | :daily_ocnml_offline | :dynsi | :form_si | :ground_si | :melt_si | :precip_si | :printlk | :read_seaice | :seaice_to_atmgrid | :set_noice_defaults | :si_diags | :surface | :surface_diag1 | :surface_landice |
- z2oim :
real*8, parameter
- min. thickness of 2nd layer ice (m) (if > 0)
Initial Value= .1d0
Used by: | :read_seaice |
- ac2oim :
real*8, parameter
- min. ice mass 2nd layer (kg/m^2) (if > 0)
Initial Value= Z2OIM*RHOI
Used by: | :daily_lake | :read_seaice | :set_noice_defaults | :underice |
- alams :
real*8, parameter
- lambda coefficient for ice/snow J/(m*degC*sec)
Initial Value= 0.35d0
- alami0 :
real*8, parameter
- lambda coefficient for ice/snow J/(m*degC*sec)
Initial Value= 2.11d0
Used by: | :surface | :surface_landice |
- alamds :
real*8, parameter
- salinity/temp coefficient for conductivity (J/(m*s)/psu)
Initial Value= 0.09d0
- alamdt :
real*8, parameter
- temp coefficient for conductivity (J/(m*s)/degC^2)
Initial Value= -0.011d0
- rhos :
real*8, parameter
- density of snow (kg/m^3)
Initial Value= 300.0
Used by: | :ground_li | :ground_si | :seaice_to_atmgrid | :si_diags |
- fleadoc :
real*8, parameter
- lead fraction for ocean ice (%)
Initial Value= 0.06d0
Used by: | :form_si | :read_seaice |
- fleadlk :
real*8, parameter
- lead fraction for lakes (%)
Initial Value= 0.
Used by: | :form_si |
- fleadmx :
real*8, parameter
- maximum thickness for lead fraction (m)
Initial Value= 5.
- byrls :
real*8, parameter
- reciprocal of snow density*lambda
Initial Value= 1./(RHOS*ALAMS)
Used by: | :surface | :surface_landice |
- mu :
real*8, parameter
- coefficient of seawater freezing point w.r.t. salinity
Initial Value= 0.054d0
- ssi0 :
real*8, parameter
- default value for sea ice salinity (kg/kg) (=3.2ppt)
Initial Value= 0.0032d0
Used by: | :read_seaice | :set_noice_defaults |
- fsss :
real*8, parameter
- fraction of ocean salinity found in new-formed ice
Initial Value= 8d0/35d0
Used by: | :ground_oc | :osourc |
- qsfix :
logical
- flag is true if salinity of sea ice is constant
Initial Value= .false.
Used by: | :ground_si |
- alpha :
real*8, parameter
- implicity for heat diffusion in sea ice (1=fully implicit)
Initial Value= 1.0
Used by: | :underice |
- oi_ustar0 :
real*8
- default ice-ocean friction velocity (m/s)
Initial Value= 1d-3
Used by: | :init_oceanice |
- silmfac :
real*8
- factor controlling lateral melt of ocean ice
Initial Value= 1.d-7
Used by: | :init_oceanice |
- silmpow :
real*8
- exponent for temperature dependence of lateral melt
Initial Value= 1.36d0
- snow_ice :
integer
- =1 to allow for snow ice formation (default=1)
Initial Value= 1
Used by: | :ground_si | :init_oceanice |
- osurf_tilt :
integer
- controls calc. of ocean surface tilt for ice dyn:
Initial Value= 1
Used by: | ICEDYN |
- ssimin :
real*8
- critical cutoff for salt amount (kg/kg)
Initial Value= 1d-4
- debug :
logical
- flag
Used by: | :form_si | :ground_si | :melt_si | :precip_si | :underice |
- seaice_thermo :
character*2
- formulation of sea ice thermodynamics (BP or SI)
Initial Value= "SI"
Used by: | :init_oceanice |