Model help:ROMSBuilder

The CSDMS Help System


ROMSBuilder is a CCA-CSDMS Modeling Tool (CMT) compliant component that creates another CMT compliant ROMS component. The new ROMS component is build as per the C-preprocessing options that defines a particular ROMS application.

Model introduction

ROMS extensively uses the C preprocessor (cpp) during compilation to replace code statements, insert files into the code, and select relevant parts of the code depending on its directives. There are numerous cpp options that can be activated in header files for your specific application. The preprocessor reads the source file (*.F) and builds a target file (*.f90) according to activated cpp options.

CPP options can be set through the CMT config tab dialogs. ROMSBuilder generates the header file for compiling the new ROMS component from the tab dialog inputs.

Uses ports

This will be something that the CSDMS facility will add

Provides ports

This will be something that the CSDMS facility will add

Main equations

A list of the key equations. HTML format is supported; latex format will be supported in the future


Backend: ROMSBuilder is written in Python and the main classes are and Default inputs are provided through roms_builder_input.cfg file. The three required input set on the tab dialogs for creating the new ROMS component are,

  • Header file path, this is the path to your header (*.h) file. The other option is to enter value into the tab dialogs. ex. /home/csdms/sims/roms_builder/upwelling
  • Application name, this should be the name of your new ROMS Application and must be specified in UPPERCASE. ex. UPWELLING
  • New component name, this is the name of the new component. As bocca cannot have two components with the same name, every time you create a new component the name should be unique.

ROMSBuilder creates the new component in home directory under "~/.cmt/components". It is safer not to edit the directory. Once a component is successfully created the next one goes relatively faster. To open the project user should go to "My Project > ROMSBuilder". The new project can only be seen by the owner. To share the project with the rest of the community please contact CSDMS.

Please wait for ROMSBuilder to finish before creating the next component. Overall run time is almost an hour for the first component.

"Performance efficient mode" is not meant for ROMSBuilder, hence please avoid setting it on the tab dialogs.

Default configuration settings is always that of UPWELLING. Please edit the config values to run your new roms component.


An example run with input parameters, BLD files, as well as a figure / movie of the output

Follow the next steps to include images / movies of simulations:

See also: Help:Images or Help:Movies


Jisamma Kallumadikal


Key papers


Any link, eg. to the model questionnaire, etc.