Verification
The following test are used to verify the correct behavior of REMORA. Each problem below has a subdirectory in Exec, which contains a sample inputs file and a README, the contents of which are reproduced below:
Advection
The Advection problem tests scalar advection of a gaussian concentration distribution on a doubly-periodic domain with flat bathymetry.
The file called inputs contains the single-level version of this test. The file called inputs_ml runs the problem with adaptive mesh refinement, refining where the passive tracer has a value greater than 0.5.
BioToy
This small doubly periodic box exercises the Fennel biology model against an ocean that is initialized and forced entirely from netCDF. The grid is 4x4 in the horizontal with 30 vertical levels, which keeps a run short enough to compare biology tendencies term by term while still resolving a stratified water column.
Physical state and bathymetry come from the netCDF initial and grid files. Winds, air temperature, humidity, pressure, shortwave radiation, and rain are read from the forcing file and drive bulk fluxes; longwave radiation is computed rather than read. Biology runs with carbon, denitrification, and bottom-sediment fluxes enabled. Vertical mixing uses the GLS scheme, the equation of state is nonlinear, and the bottom stress is quadratic.
The netCDF files needed to run this test can be found in the
remora-data
repository under the BioToy directory.
Boundary Layer
This problem reproduces the BL_TEST boundary layer test from ROMS, but with additional cloud cover, rainfall, and evaporation-precipitation. Due to the sensitivity of the problem, its tolerance is set higher for GPUS.
Channel Test
This problem reproduces the reentrant channel test case from []. It tests the development of turbulence and the GLS mixing scheme. The mean surface kinetic energy agrees with that from ROMS.
Dogbone
The Dogbone problem is a standard test in ROMS. The
inputs file matches the unrefined dogbone_whole case.
The netCDF files needed to run these tests can be found in the
remora-data
repository under the Dogbone directory.
DogboneAnalytic
The DogboneAnalytic problem is an analytic-initialized version of the
standard dogbone test in ROMS. The
inputs file matches the unrefined dogbone_whole case. inputs_ml does
the same but with refinement where the absolute x-velocities are in excess
of 0.05. inputs_ml_quad refines on the lower left quadrant of the grid.
inputs_ml_mid refines on the middle channel portion of the domain, like in the
ROMS nesting case.
Double Gyre
The DoubleGyre problem reproduces the classic wind-driven double gyre problem, similar to the ROMS test problem by the same name.
Doubly Periodic
The basic version of the DoublyPerioidic test simulates a flow with a depth-dependent horizontal velocity and temperature profile in a doubly-periodic domain with flat bathymetry. When non-flat bathymetry is used, the depth profile is the same as in the ROMS (and REMORA) Upwelling problem.
Ideal Mini Grid
This small idealized grid is used to test netCDF-provided initial and boundary
conditions. The ocean is initialized with zero velocity and a constant
temperature and salinity. Time-varying boundary conditions are then applied
for velocity, temperature, or salinity (provided by netCDF file). The default
is to use a clamped boundary condition for all quantities, but options for
Chapman-Flather and radiation conditions are available. This test also
verifies correct behavior with land-sea masking when using the _masked grid
file.
There is also a version of the problem with a file-specified surface wind
velocity (inputs file inputs_frc).
To test climatology nudging, use inputs_clim_nudg.
The netCDF files needed to run these tests can be found in the
remora-data
repository under the IdealMiniGrid directory.
Ideal River Grid
This small idealized grid is used to test netCDF-provided river sources. The ocean is initialized with zero velocity and a constant temperature and salinity. Rivers have 0 salinity.
The netCDF files needed to run these tests can be found in the
remora-data
repository under the IdealRivGrid directory.
Particle Advection Flat
This problem tests advection of tracer particles on a flat domain.
Seamount
The Seamount problem is a standard test in ROMS. The problem involves an (analytically) stably stratified fluid at rest over a seamount. In the absence of numerical errors, the fluid will remain at rest. However, this may not occur due to numerical errors in the calculation of the horizontal pressure gradient when the vertical coordinates are misaligned with the geopotential surfaces, as is the case in problems with spatially-varying bathymetry in ROMS/REMORA.