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
waveModeVerticalStructureAtIndexwith 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 preserveN0andisHydrostatic.
[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, andssv, 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
InternalModesdependency floor to1.3.0and theSplineCoredependency floor to^2.2.0. - added
chebfunas a direct dependency for the model’s direct chebfun helper usage. - migrated the
eta_truespline fit to theSplineCore2.xBSplineconstructor, knot, and basis-matrix APIs. - modernized WaveVortexModel’s
InternalModescall sites to the lowerCamel mode and quadrature APIs, including the newmodesAtQuadraturePointshelper.
[4.0.6] - 2026-05-06
- raised the
ClassAnnotationsandNetCDFdependency floors so OceanKit installs resolve the NetCDF function-handle serialization support required by annotated persistence. - fixed
WVAdaptiveDampingforWVTransformConstantStratificationby routingeffectiveJMaxthrough the constant-stratification geometry superclass. - fixed constant-stratification
rhoFunctionandN2Functionhandles so they preserve the shape of caller-providedzarrays. - added
zeta_xandzeta_yas known variables forWVTransformConstantStratification, matching the hydrostatic and Boussinesq transforms. - restored
fluxForForcingonWVTransformConstantStratificationso diagnostics can compute forcing flux summaries. - added constant-stratification
F_gandG_gspectrum/cross-spectrum helpers needed by diagnostics.
[4.0.5] - 2026-05-06
- changed
shouldUseTrueNoMotionProfileto 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 therho_nmcache when toggled.
[4.0.4] - 2026-04-22
- added
shouldUseTrueNoMotionProfileto the constant-stratification, hydrostatic, and Boussinesq transforms soeta_trueusesrho_nm0by default andrho_nmwhen explicitly requested. - added an advisory
EtaTrueOperation:OptimizationToolboxUnavailablewarning whenshouldUseTrueNoMotionProfile=trueandrho_nmis being computed without Optimization Toolbox support. - added focused tests covering
eta_trueprofile selection, warning behavior, transform-copy preservation, and NetCDF round-trip persistence ofshouldUseTrueNoMotionProfile. - changed
WVTransform.versionto read fromresources/mpackage.jsoninstead of a hard-coded version string so runtime metadata stays aligned with the package manifest.
[4.0.3] - 2026-04-22
- pinned
InternalModesto1.0.1so MPM resolves aSplineCore-compatible dependency set forWaveVortexModelinstalls.
[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.