Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Overview

C-SON Forge streamlines the creation of ROMS-MARBL domains by automating the generation of all required input files using ROMS Tools. The files include grids, initial conditions, boundary and surface forcing, rivers, and tidal forcing—from a variety of observational and reanalysis datasets.

The tool produces blueprint YAML files that capture the complete configuration and file paths for each domain, enabling reproducible model setups that can be integrated into C-Star workflows.

Key Features

Project Structure

cson-forge/
├── workflows/
│   ├── cson_forge.py           # Core orchestration (ModelSpec, ROMSInputs, OcnModel)
│   ├── source_data.py          # Dataset download and preparation
│   ├── config.py               # Path management and system detection
│   ├── models.yml              # Model configuration specifications
│   ├── catalog.py              # Blueprint catalog
│   ├── blueprints/             # Generated blueprint YAML files
│   │   └── {model}_{grid}/
│   │       ├── blueprint_{model}-{grid}.yml
│   │       └── _{input_type}.yml
│   ├── model-configs/          # Model source code & input file templates
│   └── builds/                 # Model compilation directories
└── README.md

Blueprint System

Blueprints are YAML files that capture the complete state of a ROMS domain configuration. Each blueprint includes:

These blueprints enable:

  1. Reproducibility: Exact recreation of model setups from a single YAML file

  2. C-Star Integration: Blueprints can be consumed by C-Star workflows to orchestrate model runs

  3. Documentation: Self-documenting domain configurations with full provenance

  4. Version Control: Track domain evolution and share configurations across teams