osmose.size_spectrum

Community size-spectrum diagnostics from OSMOSE *DistribBySize output.

Reads the community size-distribution file directly (the OsmoseResults *_by_size accessors target a different, per-species layout), sums species per (Time, Size), windows by Time, and derives community indicators: the size spectrum, its log-log slope (reusing osmose.analysis.size_spectrum_slope), the Large-Fish Indicator, the value-weighted mean size, and the modal (peak) bin.

This is a length-biomass (or length-abundance) spectrum over linear cm bins, reported for trend/comparison — NOT the canonical Sheldon normalized-by-body-mass exponent. The slope is sensitive to the small-bin cutoff; use min_size_cm to fit the descending limb above the recruitment peak (see peak_size_cm).

Functions

compute_size_spectrum(output_dir, *[, ...])

format_size_spectrum_report(spec)

Markdown summary of a SizeSpectrum (honest about the slope's interpretation).

size_spectrum_timeseries(output_dir, *[, ...])

Per-timestep community slope / LFI / mean size (for trend lines).

spectrum_plot_df(spec)

Build the {size, abundance} df that plotting.make_size_spectrum_plot expects.

Classes

SizeSpectrum(metric, bin_edges, ...)