Skip to content

Repository files navigation

URN-SAM

Underwater Radiated Noise Semi-Analytical Model

URN-SAM is a modular research workflow for estimating received underwater noise levels from monthly vessel-density rasters, category source spectra, and precomputed Bellhop propagation kernels. The repository implements the workflow used in the accompanying URN-SAM article for the Spanish Levantine-Balearic Marine Demarcation. DOI: https://doi.org/10.1121/10.0046177

Author: Ignacio Soto-Molina

Scope

URN-SAM is intended for regional screening, prioritization, sensitivity analysis, and category-resolved diagnostics. It is not a vessel-resolved operational model and has not been certified for regulatory, navigational, industrial, professional, or safety-critical use.

Repository structure

URN-SAM/
├── 01_VesselEmission/
│   ├── compute_vessel_category_source_spectra.py
│   ├── CatEmission_v2.csv
│   ├── AIS Types.csv
│   └── Emodnet.txt
├── 02_DistributedEmission/
│   └── compute_distributed_source_emission.py
├── 03_Propagation/
│   ├── build_seasonal_ssp_profiles.py
│   ├── run_bellhop_cases.py
│   ├── extract_bellhop_kernels.py
│   └── compute_received_noise_from_kernels.py
├── 04_PostProcess/
│   ├── interpolate_received_level_rasters.py
│   ├── compute_vertical_temporal_statistics.py
│   ├── compute_threshold_exceedance_metrics.py
│   ├── plot_category_contributions.py
│   └── aggregate_received_level_statistics.py
├── docs/
│   ├── URNSAM_UserManual_V0.4.pdf
├── .gitattributes
├── .gitignore
├── CITATION.cff
├── LICENSE
├── README.md
├── environment.yml
└── requirements.txt

Requirements

The recommended installation uses Conda or Mamba because the workflow depends on geospatial libraries.

conda env create -f environment.yml
conda activate urn-sam

A pip requirements file is also provided:

python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux/macOS
source .venv/bin/activate

pip install -r requirements.txt

numba is optional but recommended. cupy is optional and should only be installed with a build compatible with the local CUDA version.

Bellhop solver

URN-SAM requires the Bellhop acoustic propagation solver from the Acoustics Toolbox. Bellhop is external software and is not distributed with this repository.

The results reported in the accompanying article were generated with the Windows 10 binaries dated 2020_11_4, available directly from the Acoustics Toolbox Windows 10 binaries archive. That package also includes the corresponding source code and compatible MATLAB routines for reading and writing model input and output files.

For strict reproduction of the article results, use that Bellhop release and provide the path to the Bellhop executable when requested by 03_Propagation/run_bellhop_cases.py.

Documentation

See:

The manual describes the required inputs, filename conventions, equations, article configuration, interactive options, and output structure.

Workflow

1. Vessel-category source spectra

python 01_VesselEmission/compute_vessel_category_source_spectra.py \
  --params 01_VesselEmission/CatEmission_v2.csv \
  --outdir outputs/01_source_spectra \
  --weight_col weight_unique

2. Distributed source emission

python 02_DistributedEmission/compute_distributed_source_emission.py

The script interactively requests the monthly vessel-density rasters, category parameters, bathymetry, coastal and port-distance inputs, and the output location.

3. Propagation

Run the propagation utilities in this order:

python 03_Propagation/build_seasonal_ssp_profiles.py
python 03_Propagation/run_bellhop_cases.py
python 03_Propagation/extract_bellhop_kernels.py
python 03_Propagation/compute_received_noise_from_kernels.py

4. Article-consistent vertical and temporal aggregation

python 04_PostProcess/compute_vertical_temporal_statistics.py \
  --total-root outputs/received_noise/total \
  --percat-root outputs/received_noise/perCat \
  --out-root outputs/postprocess/vertical_temporal \
  --dataset both

5. Analytical exceedance metrics

python 04_PostProcess/compute_threshold_exceedance_metrics.py \
  --stats-root outputs/postprocess/vertical_temporal \
  --out-root outputs/postprocess/threshold_metrics \
  --dataset both

6. Category contribution summary

python 04_PostProcess/plot_category_contributions.py \
  --root outputs/postprocess/vertical_temporal/perCat/v25100500/01_monthly_vertical \
  --output-dir outputs/postprocess/category_contributions \
  --year 2022 \
  --variant v25100500

Input data

Large external datasets and generated rasters are not included. Users must obtain or prepare the relevant EMODnet vessel-density products, GEBCO bathymetry, World Ocean Atlas fields, coastline/port-distance layers, Bellhop executable, and project-specific category parameter tables as described in the manual.

Do not commit credentials, access tokens, private data, or large generated raster collections.

Scientific references

The source-spectrum implementation follows the JOMOPANS-ECHO reference spectrum model:

  • MacGillivray, A., and de Jong, C. (2021). A reference spectrum model for estimating source levels of marine shipping based on Automated Identification System data. Journal of Marine Science and Engineering, 9(4), 369.

The propagation stage uses Bellhop:

  • Porter, M. B. (2011). The BELLHOP Manual and User's Guide: Preliminary Draft.

Additional references and dataset sources are listed in the user manual.

Citation

If you use URN-SAM, please cite:

Soto-Molina, I., Arce Ruíz, R., Ausejo Prieto, M., & Díaz-Redondo, M. (2026). URN-SAM: Underwater radiated noise semi-analytical model. Applied in the Spanish Levantine-Balearic marine demarcation. The Journal of the Acoustical Society of America, 160(2), 1881–1892. https://doi.org/10.1121/10.0046177

Citation metadata are also provided in CITATION.cff.

BibTeX

@article{10.1121/10.0046177,
    author = {Soto-Molina, Ignacio and Arce Ruíz, Rosa and Ausejo Prieto, Miguel and Díaz-Redondo, María},
    title = {URN-SAM: Underwater radiated noise semi-analytical model. Applied in the Spanish Levantine-Balearic marine demarcation},
    journal = {The Journal of the Acoustical Society of America},
    volume = {160},
    number = {2},
    pages = {1881-1892},
    year = {2026},
    month = {08},
    issn = {0001-4966},
    doi = {10.1121/10.0046177},
    url = {https://doi.org/10.1121/10.0046177},
    eprint = {https://pubs.aip.org/asa/jasa/article-pdf/160/2/1881/21122388/1881_1_10.0046177.pdf},
}

License

This project is licensed under the GNU General Public License v3.0. See LICENSE.

Disclaimer

The software is provided without warranty. Users are responsible for checking input data, configuration, numerical outputs, and fitness for their intended application.

About

URN-SAM: a semi-analytical model for estimating regional underwater radiated noise from vessel-density data using Bellhop propagation kernels.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Contributors

Languages