
Package index
Running and simulating models
Primary package entry points for deterministic target-strength modeling and repeated simulation workflows.
-
target_strength() - Wrapper function to model acoustic target strength
-
simulate_ts() - Simulate target strength (TS) with flexible parameterization and batching
Model registry and extensions
Helpers for listing built-in models and registering custom model implementations for the current session or across sessions.
-
available_models() - List available target-strength models
-
register_model() - Register a user-defined target-strength model
-
unregister_model() - Remove a user-defined target-strength model registration
-
reset_model_registry() - Clear user-defined model registrations
Inspection, plotting, and reshaping
Helpers for pulling components out of package objects, visualizing stored results, and modifying geometry after construction.
-
extract() - Extract nested components, slots, or matrix/vector fields from objects
-
plot(<Scatterer>) - Plot scatterer geometry, stored model results, or stored TMM scattering views
-
translate_shape() - Translate a stored shape or scatterer component
-
reanchor_shape() - Re-anchor a stored shape or scatterer component along the x axis
-
offset_component() - Offset an internal scatterer component without rebuilding the object
-
inflate_shape() - Locally widen, pinch, or taper a stored shape profile
-
smooth_shape() - Smooth a stored shape or scatterer profile
-
resample_shape() - Resample a stored shape or scatterer profile to a new segment count
-
flip_shape() - Flip a stored shape or scatterer profile across the x or z axis
-
reforge() - Resize or reparameterize a scatterer object
-
brake() - Bend a scatterer body or body component
Bundled benchmark and example data
Built-in objects used throughout the package examples, validation workflows, and benchmark reproductions.
-
benchmark_ts - Benchmark model outputs from Jech et al. (2015)
-
cod - Sample cod shape with fully inflated swimbladder
-
krill - Sample krill (Euphausia superba) shape taken from McGehee et al. (1998)
-
sardine - Sample sardine shape with fully inflated swimbladder
Stored-state scattering products
Post-processing helpers that reuse stored T-matrix state for angular scattering, orientation averaging, diagnostics, and higher-level summary products.
-
tmm_scattering() - Evaluate scattering from a stored TMM object
-
tmm_scattering_grid() - Evaluate a 2D scattering grid from a stored TMM object
-
tmm_average_orientation() - Orientation-average scattering from a stored TMM object
-
tmm_orientation_distribution() - Build an orientation distribution for stored TMM post-processing
-
tmm_bistatic_summary() - Summarize bistatic products from a stored TMM object
-
tmm_diagnostics() - Diagnostics for stored single-target TMM solutions
-
tmm_products() - Collect multiple post-processed products from one stored TMM solve
Scatterer classes
General scattering classes that dictate expected parameters and model compatibility.
-
ScattererScatterer-class - Scatterer-class object for target strength estimation
-
CSCCSC-class - Composite scatterer (CSC) object/class.
-
ELAELA-class - Elastic-based scatterer (ELA) object/class.
-
BBFBBF-class - Backboned fish (BBF) object/class.
-
CALCAL-class - Solid and calibration sphere (CAL) object/class.
-
ESSESS-class - Elastic shelled scatterer (ESS) object/class.
-
GASGAS-class - Generic gas-filled scatterer (GAS) object/class.
-
FLSFLS-class - Fluid-like scatterer (FLS) object/class.
-
SBFSBF-class - Swimbladdered fish (SBF) object/class.
-
cal_generate() - Generate a CAL-class object.
-
ess_generate() - Generate an ESS-class object
-
fls_generate() - Generate a FLS-class object.
-
gas_generate() - Generate a GAS-class object
-
sbf_generate() - Generate a SBF-class object.
-
bbf_generate() - Generate a BBF-class object.
-
ShapeShape-class - Generic scattering shape object used throughout this package.
-
ArbitraryArbitrary-class - Arbitrary body shape
-
CylinderCylinder-class - Cylindrical body shape
-
PolynomialCylinderPolynomialCylinder-class - Cylindrical body shape deformed using a polynomial
-
OblateSpheroidOblateSpheroid-class - Oblate spheroidal body shape
-
ProlateSpheroidProlateSpheroid-class - Prolate spheroidal body shape
-
SphereSphere-class - Spherical body shape
Shape generation
Shape constructors, canonicalization helpers, and the convenience wrapper for canonical geometry.
-
canonicalize_shape() - Canonicalize one shape into a canonical surrogate
-
create_shape() - A wrapper function that automatically creates generalized and/or canonical shapes for TS modeling.
-
arbitrary() - Creates arbitrary body shape from user inputs
-
cylinder() - Creates a cylinder.
-
polynomial_cylinder() - Creates a polynomial deformed cylinder
-
oblate_spheroid() - Creates an oblate spheroid.
-
prolate_spheroid() - Creates a prolate spheroid.
-
sphere() - Creates a sphere.
Acoustic and Elastic Utilities
Utility functions for basic acoustic quantities, contrasts, and elastic material-property conversions.
-
wavenumber() - Calculate the acoustic wavenumber (\(k\)) for a given frequency and sound speed.
-
linear()db() - Convert between logarithmic (dB) and linear domains for backscatter values.
-
transmission_coefficient() - Plane wave/plane interface transmission coefficient
-
compressibility() - Calculate she compressibility (\(\kappa\)) of a scattering boundary/interface.
-
rho() - Calculate the density contrast (\(\rho\)) of a scattering boundary
-
along_sum() - Along-matrix summing function
-
gauss_legendre() - Gauss-Legendre nodes and weights
-
neumann() - Compute the Neumann factor \(\nu_{n}\)
-
vecnorm() - Calculates the Euclidean norm across each row of a given matrix.
-
jc()jcdk() - Cylindrical Bessel function of the first kind, \(J_\nu(z)\), and its respective derivatives
-
yc()ycdk() - Cylindrical Bessel function of the second kind, \(Y_\nu(x)\), and its respective derivatives
-
hc()hcdk() - Cylindrical Bessel function of the third kind (Hankel), \(H_\nu(x)\), and its respective derivatives
-
js()jsdk() - Spherical Bessel function of the first kind, \(j_\nu(z)\), and its respective derivatives
-
ys()ysdk() - Spherical Bessel function of the second kind, \(y_\nu(z)\), and its respective derivatives
-
hs()hsdk() - Spherical Bessel function of the third kind (Hankel), \(h_\nu(x)\), and its respective derivatives