Skip to main content

ROMS Communication Toolbox Python utilities to format text input for and run simulations of the Regional Ocean Modeling System (ROMS)

Project description

romscom: ROMS Communication Toolbox

This python toolbox provides tools to communicate with the Regional Ocean Modeling System (ROMS) model. The primary goal of this toolbox is to allow ROMS simulations to be run programmatically, simplifying tasks such as resetting time variables to extend or restart simulations, running parameter sensitivity studies, running large ensembles, or documenting a ROMS workflow.

The concept

I've paired YAML-formatted input files with python-based utilities to manipulate values.

The YAML files mimic the original ROMS standard input format, with key/value pairs for each ROMS input parameter. This format is easy to read by a human (especially with a text editor with YAML syntax highlighting), and allows for the same amount of ample commenting as in the traditional input files. These YAML files offer an advantage over the traditional standard input in that they can be (easily) read by high-level computing languages (like python) and then manipulated programmatically.

With this YAML/dictionary idea at its base, the toolbox then adds tools to maniplate ROMS I/O in order to prepare, run, and check in on simulations. In particular, it offers tools to:

  • Convert between YAML files, python dictionaries, and traditional ROMS standard input format
  • Manipulate time-related variables using dates and timedeltas, allowing more intuitive modification of ROMS start date, time step, archiving options, etc.
  • Examine existing output files to restart a simulation that was paused or crashed
  • Runs ROMS past periods of instability (leading to blow-ups) by temporarily reducing the model time step

See the included documentation for a more detailed description, examples of usage, and function syntax and documentation.

Installation and use

The toolbox can be installed into your environment of choice from PyPI:

pip install romscom

or conda-forge:

conda install -c conda-forge romscom 

Once installed, the primary and accessory functions from this package can be accessed in python via:

import romscom.romscom
import romscom.rcutils

Full function help, including syntax descriptions, can be accessed via the help command:

help(romscom.romscom) # All primary functions
help(romscom.rcutils) # All utility functions
help(romscom.romscom.runtodate) # Single function

This same documentation can also be viewed on the documentation website References pages.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

romscom-2025.6.1.tar.gz (748.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

romscom-2025.6.1-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

Details for the file romscom-2025.6.1.tar.gz.

File metadata

  • Download URL: romscom-2025.6.1.tar.gz
  • Upload date:
  • Size: 748.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for romscom-2025.6.1.tar.gz
Algorithm Hash digest
SHA256 b4c2dc79ebc2a14963e6dbb0781ea03561feb638ec0f2c67d64a49931129127d
MD5 69dd9be5b8782640156dea131fbae87e
BLAKE2b-256 7025142b18f4161cdb9f38c8cf8b5f4857ada036dcca4f0da2f35dce4bf5b34e

See more details on using hashes here.

File details

Details for the file romscom-2025.6.1-py3-none-any.whl.

File metadata

  • Download URL: romscom-2025.6.1-py3-none-any.whl
  • Upload date:
  • Size: 16.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for romscom-2025.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 98a53889fab89e0e74607b818d1e44cd2429c1be1a2bfe5acaf9e0a3ed6d2133
MD5 16487b4add4299ad88687a0defb85f7a
BLAKE2b-256 828684a96181807c96d94fe68e21d18e3ef8d9c343f795ba3983d61cb04e80b7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page