Request: Numerical modeling course syllabi

General scientific issues regarding ROMS

Moderators: arango, robertson

Post Reply
Message
Author
jpringle
Posts: 108
Joined: Sun Jul 27, 2003 6:49 pm
Location: UNH, USA

Request: Numerical modeling course syllabi

#1 Unread post by jpringle »

Dear modelers --

I am teaching an advanced graduate course in numerical ocean modeling in the spring, and thus must call it into existence. Students will have had fluids and PDE's and introductory physical oceanography. Most will have had GFD.

I would love to see your syllabi if you have taught such a course -- jpringle@unh.edu or attach to a response here. I am interested in seeing what you felt important to cover, how you approached it, and what resources you used.

Tentatively, I will cover:
  • Basic finite difference schemes for diffusion, advection, and gravity waves, with associated time stepping schemes.
  • Heuristics for turbulence schemes
  • Basic ROMS configurations & Parallelization
I assume students will write their own simple toy models.

Thank you!
Jamie Pringle
jpringle@unh.edu

MIDHILAVARNAV
Posts: 30
Joined: Fri Dec 15, 2017 6:07 pm

Re: Request: Numerical modeling course syllabi

#2 Unread post by MIDHILAVARNAV »

The following is the syllabus of Department of Physical Oceanography CUSAT, splitted into theory and practical sections.

Please find the attached figures giving details about the theory syllabus
MODELING1.png
MODELING1.png (241.46 KiB) Viewed 11713 times
The syllabus for practicals section is given by the following attachment
Practical_modeling.png
.

andres
Posts: 54
Joined: Tue May 06, 2003 4:35 pm
Location: University of Concepcion
Contact:

Re: Request: Numerical modeling course syllabi

#3 Unread post by andres »

Hi Jamie,

Here at University of Concepcion we have the following approach. There is a course called Applied Ocean Modelling mostly for advanced undergraduates and the rare desperate graduate student whose advisor told her/him to add a chapter with a numerical model in their thesis. The objective is to teach the practical use of an ocean model, by default it has been ROMS_AGRIF (now CROCO), but the idea is the same for FVCOM, ROMS, or another model, basically to focus on the second part of what you are thinking, ROMS configuration and basic experiments. Those students that actually continue with an interest in ocean modelling (2 out of 10 here) might then (or before) take a course on finite differences, build a toy model, etc, and hopefully do a research topic of undergraduate thesis with the model. The point is to allow them to acquire experience from a young age. It is a bit of a black box approach.

The topics that are usually covered are when focusing on general knowledge/basic concepts and technical language are ("theory" class)

Introduction to numerical modelling (language, history)
Overview of basic tools in Matlab/Linux
Pre-Postprocessing tools
Grid Generation
Atmospheric Forcing and Ocean Reanalysis
Model Validation
Lagrangian Tools
Biogeochemical modules

In practical term I try to show them how to do the following cases with a known configuration (Benguela domain), and ask them to repeat this in a domain of their choice.

0) Install and compile the model in their laptop
1) Create a Climatological Simulation
2) Make all sort of descriptive plots from a model output
3) Make validation plots using model output and satellite SST.
4) Change vertical resolution, horizontal resolution, model time step, time step for model output.
5) Do a hindcast (BC from a reanalysis)
6) Do a forecast
7) Add tides, NPZD module, plot the new variables
8) Use a lagrangian model (OpenDrift)

in between we discuss a few papers so they learn how to identify BC, IC, spin up in a model description.

If they advance fast, a good idea is to ask them to repeat the same, but for a new domain. This usually creates new errors and they learn 1) how do they look like, 2) how to solve them.

Hope this helps
Andres Sepulveda

------------------------------
Geophysics Department
University of Concepcion

jpringle
Posts: 108
Joined: Sun Jul 27, 2003 6:49 pm
Location: UNH, USA

Re: Request: Numerical modeling course syllabi

#4 Unread post by jpringle »

Thanks everyone!
Jamie

jklinck
Posts: 34
Joined: Mon Jun 30, 2003 2:29 pm
Location: CCPO/ODU, USA

Re: Request: Numerical modeling course syllabi

#5 Unread post by jklinck »

I have taught an ocean modeling class a number of times over a number of years. My philosophy is that students need to know the basics before working with a publicly available ocean model (any of them). They also need to understand programming and debugging.

The class I teach lasts one semester (13 weeks). I usually present the information in 3hr per week with a 2hr help session (not required) to help with code development and debugging. The topics covered depend on the capability of the students. I base the class on the wind driven gyre solution (bottom and lateral friction). Using the vorticity-streamfunction dynamics allows introducing time stepping as well as elliptic solvers. I follow that with primitive equation dynamics which introduces staggered grids.

I have the students write relatively simple 1D and 2D versions of these two models. The class usually has 8-10 homework problems, each of which is a model (some are simple extensions of earlier models). They must program the models from scratch. In the past I focused on FORTRAN, but I allowed other languages (e.g., C). Currently, I allow MATLAB or python as long as the students use loops to address array values to construct the models (no internal tools).

The outline for the class is
introduce two generic problems: QG and shallow water (SW) dynamics
finite difference, Taylor series, truncation error
conservative property, solution to ODE (tridiagonal solver)
analysis of stability, advective and diffusive 1D equations
solutions to 1D QG models: implicit/explicit, leapfrog, AB2/3, advection eqn, diffusion eqn, 1D QG, conservation and diagnostics
solutions to 2D linear QG model, elliptic solvers (2D)
advective terms in QG models, computational dispersion, Jacobian formulation, advection of scalars
masking, islands, multiple layers in QG models
linear 2D SW models, gravity waves, amplification and dispersions, spatially staggered grids
hyperbolic processes in SW models, advection terms
open boundary conditions, nudging
terrain following coordinates

After this class, I feel that students are able to understand an OGCM, although there are still a number of topics to understand.

I am happy to hear alternative points of view.

User avatar
arango
Site Admin
Posts: 1367
Joined: Wed Feb 26, 2003 4:41 pm
Location: DMCS, Rutgers University
Contact:

Re: Request: Numerical modeling course syllabi

#6 Unread post by arango »

Indeed, I took that class from John Klinck when I was a graduate student at Texas A&M. I learned a lot about coding and ocean numerical modeling in that first class. It was a great introduction to a world that it is now my professional life. I recall that we, the students, and John, enjoyed that class tremendously by coding, debugging, and learning how to plot our results with the capabilities existing in the early 1990s. No Matlab neither NetCDF then. Sometimes, we have to contour the results by hand. Years ago, when my basement flooded, I found the computer printouts of the models that I coded for that class and John's annotations in the codes and grades. Nowadays, I can model that hurricane Irene very well with my ESMF/NUOPC WRF-ROMS coupling system. I guess that my coding has improved much now, right, John?

At that time, John was very interested in the flow over canyons. I was proud that after years playing with then, John used ROMS to get great numerical solutions.

Thank you, John, very much for introducing to the wonderfull world ocean numerical modeling. Something that I am very passionate about every day still. I didn't realize that it was my calling when applying to graduate school in physical oceanography.

User avatar
kate
Posts: 4091
Joined: Wed Jul 02, 2003 5:29 pm
Location: CFOS/UAF, USA

Re: Request: Numerical modeling course syllabi

#7 Unread post by kate »

Harper and I were talking today about how he learned Matlab in grad school. I said I did not, but I did have Bob Parker's
code for creating contour plots back in the 1980's.

User avatar
arango
Site Admin
Posts: 1367
Joined: Wed Feb 26, 2003 4:41 pm
Location: DMCS, Rutgers University
Contact:

Re: Request: Numerical modeling course syllabi

#8 Unread post by arango »

I learned how to program and plot with the NCARG graphical library. I spent so much time reading the manuals and learning how to use that library. It was very satisfying plotting the results with computer-generated contours. I became a pro using that wonderful library. I still used it today. I wrote quite a compressive ROMS plotting package using the NCARG library. Nothing like true vector graphics. Even today, vector graphics are quite rare.

larspr
Posts: 3
Joined: Wed Dec 18, 2019 11:19 pm
Location: Norwegian Meteorological Institute

Re: Request: Numerical modeling course syllabi

#9 Unread post by larspr »

At the University of Oslo I have taught and developed a course on fundamental numerical methods for geophysical fluid dynamics for more than a decade (GEF4510). Early on the course was developed in collaboration with Dr. James J. O’Brien at the Florida State University (1935-2016).

The purpose of the course is to give the students an insight into the fundamental issues involved in putting atmospheres and oceans on computers. Through the course the students therefore get a hands on experience and thereby insight into how to develop and solve finite difference equations of simple problems such as diffusion, advection, and rotating shallow water equations which is central in any numerical model of the atmospheres and oceans. In my view it is important that today's students know something about the inner workings of today’s complex numerical models used for predicting atmospheric and oceanic weather and climate, so as to be in a better position later in their career to analyze model results and/or provide feedback to model developers.

The course covers in some detail how to develop and solve numerically the diffusion, advection and shallow water equations in one and two dimensions and how to handle open boundaries (including one and two-way nesting). It starts by presenting the governing equations and continues with some preliminaries about elliptic, parabolic and hyperbolic equations, the importance of boundary conditions, finite difference approximations, Taylor series, truncation errors, Fourier series and transforms and orthogonal functions. Then details on how to use numerical methods to solve the diffusion, advection and shallow water problems are presented and important topics such as numerical diffusion, dispersion, dissipation and damping, computational modes and numerical instability are introduced. Various schemes are presented and analyzed and also why staggered grids are needed. Towards the end of the course some advanced topics such as higher order advection schemes, combined advection-diffusion equations, nonlinear instabilities and spectral methods are presented. Also covered are generalized vertical coordinates, and how to transform the primitive equations from geopotential coordinates to terrain-following (ROMS) and isopycnal coordinates (HYCOM and MICOM).

During the course the student are required to turn in solutions to at least four computer problems containing both analytic and numerical aspects of geophysical fluid dynamics such as vertical mixing in a coupled atmosphere-ocean model, equatorial jet currents, flux corrective methods (e.g., MPDATA), geostrophic adjustment, storm surges, Rossby waves, Kelvin waves and upwelling in the ocean. The course is a 13 week course, and lectures are given 2 x 2 hours a week.

I have recently completed a textbook based on my lecture notes which is published on Springer Nature as referenced below. The book contains 11 computer problems (without solutions though).

Reference to book:
Røed, L. P., 2019: Atmospheres and Oceans on Computers: Fundamental Numerical Methods for Geophysical Fluid Dynamics. Springer Textbooks in Earth Sciences, Geography and Environment, 275 p., doi: 10.1007/978-3-319-93864-6.

jpringle
Posts: 108
Joined: Sun Jul 27, 2003 6:49 pm
Location: UNH, USA

Re: Request: Numerical modeling course syllabi

#10 Unread post by jpringle »

Lar's --

Thanks for bringing up your book. I like it very much.

Jamie

jpringle
Posts: 108
Joined: Sun Jul 27, 2003 6:49 pm
Location: UNH, USA

Re: Request: Numerical modeling course syllabi

#11 Unread post by jpringle »

Just to close this discussion. I ended up using Lars Roed's book, referenced above. I found it a very good fit to the class, and was very happy with it. It worked well with my approach of having students build a series of simple numerical models as various dynamics were introduced in Lars' book. The students also greatly appreciated the practical parts of the book, and the brief introduction to Fortran.

Right now they are implementing thesis related projects in ROMS and openFOAM.

Jamie

bronwyn
Posts: 26
Joined: Sun Nov 27, 2005 10:54 pm
Location: Free University Berlin

Re: Request: Numerical modeling course syllabi

#12 Unread post by bronwyn »

I also like this book very much. I've been building a Western Baltic Sea ROMS application from scratch recently and have found it to be a very useful reference when I have needed support understanding the various dynamics. Thanks for bringing it to the community!

Post Reply