Skip to content
Hernan G. Arango edited this page Oct 22, 2024 · 7 revisions

Regional Ocean Modeling System (ROMS)

ROMS Check also https://www.myroms.org/wiki ROMS-JEDI
image image image

Introduction

This official community version of ROMS is developed and maintained at Rutgers, The State University of New Jersey, New Brunswick, New Jersey, USA. Currently, this git repository contains the following branches:

  • main: Tagged versions and the latest tagged stable release version of ROMS.
  • develop: Main developing branch of ROMS. It passes all internal tests.
  • feature branches: Research and new development branches recommended to superusers and beta testers.

The ROMS framework is intended for users interested in ocean modeling. It requires an extensive background in ocean dynamics, numerical modeling, and computers to configure, run, and analyze the results to ensure you get the correct solution for your application. Therefore, we highly recommend users register at https://www.myroms.org and set up a username and password to access the ROMS forum, email notifications for bugs/updates, technical support from the community, trac code maintenance history, tutorials, workshops, and publications. The User's ROMS forum has over 24,000 posts with helpful information. Technical support is limited to registered users. We do not provide user technical support, usage, or answers in GitHub.

This GitHub version becomes the official git repository for downloading, updating, improving, and correcting defects/bugs in the ROMS source code. It is also the version used in the ROMS-JEDI interface hosted at https://github.com/JCSDA-internal, which is currently private.

Instructions

Before downloading ROMS repositories, ensure that your ~/.gitconfig has the appropriate git-lfs configuration is used to download some test input and observation NetCDF files and other data correctly. Otherwise, the Test Cases requiring input NetCDF files will fail. The Git LFS is a command line extension and specification for managing large files with Git. A sample of the configuration file looks like this:

   more ~/.gitconf

   [user]
        name = GivenName MiddleName FamilyName
        email = your@email
   [credential]
        helper = cache --timeout=7200
        helper = store --file ~/.my-credentials
   [filter "lfs"]
        clean = git-lfs clean -- %f
        smudge = git-lfs smudge -- %f
        process = git-lfs filter-process
        required = true

Alternatively, you may execute git lfs pull at your location of this repository to download a viable version of the Git LFS files from the remote repository in GitHub. Also, to add the LFS filter to your existing ~/.gitconfig automatically, you could use git lfs install from anywhere in your computer directories.

Use the following command to download the ROMS source code:

git clone https://github.com/myroms/roms.git

The idealized and realistic ROMS Test Cases and the Matlab processing software can be downloaded from:

git clone https://github.com/myroms/roms_test.git
git clone https://github.com/myroms/roms_matlab.git

We highly recommend that Users clone all the ROMS repositories from the same root directory in their computer and define the ROMS_ROOT_DIR variable in their computer shell logging environment, specifying where the User cloned/downloaded the ROMS source code, Test Cases, and Matlab processing software:

setenv ROMS_ROOT_DIR  MyDownlodLocationDirectory

The build scripts will use this environmental variable when compiling any of the ROMS Test Cases without the need to customize the location of the ROMS source code. Also, it is used to load the path of Matlab scripts in the startup.m configuration file.

Clone this wiki locally