pymoc.modules.Psi_Thermwind¶
-
class
pymoc.modules.Psi_Thermwind(f=0.00012, z=None, sol_init=None, b1=None, b2=0.0)¶ Thermal Wind Closure
Instances of this class represent the overturning circulation between two columns, given buoyancy profiles in those columns.
The model assumes a thermal-wind based equation for the overturning circulation as in Nikurashin and Vallis (2012):
\[d_{zz}\left(\Psi\right) = f^{-1} (b_2 - b_1)\]This equation is solved subject to the boundary conditions:
\[\Psi(0) = \Psi(-H) = 0\](these BCs are different than NV2012)
An upwind isopycnal mapping is used to compute the isopycnal overturning transport.
- Parameters
f (float) – Coriolis parameter. Units s-1
z (ndarray) – Vertical depth levels of overturning grid. Units: m
sol_init (ndarray; optional) – Initial guess at the solution to the thermal wind overturning streamfunction. Units: […]
b1 (float, function, or ndarray; optional) – Vertical buoyancy profile from the southern basin. Units: m/s2
b2 (float, function, or ndarray; optional) – Vertical buoyancy profile from the northern basin, representing the deepwater formation region. Units: m/s2
-
__init__(f=0.00012, z=None, sol_init=None, b1=None, b2=0.0)¶ - Parameters
f (float) – Coriolis parameter. Units s-1
z (ndarray) – Vertical depth levels of overturning grid. Units: m
sol_init (ndarray; optional) – Initial guess at the solution to the thermal wind overturning streamfunction. Units: […]
b1 (float, function, or ndarray; optional) – Vertical buoyancy profile from the southern basin. Units: m/s2
b2 (float, function, or ndarray; optional) – Vertical buoyancy profile from the northern basin, representing the deepwater formation region. Units: m/s2
Methods
Psib([nb])Remap the overturning streamfunction from physical depth space, into isopycnal space
Psibz([nb])Remap the overturning streamfunction onto the native isopycnal-depth space of the columns in the northern region and southern basin.
__init__([f, z, sol_init, b1, b2])- param f
Coriolis parameter. Units s-1
bc(ya, yb)Calculate the residuals of boundary conditions for the thermal wind closure boundary value problem.
ode(z, y)Generate the ordinary differential equation for the thermal wind overturning streamfunction, to be solved as a boundary value problem:
solve()Solve for the thermal wind overturning streamfunction as a boundary value problem based on the system of equations defined in
pymoc.modules.Psi_Thermwind.ode().update([b1, b2])Update the vertical buoyancy profiles from the southern basin and northern region.