PUBLIC INTERFACE ~ PUBLIC ROUTINES ~ NAMELIST

Module ocean_riverspread_mod

Contact:  S.M. Griffies
Reviewers: 
Change History: WebCVS Log


OVERVIEW

Spread runoff or calving horizontally over a region determined by a table. Also provide option to spread river runoff or calving through a diffusive operation.

At some coastal ocean gridpoints, the runoff or calving flux contribution to (p-e+r) may be very large because of local insertion to ocean. Therefore, we may choose to spread the large river runoff over neighboring pairs of gridpoints. Annual mean river runoff greater than 0.05 m/day is considered to be very large. This module allows one to spread the river using two options. A/ by specifying river spreading table points B/ by performing a series of diffusion operations.


OTHER MODULES USED

  field_manager_mod
fms_mod
mpp_domains_mod
mpp_mod
ocean_domains_mod
ocean_operators_mod
ocean_types_mod

PUBLIC INTERFACE

ocean_riverspread_init:
spread_river_horz:
riverspread_laplacian:
at_least_one_in_spread_domain:
on_comp_domain:
on_data_domain:


PUBLIC ROUTINES

  1. ocean_riverspread_init

    DESCRIPTION
    Initial set up for spreading of tracers A/ Table drive approach (i,j) locations of points to be spread are set in data statements. Checks are performed to ensure that the spreading grid locations are valid according to model configuration. A summary of the locations of spreading points is written out. User specified inputs in "USER INPUT" section: ispread and jspread = user specified i,j grid locations of data for spreading. is, ie, js, je = user specified i,j grid locations of the corners of the spreading regions. is and ie are the east and west coord of each region, js and je are the south and north coord of each region. B/ Laplacian approach requires minimal setup


  2. spread_river_horz

    DESCRIPTION
    Provide conservative spreading of river runoff field.


  3. riverspread_laplacian

    DESCRIPTION
    Provide conservative spreading of river runoff field using a Laplacian operator.


  4. at_least_one_in_spread_domain

    DESCRIPTION
    Function to see if at least one of the points in the spreading region is within the computational domain for the processor.


    INPUT
    nsp    Integer labeling the particular spreading region
       [integer]

  5. on_comp_domain

    DESCRIPTION
    Determine if the point is in comp-domain for the processor


  6. on_data_domain

    DESCRIPTION
    Determine if the point is in data-domain for the processor



NAMELIST

&ocean_riverspread_nml

use_this_module
Must be true to enable this module. Default=.false.
[logical]
debug_this_module
For debugging. Default=.false.
[logical]
riverspread_diffusion
For spreading river water via a Laplacian diffusion operation. Default=.false.
[logical]
riverspread_diffusion_passes
Number of diffusion passes applied to the runoff/calving array. Default riverspread_diffusion_passes = 0.
[integer]
vel_micom_smooth
Velocity scale that is used for computing the MICOM Laplacian mixing coefficient used in the Laplacian smoothing of river water. Default vel_micom_smooth=0.2.
[real, units: m/sec]


NOTES

Spreading in a 2D lat-long field is implemented in the following manner: A/ Table driven spreadging If the spreading region lives within the halo region (i.e., within same local_domain), then no added mpp communication required. However, more generally the spreading region can extend beyond the existing halo region. In this case, spread_domain is defined so that its halos incorporate the maximum separation of spreading points. New tracer and grid arrays are defined over this extended spread_domain. This added domain size will come at some computational cost, so it is advantageous to choose the spreading region carefully. B/ Laplacian diffusion spreading Apply Laplacian operator to the river runoff/calving array to spread the river water abroad from the river mouth.

The current implementation of table driven spreading has not been tested for a spreading region that is separated by either a zonal cyclic condition or across the tripolar fold.


top