namespace meso_surface_forcing¶
Overview¶
Sets forcing for the MESO configuration. More…
namespace meso_surface_forcing { // global variables logical first_call = .true.; // global functions subroutine, public meso_buoyancy_forcing( sfc_state sfc_state, fluxes fluxes, day day, dt dt, G G, US US, CS CS ); subroutine, public meso_surface_forcing_init( Time Time, G G, US US, param_file param_file, diag diag, CS CS ); } // namespace meso_surface_forcing
Detailed Documentation¶
Sets forcing for the MESO configuration.
Rewritten by Robert Hallberg, June 2009
This file contains the subroutines that a user should modify to to set the surface wind stresses and fluxes of buoyancy or temperature and fresh water. They are called when the run-time parameters WIND_CONFIG or BUOY_CONFIG are set to “USER”. The standard version has simple examples, along with run-time error messages that will cause the model to abort if this code has not been modified. This code is intended for use with relatively simple specifications of the forcing. For more complicated forms, it is probably a good idea to read the forcing from input files using “file” for WIND_CONFIG and BUOY_CONFIG.
MESO_buoyancy forcing is used to set the surface buoyancy forcing, which may include a number of fresh water flux fields (evap, liq_precip, froz_precip, liq_runoff, froz_runoff, and vprec) and the surface heat fluxes (sw, lw, latent and sens) if temperature and salinity are state variables, or it may simply be the buoyancy flux if it is not. This routine also has coded a restoring to surface values of temperature and salinity.
Global Variables¶
logical first_call = .true.
True until after the first call to the MESO forcing routines.
Global Functions¶
subroutine, public meso_buoyancy_forcing( sfc_state sfc_state, fluxes fluxes, day day, dt dt, G G, US US, CS CS )
This subroutine sets up the MESO buoyancy forcing, which uses control-theory style specification restorative buoyancy fluxes at large scales.
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 MESO_surface_forcing_init |
subroutine, public meso_surface_forcing_init( Time Time, G G, US US, param_file param_file, diag diag, CS CS )
Initialize the MESO 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 |
A pointer that is set to point to the control structure for this module |