# Regional Ocean Modeling System

Regional Ocean Modeling System (ROMS) est un modèle de circulation océanique à surface libre, suivant le terrain et basé sur les équations primitives, largement utilisé par la communauté scientifique pour un large éventail d'applications. Le modèle est essentiellement développé par des chercheurs de l’Université Rutgers et de l’Université de Californie à Los Angeles, mais est ouvert à la contribution de chercheurs et utilisateurs non-étasuniens.
Le modèle ROMS est utilisé pour simuler la manière dont une région donnée de l'océan réagit aux forces physiques telles que le vent ou un changement de température. Il peut également être utilisé pour modéliser la manière dont un système océanique réagit à des apports tels que les sédiments, l’eau douce, la glace ou les nutriments, nécessitant un couplage de ROMS avec d'autres modèles plus spécifiques.

## Cadre

ROMS est un modèle 4D. On considère qu'il est 4D car il permet de résoudre les équations primitives sur trois dimensions (une grille horizontale 2D et une grille verticale), et ce pendant le laps de temps demandé par l'utilisateur (le temps étant la quatrième dimension). Il est divisé en niveaux verticaux qui constituent la colonne d'eau et en cellules horizontales qui constituent les coordonnées du plan cartésien 2D de la région considérée.

### Noyau

Au cœur de ROMS se trouvent quatre modèles qui forment ce qu'on appelle le noyau dynamique/numérique :
* Noyau non linéaire (NLM) : NLROMS$^,$
* Noyau linéaire tangentiel de perturbation (TLM) : TLROMS
* Noyau de représentation linéaire tangent à amplitude finie (RPM) : RPROMS
* Noyau adjoint (ADM) : ADROMS

### Grille verticale

La grille verticale est une grille hybride étirée. Elle est hybride dans le sens où ses niveaux verticaux se situent quelque part entre les deux extrêmes que sont :
* la grille sigma à espacement régulier utilisée par le modèle océanique de Princeton
* une véritable grille z avec un intervalle de profondeur statique.
La grille verticale peut être comprimée ou étirée pour augmenter ou diminuer la résolution d'une zone d'intérêt, telle qu'une thermocline ou une couche limite de fond. L'étirement de la grille dans le sens vertical suit la topographie du fond, ce qui permet d'obtenir un écoulement idéalisé de l'eau au-dessus de caractéristiques telles que les monts sous-marins. La numérotation de la grille verticale va des eaux de fond vers l'interface air-eau : le niveau des eaux de fond est le niveau 1 et le niveau des eaux de surface le plus élevé est le numéro le plus élevé (par exemple le niveau 20 si l'on considère 20 niveaux verticaux). Avec un module sédimentaire couplé, la numérotation des niveaux de sédiments va de l'interface sédiments-eau vers le bas : le niveau de sédiments le plus élevé est le niveau 1 et le niveau de sédiments le plus profond est le numéro le plus élevé.

### Grille horizontale

La grille horizontale est une grille structurée, ce qui signifie qu'elle possède une structure fixe composée de plusieurs cellules rectangulaires. La grille horizontale est également une grille curviligne orthogonale, c'est-à-dire que la taille des cellules varie en fonction de la zone (petites et donc bien résolues dans les zones d'intérêt, larges dans les zones de peu d'intérêt comme la grille terrestre). La grille horizontale est également une grille décalée ou grille Arakawa-C, où les vitesses dans les directions nord-sud et est-ouest sont calculées sur les bords de chaque cellule de la grille, tandis que les valeurs des variables scalaires telles que la densité sont calculées au centre de chaque cellule de la grille, appelées « points rho ».

### Physique

Dans les directions verticale et horizontale, les équations par défaut sont résolues à l'aide de schémas aux différences finies centrés du second ordre. Des schémas d'ordre supérieur sont disponibles comme les schémas de reconstruction par spline parabolique.
En général, les schémas physiques utilisés par ROMS sont basés sur le set d'équations suivant :
* L'équation de continuité
* L'équation de conservation de quantité de mouvement (aussi équations de Navier-Stokes; voir Conservation de la quantité de mouvement)
* Les équations de transport des traceurs (tels que la salinité et la température)
Les équations sont couplées entre elle pour résoudre cinq inconnues à chaque emplacement de la grille du modèle à l'aide de solutions numériques. Ces cinq variables à résoudre sont :
* Vitesse est-ouest (u)
* Vitesse nord-sud (v)
* Vitesse verticale (w)
* Salinité
* Température

## Code source

ROMS est disponible en open source et peut être téléchargé en remplissant un formulaire de demande en ligne. Le modèle est codé en C (langage) et en Fortran, et est spécialement conçu pour être distribué sur plusieurs processeurs. Pour télécharger le code source, un utilisateur doit créer un compte et déposer une demande auprès des développeurs sur le site Web de ROMS.