Final projects

Final projects

You will work on the final project in a group of two.

Each project must be handed in as a single GitHub repository containing the scripts, documentation, unit and reference tests, Continuous Integration (CI) setup, instructions to run the code and reproduce the results, and references.

Warning

Keep your final project GitHub repository private until submission, unless it needs to be public to deploy the documentation.

Topics

Choose one of the projects listed below. Projects based on explicit solvers are less complex than those based on dynamic relaxation; to balance this out, the material provided to get you started on them contains fewer hints.

Dynamic relaxation-based solvers

Thermal (T), mechanical (M) and hydrological (H) processes, alone or coupled:

  1. TH: Porous convection
  2. TM: Free convection
  3. TM: Shear heating
  4. HM: Porosity waves
  5. M: Rock mechanics – shear strain localisation
  6. M: Ice sheet mechanics – shallow shelf approximation
  7. M: Fluid dynamics – Navier-Stokes equations

Explicit solvers

  1. Oceanography: Shallow water equations
  2. Seismic wave physics: Elastic wave propagation

Presentations

Prepare a few slides presenting your project: the physical problem and model equations, the code structure, your results, and an outlook. Each presentation consists of a 10-minute talk followed by 5 minutes of discussion. The emphasis is on your ability to clearly explain your code’s structure and implementation, and how these choices are reflected in your results.