Version History

[Unreleased]

  • Made transform restoration read-only by default, eliminated hidden duplicate NetCDF handles, and made one-output restoration close its file before returning.
  • Changed model restart to complete read-only restoration before acquiring its single writable output handle, and made model output closure explicitly release that handle.

[4.1.1] - 2026-07-26

  • Added waveModeVerticalStructureAtIndex with optimized wave F and vertical-derivative G endpoint factors for constant-stratification, hydrostatic, and Boussinesq geometries; fixed constant-stratification resolution and explicit-antialias conversions to preserve N0 and isHydrostatic.

[4.1.0] - 2026-07-24

  • registered flow components now automatically expose supported standard and sea-surface variables.
  • added flow-component diagnostics for pi, ssh, ssu, and ssv, and corrected component pressure to use the selected component rather than total pressure height.
  • added periodic two-dimensional interpolation support for surface fields while preserving three-dimensional interpolation behavior.
  • added focused tests for composed-component closure and linear two- and three-dimensional interpolation across periodic boundaries.

[4.0.7] - 2026-05-06

  • raised the InternalModes dependency floor to 1.3.0 and the SplineCore dependency floor to ^2.2.0.
  • added chebfun as a direct dependency for the model’s direct chebfun helper usage.
  • migrated the eta_true spline fit to the SplineCore 2.x BSpline constructor, knot, and basis-matrix APIs.
  • modernized WaveVortexModel’s InternalModes call sites to the lowerCamel mode and quadrature APIs, including the new modesAtQuadraturePoints helper.

[4.0.6] - 2026-05-06

  • raised the ClassAnnotations and NetCDF dependency floors so OceanKit installs resolve the NetCDF function-handle serialization support required by annotated persistence.
  • fixed WVAdaptiveDamping for WVTransformConstantStratification by routing effectiveJMax through the constant-stratification geometry superclass.
  • fixed constant-stratification rhoFunction and N2Function handles so they preserve the shape of caller-provided z arrays.
  • added zeta_x and zeta_y as known variables for WVTransformConstantStratification, matching the hydrostatic and Boussinesq transforms.
  • restored fluxForForcing on WVTransformConstantStratification so diagnostics can compute forcing flux summaries.
  • added constant-stratification F_g and G_g spectrum/cross-spectrum helpers needed by diagnostics.

[4.0.5] - 2026-05-06

  • changed shouldUseTrueNoMotionProfile to be a post-initialization setting that is not accepted by constructors or persisted through NetCDF round trips, while preserving transform-copy behavior and invalidating only the rho_nm cache when toggled.

[4.0.4] - 2026-04-22

  • added shouldUseTrueNoMotionProfile to the constant-stratification, hydrostatic, and Boussinesq transforms so eta_true uses rho_nm0 by default and rho_nm when explicitly requested.
  • added an advisory EtaTrueOperation:OptimizationToolboxUnavailable warning when shouldUseTrueNoMotionProfile=true and rho_nm is being computed without Optimization Toolbox support.
  • added focused tests covering eta_true profile selection, warning behavior, transform-copy preservation, and NetCDF round-trip persistence of shouldUseTrueNoMotionProfile.
  • changed WVTransform.version to read from resources/mpackage.json instead of a hard-coded version string so runtime metadata stays aligned with the package manifest.

[4.0.3] - 2026-04-22

  • pinned InternalModes to 1.0.1 so MPM resolves a SplineCore-compatible dependency set for WaveVortexModel installs.

[4.0.2] - 2026-01-16

  • new moment based algorithm for computing rho_nm.
  • eta_true now computed from high order spline representation of rho_nm; recores SplineCore package.
  • added placeParticlesOnIsopycnals function to all WVStratification subclasses.

[4.0.1] - 2025-12-11

  • initial mpm ci release

4.0.0 - 2025-08-05

  • Added support for `WVForcing’, a mechanism for adding arbitrary forcing to the model which also also the nonlinear fluxes to be automatically diagnosed.
  • Added `WVObservingSystems’, a mechanism for adding user defined observing systems to the model, such as drifters, mooring, along-track altimetry.

3.0.0 - 2024-07-25

  • Full implemented non-hydrostatic forwards model, passing all unit tests.

2.0.0 - 2021-11-05

  • Fully non-linear forwards model for hydrostatics.
  • Never formally declared version 2.0, but on this date we successfully modeled the Cyprus eddy example from the JFM directly in the WaveVortexModel.

1.0.0 - 2020-09-18

  • All units test passed and declared version 1.0 for the JFM paper.

0.9.0 - 2018-01-04

  • Model expanded to project any state of the fluid onto the complete wave-vortex basis, and time step the state forward linearly. The code was moved to Matlab.

0.0.1 - 2014-12-10

  • Initially released as a linear internal wave model that time stepped forward non-hydrostatic internal gravity waves in variable stratification using internal wave modes. The code was written in C and Objective-C.

This site uses Just the Docs, a documentation theme for Jekyll.