namespace user_surface_forcing

Overview

Template for user to code up surface forcing. More…

namespace user_surface_forcing {

// global functions

subroutine, public user_wind_forcing(
    sfc_state sfc_state,
    forces forces,
    day day,
    G G,
    US US,
    CS CS
    );

subroutine, public user_buoyancy_forcing(
    sfc_state sfc_state,
    fluxes fluxes,
    day day,
    dt dt,
    G G,
    US US,
    CS CS
    );

subroutine, public user_surface_forcing_init(
    Time Time,
    G G,
    US US,
    param_file param_file,
    diag diag,
    CS CS
    );

} // namespace user_surface_forcing

Detailed Documentation

Template for user to code up surface forcing.

Global Functions

subroutine, public user_wind_forcing(
    sfc_state sfc_state,
    forces forces,
    day day,
    G G,
    US US,
    CS CS
    )

This subroutine sets the surface wind stresses, forcestaux and forcestauy, in [Pa]. These are the stresses in the direction of the model grid (i.e. the same direction as the u- and v- velocities).

Parameters:

sfc_state

A structure containing fields that describe the surface state of the ocean.

forces

A structure with the driving mechanical forces

day

The time of the fluxes

g

The ocean’s grid structure

us

A dimensional unit scaling type

cs

A pointer to the control structure returned by a previous call to user_surface_forcing_init

subroutine, public user_buoyancy_forcing(
    sfc_state sfc_state,
    fluxes fluxes,
    day day,
    dt dt,
    G G,
    US US,
    CS CS
    )

This subroutine specifies the current surface fluxes of buoyancy or temperature and fresh water. It may also be modified to add surface fluxes of user provided tracers.

Parameters:

sfc_state

A structure containing fields that describe the surface state of the ocean.

fluxes

A structure containing thermodynamic forcing fields

day

The time of the fluxes

dt

The amount of time over which the fluxes apply [s]

g

The ocean’s grid structure

us

A dimensional unit scaling type

cs

A pointer to the control structure returned by a previous call to user_surface_forcing_init

subroutine, public user_surface_forcing_init(
    Time Time,
    G G,
    US US,
    param_file param_file,
    diag diag,
    CS CS
    )

This subroutine initializes the USER_surface_forcing module.

Parameters:

time

The current model time

g

The ocean’s grid structure

us

A dimensional unit scaling type

param_file

A structure to parse for run-time parameters

diag

A structure that is used to regulate diagnostic output.

cs

A pointer that is set to point to the control structure for this module