next up previous contents
Next: 4.22 Fortran: Module Interface Up: 4 Module Descriptions Previous: 4.20 Fortran: Module Interface   Contents

Subsections

4.21 Fortran: Module Interface ice_ocean - ocean mixed layer internal to sea ice model (Source File: ice_ocean.F)

Ocean mixed layer calculation (internal to sea ice model).
Open ocean has stability based flux calculations for uncoupled runs. Uses monthly mean ocean forcing data from external file to drive the ocean mixed layer. Initial sst either from the ice restart file or set to 1 Jan from external file data./initial

List of ocean forcing fields: Note that order is important!
(order is determined by field list in vname).

For ocean mixed layer---------------units

1 sst---temperature--------------(C)
2 sss---salinity---------------(ppt)
3 hbl---depth-----------------(m)
4 u----surface u current-----------(m/s)
5 v----surface v current-----------(m/s)
6 dhdx---surface tilt x direction-------(m/m)
7 dhdy---surface tilt y direction-------(m/m)
8 qdp---ocean sub-mixed layer heat flux----(W/m2)


REVISION HISTORY:

   original authors John Weatherly, C.M. Bitz,
                    Elizabeth C. Hunke, Bruce P. Briegleb
   significantly modified by  Bruce P. Briegleb
INTERFACE:
       module ice_ocean
USES:
       use ice_flux
       use ice_calendar
       use ice_prnpnt

4.21.1 init_oceanmixed_ice - initialize mixed layer forcing data


INTERFACE:

       subroutine init_oceanmixed_ice
DESCRIPTION:

Initialize ocean forcing data for the mixed layer. Check netCDF
file for correct dimensions, fields and other attributes, and then read in all 12 months of forcing data.

Assumes 12 months of ocean forcing data, ordered from mean January to mean December; dates of these months are ignored.

Note the assumption that if lat/lon dimensions of the netCDF files are identical to those in the code, then the grids of the netCDF file and the code are also.


REVISION HISTORY:

   
   author  Bruce P. Briegleb, NCAR
USES:
       use ice_mpi_internal
       use shr_sys_mod, only : shr_sys_flush, shr_sys_abort
       include "netcdf.inc"
INPUT/OUTPUT PARAMETERS:


4.21.2 time_intrplt_ocean_forcing - time interpolates ocean forcing


INTERFACE:

       subroutine time_intrplt_ocean_forcing
DESCRIPTION:

Finds two months of ocean forcing data that bracket current date (for which year is ignored), and interpolate linearly in time between those two values.


REVISION HISTORY:

                                         
   author  Bruce P. Briegleb, NCAR
USES:
       use ice_mpi_internal
       use ice_grid
       use shr_sys_mod, only : shr_sys_flush, shr_sys_abort
       include "netcdf.inc"
INPUT/OUTPUT PARAMETERS:


4.21.3 set_oceanmixed_ice - set sst and frzmlt


INTERFACE:

       subroutine set_oceanmixed_ice
DESCRIPTION:

Sets sst and frzmlt with ocean mixed layer values


REVISION HISTORY:

   
   author  Bruce P. Briegleb, NCAR
USES:
       use shr_sys_mod, only : shr_sys_flush
INPUT/OUTPUT PARAMETERS:


4.21.4 compute_oceanmixed_ice - update ocean state fields


INTERFACE:

       subroutine compute_oceanmixed_ice
DESCRIPTION:

Update sst and other ocean state fields


REVISION HISTORY:

   
   author  Bruce P. Briegleb, NCAR
USES:
       use shr_sys_mod, only : shr_sys_flush
INPUT/OUTPUT PARAMETERS:


4.21.5 mixed_layer(i,j) - computes open ocean fluxes


INTERFACE:

       subroutine mixed_layer(i,j)
DESCRIPTION:

Calculate flux exchange over open ocean and update mixed layer sst


REVISION HISTORY:

                                         
   author  Elizabeth Hunke, LANL, and Bruce P. Briegleb, NCAR
USES:
       use ice_grid
       use ice_atmo
       use ice_constants, only : TTTocn, qqqocn
INPUT/OUTPUT PARAMETERS:
       integer (kind=int_kind), intent(in) :: i,j

4.21.6 ocnheat(i,j, delt, delq) - update ocean fields


INTERFACE:

       subroutine ocnheat(i,j, delt, delq)
DESCRIPTION:

Update sst and freezing/melting potential; set other ocean fields from forcing data; thermal effect of ice/ocn heat will be included in the sst change after this routine is called.


REVISION HISTORY:

   Modified by Bruce P. Briegleb
USES:
       use ice_constants
       use ice_state
       use ice_albedo
INPUT/OUTPUT PARAMETERS:
       integer (kind=int_kind) :: i,j
 
       real (kind=dbl_kind), intent(in) ::
      &   delt   ! potential T difference   (K)
      &,  delq   ! humidity difference      (kg/kg)


next up previous contents
Next: 4.22 Fortran: Module Interface Up: 4 Module Descriptions Previous: 4.20 Fortran: Module Interface   Contents
csm@ucar.edu