Contact: B. Wyman Reviewers: Change history: WebCVS Log for bgrid_sponge.f90
Eddy damping of prognostic fields at the top level of the model.
Damping is done using a 5-point Shapiro filter. For temperature, tracers, and zonal wind the zonal mean is removed before applying the filter. For meridional wind, the entire field is damped. Coefficients are controlled through namelist input.
bgrid_horiz_mod bgrid_masks_mod bgrid_prog_var_mod bgrid_change_grid_mod bgrid_halo_mod fms_mod mpp_domains_mod
use bgrid_sponge_mod [ ,only: sponge_init, sponge_driver ] sponge_init Mandatory initialization routine for bgrid_sponge_mod. Initializes sponge control parameters. sponge_driver Computes tendencies for sponge damping. NOTES * A namelist interface called bgrid_sponge_nml is read from file input.nml.
call sponge_init ( Hgrid ) DESCRIPTION This routine reads the bgrid_sponge_nml namelist and then defines sponge control parameters (stored internally in sponge_control_type). INPUT Hgrid Data structure containing horizontal grid constants. [horiz_grid_type]
call sponge_driver ( Hgrid, nplev, dt, dpde, Var, Var_dt ) DESCRIPTION Updates the prognostic variable tendencies with sponge (eddy damping) tendencies. The damping coefficients are controlled by namelist. INPUT nplev number of "pure" pressure levels at the top of the model [integer] dt adjustment time step [real] dpde current pressure thickness of model layers [real, dimension(Hgrid%ilb:,Hgrid%jlb:,:)] Var prognostic variables at the end of the last dynamics time step [prog_var_type] INPUT/OUTPUT Hgrid horizontal grid constants [horiz_grid_type] Var_dt prognostic variable tendencies accumulated since the variables were updated in Var [prog_var_type] NOTES The eddy damping is applied to "current" fields that have been updated with their time tendencies. For example, temp(current) = Var % t + dt * Var_dt % t.
&bgrid_sponge_nml num_sponge_levels The number of uppermost model levels where the sponge damping is applied. Currently, this cannot exceed one level. [integer, default = 0] sponge_coeff_wind Normalized [0,1] sponge damping coefficients sponge_coeff_temp for the top model level. sponge_coeff_tracer [real, default = 0.]
FATAL errors in bgrid_sponge_mod initialization not called Interface sponge_driver was called before calling sponge_init. numlev > 1 This version applies the sponge at only one model level. The namelist value cannot be set > 1.
None.
None.