FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
0140 — A converter from a Gaussian aggregation to the compact polynomial bump
ID 0140
Class ARCHITECTURE
Severity 1
Status ready

Models: —

Found: 2026-10-28

Evidence

AggregationField (include/fhsim_environment/AggregationField.h) takes aggregations as compact polynomial bumps (1 - r^2)^2 with semi-axes a, b, c, a horizontal angle phi and a biomass (ADR 0005). Future work, not implemented. Aggregation data and older school models often give a Gaussian: a mass and a standard deviation per axis. A user must convert by hand today.

Effect

A Gaussian has no edge, a bump has one at r = 1. A hand conversion is easy to get wrong (which moment to keep, and the factor between sigma and the semi-axis), and every user does it again.

Possible fix

A pure function GaussianToBump(mass, sigma[3], phi) that returns an Aggregation. Keep the total mass and the variance along each axis; the semi-axis follows from the variance of the (1 - r^2)^2 bump. State what is lost: the Gaussian tail beyond the semi-axis. Possibly an InitialStateFile option that accepts sigma instead of a, b, c.

Test that would prove it

The converted bump has the mass and the axis variances of the Gaussian to 1e-12 relative; the round trip bump to Gaussian to bump is the identity.

Risk

Low: a new function beside the field; it changes nothing that exists.