Core Concepts#
Rompy is a Python library for generating ocean model control files and required input data ready for ingestion into the model. The framework is separated into two broad concepts:
A model run. |
|
Base class for model templates. |
There is information about each of these in the documentation of each object, but at a high level, ModelRun is the high level framework that renders the config object and controls the period of which the model is run, and the config object is responsible for producing model configuration.
If we consider a very simple case using the BaseConfig class. This is not inteded to do anything except provide a bass class on which to implement a specific model, however, is is functional and can be used to demonstrate core concepts.
Core objects#
Grid#
Grids form a core component of any model. Rompy provides a base class for grids, and a regular grid class. Support for other grid types will be added in the future.
Representation of a grid in geographic space. |
|
Regular grid in geographic space. |
Data#
Data objects are used to represent data inputs into the model. Rompy provides the following base classes for data objects:
Data source for model ingestion. |
|
Data object for model ingestion. |
|
Abstract base class for a source dataset. |
|
Source dataset from file to open with xarray.open_dataset. |
|
Source dataset from intake catalog. |
Boundary#
Wave boundary data from station datasets. |
|
Wavespectra dataset from wavespectra reader. |
Spectrum#
Logarithmic wave frequencies. |
Model Run#
A model run. |