pvtend.OrthogonalBasisFields

class pvtend.OrthogonalBasisFields(phi_int: ndarray, phi_dx: ndarray, phi_dy: ndarray, phi_def: ndarray, phi_strain: ndarray, phi_lap: ndarray, weights: ndarray, mask: ndarray, x_rel: ndarray, y_rel: ndarray, Y_grid: ndarray, geopotential: ndarray | None = None, raw_phi_int: ndarray | None = None, raw_phi_dx: ndarray | None = None, raw_phi_dy: ndarray | None = None, raw_phi_def: ndarray | None = None, raw_phi_strain: ndarray | None = None, raw_phi_lap: ndarray | None = None, norms: Dict[str, float] | None = None, scale_factors: Dict[str, float] | None = None)[source]

Container for the six orthogonal basis fields.

phi_int

Intensification basis (Φ₁).

Type:

numpy.ndarray

phi_dx

Zonal propagation basis (Φ₂).

Type:

numpy.ndarray

phi_dy

Meridional propagation basis (Φ₃).

Type:

numpy.ndarray

phi_def

Shear deformation basis (Φ₄ = ∂²q/∂x∂y).

Type:

numpy.ndarray

phi_strain

Normal strain basis (Φ₅ = ∂²q/∂x² − ∂²q/∂y²).

Type:

numpy.ndarray

phi_lap

Laplacian/diffusion basis (Φ₆ = ∂²q/∂x² + ∂²q/∂y²).

Type:

numpy.ndarray

weights

2D weighting array.

Type:

numpy.ndarray

mask

Boolean mask for valid grid points.

Type:

numpy.ndarray

x_rel

1D relative x coordinates.

Type:

numpy.ndarray

y_rel

1D relative y coordinates.

Type:

numpy.ndarray

Y_grid

2D latitude grid.

Type:

numpy.ndarray

geopotential

Optional geopotential field.

Type:

numpy.ndarray | None

raw_phi_int

Raw (unorthogonalized) Φ₁.

Type:

numpy.ndarray | None

raw_phi_dx

Raw Φ₂.

Type:

numpy.ndarray | None

raw_phi_dy

Raw Φ₃.

Type:

numpy.ndarray | None

raw_phi_def

Raw Φ₄.

Type:

numpy.ndarray | None

raw_phi_strain

Raw Φ₅.

Type:

numpy.ndarray | None

raw_phi_lap

Raw Φ₆.

Type:

numpy.ndarray | None

norms

Dict of squared norms for each basis.

Type:

Dict[str, float] | None

scale_factors

PRENORM constants for rescaling.

Type:

Dict[str, float] | None

__init__(phi_int: ndarray, phi_dx: ndarray, phi_dy: ndarray, phi_def: ndarray, phi_strain: ndarray, phi_lap: ndarray, weights: ndarray, mask: ndarray, x_rel: ndarray, y_rel: ndarray, Y_grid: ndarray, geopotential: ndarray | None = None, raw_phi_int: ndarray | None = None, raw_phi_dx: ndarray | None = None, raw_phi_dy: ndarray | None = None, raw_phi_def: ndarray | None = None, raw_phi_strain: ndarray | None = None, raw_phi_lap: ndarray | None = None, norms: Dict[str, float] | None = None, scale_factors: Dict[str, float] | None = None) None

Methods

__init__(phi_int, phi_dx, phi_dy, phi_def, ...)

Attributes

geopotential

grid_shape

n_bases

Number of basis fields (always 6).

norms

raw_phi_def

raw_phi_dx

raw_phi_dy

raw_phi_int

raw_phi_lap

raw_phi_strain

scale_factors

phi_int

phi_dx

phi_dy

phi_def

phi_strain

phi_lap

weights

mask

x_rel

y_rel

Y_grid