Go to the source code of this file.
|
module | mom_controlled_forcing |
| *
By Robert Hallberg, July 2011 *
- This program contains the subroutines that use control-theory * to adjust the surface heat flux and precipitation, based on the * time-mean or periodically (seasonally) varying anomalies from the * observed state. The techniques behind this are described in * Hallberg and Adcroft (2011, in prep.). *
- Macros written all in capital letters are defined in MOM_memory.h. *
- A small fragment of the grid is shown below: *
- j+1 x ^ x ^ x At x: q * j+1 > o > o > At ^: v, tauy * j x ^ x ^ x At >: u, taux * j > o > o > At o: h, fluxes. * j-1 x ^ x ^ x * i-1 i i+1 At x & ^: * i i+1 At > & o: *
- The boundaries always run through q grid points (x). *
|
|
|
subroutine, public | mom_controlled_forcing::apply_ctrl_forcing (SST_anom, SSS_anom, SSS_mean, virt_heat, virt_precip, day_start, dt, G, CS) |
| This subroutine calls any of the other subroutines in this file that are needed to specify the current surface forcing fields. More...
|
|
integer function | mom_controlled_forcing::periodic_int (rval, num_period) |
| This function maps rval into an integer in the range from 1 to num_period. More...
|
|
real function | mom_controlled_forcing::periodic_real (rval, num_period) |
| This function shifts rval by an integer multiple of num_period so that 0 <= val_out < num_period. More...
|
|
subroutine, public | mom_controlled_forcing::register_ctrl_forcing_restarts (G, param_file, CS, restart_CS) |
| This subroutine is used to allocate and register any fields in this module that should be written to or read from the restart file. More...
|
|
subroutine, public | mom_controlled_forcing::controlled_forcing_init (Time, G, param_file, diag, CS) |
| Set up this modules control structure. More...
|
|
subroutine, public | mom_controlled_forcing::controlled_forcing_end (CS) |
| Clean up this modules control structure. More...
|
|