Double Gyre
This is the example of a double-gyre wind-driven circulation in
a rectangular basin of size 3672 km x 2754 km.
To run this code properly you need to:
- Modify subroutine winds.F to set the winds
analytically instead of reading it from a file.
The steps are the following:
- Change the name of the subroutine
Set_Wind to Set_Wind_Bogus (or
just comment it out).
- Change the name of the subroutine
Set_Wind_Dgyre to Set_Wind
- In file setups.F: comment the call
to Read_Winds, and uncomment the
call to Set_Wind.
- Copy the Sflags.h and dimns.F90 files
to the src directory.
- Change the Makefile to compile shallow with the
initialization file trest.F. This way the simulation
starts from a state of rest.
- Build the executable.
- run the code:
shallow < dgyre.in
This code was used to test the filtering strategy devised by
Julia Levin et al. I have commented out the FILTER flag in
Sflags.h. If filtering is desired, the flag can be turned on
again. Currently it is set to filter every 6 steps of the
simulation.
- Configuration files for double gyre problem:
- Postprocessing scripts
- Contour drawing matlab script pcont.m to visualize interface contours
- Contour drawing NCAR script for "contours" to visualize interface
elevation zeta.com
- Grid drawing NCAR script for "drawcoast" grid.com