InternalModesBasis
Store solved vertical modes together with their component roles.
Declaration
classdef InternalModesBasis < CAAnnotatedClassOverview
InternalModesBasis is the canonical container for a solved vertical
mode basis. It records the sampled inverse modes \(F_j(z)\) and
\(G_j(z)\), the equivalent depths \(h_j\), the quadrature grid, and
whether each component has a Sturm-Liouville forward projection.
Geostrophic bases at \(\omega=0\) have canonical F and G projections,
\[\mathcal{F}_g^j[u] = \gamma_j^{-1}\int_{-D}^{0} u F_g^j\,dz, \qquad \mathcal{G}_g^j[\eta] = \frac{1}{g}\int_{-D}^{0} N^2 \eta G_g^j\,dz.\]Nonzero-\(\kappa\) IGW bases have a canonical G projection,
\[\mathcal{G}_\kappa^j[\eta] = \frac{1}{g}\int_{-D}^{0} \left(N^2-f_0^2\right)\eta G_\kappa^j\,dz,\]but no independent canonical wave-F projection.
basis = InternalModesBasis.fromSolverAtFrequency(im,0,nModes=32);
transform = basis.nativeTransform(component="G");
Topics
- Create vertical bases
InternalModesBasisCreate a persisted vertical basis from canonical state.fromSolvedModesCreate a basis from already-solved mode arrays.fromSolverAtFrequencySolve modes at fixed frequency and return an annotated basis.fromSolverAtWavenumberSolve modes at fixed horizontal wavenumber.
- Inspect basis properties
DWater-column depth \(D=z_{\max}-z_{\min}\).FSampled F inverse modes with rows matchingz.GSampled G inverse modes with rows matchingz.N2Buoyancy frequency squared sampled atz.componentRoleFComponent role label for the F component.componentRoleGComponent role label for the G component.f0Coriolis parameter used by the mode solve.forwardProjectionAvailableFBoolean flag indicating whether canonical F projection exists.forwardProjectionAvailableGBoolean flag indicating whether canonical G projection exists.gGravitational acceleration used by the mode solve.hEquivalent depths associated with the stored mode columns.kappaHorizontal wavenumber associated with the solve.omegaFrequency associated with the solve.orthogonalityWeightFOrthogonality weight label for F projections.orthogonalityWeightGOrthogonality weight label for G projections.problemTypeText label identifying the vertical eigenvalue problem.sourceDescriptionText label identifying the source solver or factory path.zDepth grid where the inverse modes are sampled.
- Build vertical transforms
fixedGridTransformBuild a transform on another transform’s vertical grid.modelTransformBuild a prefix-retained transform for model vertical grids.nativeTransformBuild a transform on the basis’ native vertical grid.observationProjectionBuild a vertical projection for an arbitrary observation grid.
- Analyze vertical spectra
spectralWeightsReturn Parseval weights for modal spectra.
- Other
Developer Topics
These items document internal implementation details and are not part of the primary public API.
- Developer topics