GeostrophicTimeAverage#

class fridom.framework.projection.geostrophic_time_average.GeostrophicTimeAverage(mset: ModelSettingsBase, max_period: timedelta64 | float | int | None, n_ave: int = 4, equidistant_chunks: bool = True, backward_forward: bool = False, disable_diagnostic: bool = True)[source]#

Bases: Projection

Projection onto the geostrophic subspace using time-averaging

Description#

For a constant coriolis parameter, the linear geostrophic mode is constant in time, while the inertia-gravity wave modes are oscillatory. By averaging the flow over a time period, the inertia-gravity wave modes are removed. This process can be repeated for more effective removal of the inertia-gravity.

Parameters#

msetModelSettings

The model settings.

n_aveint

The number of averages to perform.

equidistant_chunksbool

Whether to split the averaging periods into equidistant chunks. If False, the averaging periods will be equal to the maximum period.

max_periodfloat

The maximum period of the time averages. If None, the maximum period is set to the inertial period.

backward_forwardbool

Whether to use backward-forward averaging.

disable_diagnosticbool

Whether to disable the diagnostic tendencies during the averaging.

Methods#

__call__(z: State) -> State

The projection of the state onto the geostrophic subspace using time-averaging.

__init__(mset: ModelSettingsBase, max_period: timedelta64 | float | int | None, n_ave: int = 4, equidistant_chunks: bool = True, backward_forward: bool = False, disable_diagnostic: bool = True) None[source]#

Methods

__init__(mset, max_period[, n_ave, ...])