# mom_interface_heights module reference¶

Functions for calculating interface heights, including free surface height.

More…

## Functions/Subroutines¶

 find_eta_3d() Calculates the heights of all interfaces between layers, using the appropriate form for consistency with the calculation of the pressure gradient forces. find_eta_2d() Calculates the free surface height, using the appropriate form for consistency with the calculation of the pressure gradient forces.

## Detailed Description¶

Functions for calculating interface heights, including free surface height.

## Function/Subroutine Documentation¶

subroutine mom_interface_heights/find_eta_3d(h, tv, G, GV, US, eta, eta_bt, halo_size, eta_to_m, dZref)

Calculates the heights of all interfaces between layers, using the appropriate form for consistency with the calculation of the pressure gradient forces. Additionally, these height may be dilated for consistency with the corresponding time-average quantity from the barotropic calculation.

Parameters
• g :: [in] The ocean’s grid structure.

• gv :: [in] The ocean’s vertical grid structure.

• us :: [in] A dimensional unit scaling type

• h :: [in] Layer thicknesses [H ~> m or kg m-2]

• tv :: [in] A structure pointing to various thermodynamic variables.

• eta :: [out] layer interface heights [Z ~> m] or [1/eta_to_m m].

• eta_bt :: [in] optional barotropic variable that gives the “correct” free surface height (Boussinesq) or total water column mass per unit area (non-Boussinesq). This is used to dilate the layer thicknesses when calculating interface heights [H ~> m or kg m-2]. In Boussinesq mode, eta_bt and GbathyT use the same reference height.

• halo_size :: [in] width of halo points on which to calculate eta.

• eta_to_m :: [in] The conversion factor from the units of eta to m; by default this is USZ_to_m.

• dzref :: [in] The difference in the reference height between GbathyT and eta [Z ~> m]. The default is 0.

Call to
subroutine mom_interface_heights/find_eta_2d(h, tv, G, GV, US, eta, eta_bt, halo_size, eta_to_m, dZref)

Calculates the free surface height, using the appropriate form for consistency with the calculation of the pressure gradient forces. Additionally, the sea surface height may be adjusted for consistency with the corresponding time-average quantity from the barotropic calculation.

Parameters
• g :: [in] The ocean’s grid structure.

• gv :: [in] The ocean’s vertical grid structure.

• us :: [in] A dimensional unit scaling type

• h :: [in] Layer thicknesses [H ~> m or kg m-2]

• tv :: [in] A structure pointing to various thermodynamic variables.

• eta :: [out] free surface height relative to mean sea level (z=0) often [Z ~> m].

• eta_bt :: [in] optional barotropic variable that gives the “correct” free surface height (Boussinesq) or total water column mass per unit area (non-Boussinesq) [H ~> m or kg m-2]. In Boussinesq mode, eta_bt and GbathyT use the same reference height.

• halo_size :: [in] width of halo points on which to calculate eta.

• eta_to_m :: [in] The conversion factor from the units of eta to m; by default this is USZ_to_m.

• dzref :: [in] The difference in the reference height between GbathyT and eta [Z ~> m]. The default is 0.

Call to

mom_density_integrals::int_specific_vol_dp