MOM6
mom_open_boundary::obc_segment_type Type Reference

Detailed Description

Open boundary segment data structure.

Definition at line 107 of file MOM_open_boundary.F90.

Collaboration diagram for mom_open_boundary::obc_segment_type:
[legend]

Public variables and constants

logical flather
 If true, applies Flather + Chapman radiation of barotropic gravity waves.
 
logical radiation
 If true, 1D Orlanksi radiation boundary conditions are applied. If False, a gradient condition is applied.
 
logical radiation_tan
 If true, 1D Orlanksi radiation boundary conditions are applied to tangential flows.
 
logical radiation_grad
 If true, 1D Orlanksi radiation boundary conditions are applied to dudv and dvdx.
 
logical oblique
 Oblique waves supported at radiation boundary.
 
logical oblique_tan
 If true, 2D radiation boundary conditions are applied to tangential flows.
 
logical oblique_grad
 If true, 2D radiation boundary conditions are applied to dudv and dvdx.
 
logical nudged
 Optional supplement to radiation boundary.
 
logical nudged_tan
 Optional supplement to nudge tangential velocity.
 
logical nudged_grad
 Optional supplement to nudge normal gradient of tangential velocity.
 
logical specified
 Boundary normal velocity fixed to external value.
 
logical specified_tan
 Boundary tangential velocity fixed to external value.
 
logical open
 Boundary is open for continuity solver.
 
logical gradient
 Zero gradient at boundary.
 
logical values_needed
 Whether or not external OBC fields are needed.
 
integer direction
 Boundary faces one of the four directions.
 
logical is_n_or_s
 True is the OB is facing North or South and exists on this PE.
 
logical is_e_or_w
 True is the OB is facing East or West and exists on this PE.
 
type(obc_segment_data_type), dimension(:), pointer field =>NULL()
 OBC data.
 
integer num_fields
 number of OBC data fields (e.g. u_normal,u_parallel and eta for Flather)
 
character(len=32), dimension(:), pointer field_names =>NULL()
 field names for this segment
 
integer is_obc
 i-indices of boundary segment.
 
integer ie_obc
 i-indices of boundary segment.
 
integer js_obc
 j-indices of boundary segment.
 
integer je_obc
 j-indices of boundary segment.
 
real velocity_nudging_timescale_in
 Nudging timescale on inflow [s].
 
real velocity_nudging_timescale_out
 Nudging timescale on outflow [s].
 
logical on_pe
 true if segment is located in the computational domain
 
logical temp_segment_data_exists
 true if temperature data arrays are present
 
logical salt_segment_data_exists
 true if salinity data arrays are present
 
real, dimension(:,:), pointer cg =>NULL()
 The external gravity wave speed [m s-1] at OBC-points.
 
real, dimension(:,:), pointer htot =>NULL()
 The total column thickness [m] at OBC-points.
 
real, dimension(:,:,:), pointer h =>NULL()
 The cell thickness [m] at OBC-points.
 
real, dimension(:,:,:), pointer normal_vel =>NULL()
 The layer velocity normal to the OB segment [m s-1].
 
real, dimension(:,:,:), pointer tangential_vel =>NULL()
 The layer velocity tangential to the OB segment [m s-1].
 
real, dimension(:,:,:), pointer tangential_grad =>NULL()
 The gradient of the velocity tangential to the OB segment [m s-1].
 
real, dimension(:,:,:), pointer normal_trans =>NULL()
 The layer transport normal to the OB segment [m3 s-1].
 
real, dimension(:,:), pointer normal_vel_bt =>NULL()
 The barotropic velocity normal to the OB segment [m s-1].
 
real, dimension(:,:), pointer eta =>NULL()
 The sea-surface elevation along the segment [m].
 
real, dimension(:,:,:), pointer grad_normal =>NULL()
 The gradient of the normal flow along the segment [s-1].
 
real, dimension(:,:,:), pointer grad_tan =>NULL()
 The gradient of the tangential flow along the segment [s-1].
 
real, dimension(:,:,:), pointer grad_gradient =>NULL()
 The gradient of the gradient of tangential flow along the segment [m-1 s-1].
 
real, dimension(:,:,:), pointer rx_normal =>NULL()
 The rx_old_u value for radiation coeff for normal velocity.
 
real, dimension(:,:,:), pointer ry_normal =>NULL()
 The tangential value for radiation coeff for normal velocity.
 
real, dimension(:,:,:), pointer cff_normal =>NULL()
 The denominator for oblique radiation for normal velocity.
 
real, dimension(:,:,:), pointer nudged_normal_vel =>NULL()
 The layer velocity normal to the OB segment that values should be nudged towards [m s-1].
 
real, dimension(:,:,:), pointer nudged_tangential_vel =>NULL()
 The layer velocity tangential to the OB segment that values should be nudged towards [m s-1].
 
real, dimension(:,:,:), pointer nudged_tangential_grad =>NULL()
 The layer dvdx or dudy towards which nudging can occur [s-1].
 
type(segment_tracer_registry_type), pointer tr_reg => NULL()
 A pointer to the tracer registry for the segment.
 
type(hor_index_type) hi
 Horizontal index ranges.
 
real tr_invlscale3_out
 An effective inverse length scale cubed [m-3].
 
real tr_invlscale3_in
 for restoring the tracer concentration in a ficticious reservior towards interior values when flow is exiting the domain, or towards an externally imposed value when flow is entering
 

The documentation for this type was generated from the following file: