namespace mom_surface_forcing¶
Overview¶
Functions that calculate the surface wind stresses and fluxes of buoyancy or temperature/salinity andfresh water, in ocean-only (solo) mode. More…
namespace mom_surface_forcing { // global variables integer id_clock_forcing; // global functions subroutine, public set_forcing( sfc_state sfc_state, forces forces, fluxes fluxes, day_start day_start, day_interval day_interval, G G, US US, CS CS ); subroutine, public forcing_save_restart( CS CS, G G, Time Time, directory directory, time_stamped time_stamped, filename_suffix filename_suffix ); subroutine, public surface_forcing_init( Time Time, G G, US US, param_file param_file, diag diag, CS CS, tracer_flow_CSp tracer_flow_CSp ); } // namespace mom_surface_forcing
Detailed Documentation¶
Functions that calculate the surface wind stresses and fluxes of buoyancy or temperature/salinity andfresh water, in ocean-only (solo) mode.
These functions are called every time step, even if the wind stresses or buoyancy fluxes are constant in time - in that case these routines return quickly without doing anything. In addition, any I/O of forcing fields is controlled by surface_forcing_init, located in this file.
Global Functions¶
subroutine, public set_forcing( sfc_state sfc_state, forces forces, fluxes fluxes, day_start day_start, day_interval day_interval, G G, US US, CS CS )
Calls subroutines in this file to get surface forcing fields.
It also allocates and initializes the fields in the forcing and mech_forcing types the first time it is called.
Parameters:
sfc_state |
A structure containing fields that describe the surface state of the ocean. |
forces |
A structure with the driving mechanical forces |
fluxes |
A structure containing thermodynamic forcing fields |
day_start |
The start time of the fluxes |
day_interval |
Length of time over which these fluxes applied |
g |
The ocean’s grid structure |
us |
A dimensional unit scaling type |
cs |
pointer to control struct returned by a previous surface_forcing_init call |
subroutine, public forcing_save_restart( CS CS, G G, Time Time, directory directory, time_stamped time_stamped, filename_suffix filename_suffix )
Save a restart file for the forcing fields.
Parameters:
cs |
pointer to control struct returned by a previous surface_forcing_init call |
g |
The ocean’s grid structure |
time |
model time at this call; needed for mpp_write calls |
directory |
directory into which to write these restart files |
time_stamped |
If true, the restart file names include a unique time stamp; the default is false. |
filename_suffix |
optional suffix (e.g., a time-stamp) to append to the restart fname |
subroutine, public surface_forcing_init( Time Time, G G, US US, param_file param_file, diag diag, CS CS, tracer_flow_CSp tracer_flow_CSp )
Initialize the 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 |
structure used to regulate diagnostic output |
cs |
pointer to control struct returned by a previous surface_forcing_init call |
tracer_flow_csp |
Forcing for tracers? |