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
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.
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
The recommended installation uses Conda or Mamba because the workflow depends on geospatial libraries.
conda env create -f environment.yml
conda activate urn-samA pip requirements file is also provided:
python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux/macOS
source .venv/bin/activate
pip install -r requirements.txtnumba is optional but recommended. cupy is optional and should only be installed with a build compatible with the local CUDA version.
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.
See:
The manual describes the required inputs, filename conventions, equations, article configuration, interactive options, and output structure.
python 01_VesselEmission/compute_vessel_category_source_spectra.py \
--params 01_VesselEmission/CatEmission_v2.csv \
--outdir outputs/01_source_spectra \
--weight_col weight_uniquepython 02_DistributedEmission/compute_distributed_source_emission.pyThe script interactively requests the monthly vessel-density rasters, category parameters, bathymetry, coastal and port-distance inputs, and the output location.
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.pypython 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 bothpython 04_PostProcess/compute_threshold_exceedance_metrics.py \
--stats-root outputs/postprocess/vertical_temporal \
--out-root outputs/postprocess/threshold_metrics \
--dataset bothpython 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 v25100500Large 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.
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.
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.
@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},
}
This project is licensed under the GNU General Public License v3.0. See LICENSE.
The software is provided without warranty. Users are responsible for checking input data, configuration, numerical outputs, and fitness for their intended application.