Differences between revisions 33 and 34
Revision 33 as of 2014-05-21 08:15:31
Size: 4089
Editor: CarstenEden
Comment:
Revision 34 as of 2014-05-21 08:18:00
Size: 4085
Editor: CarstenEden
Comment:
Deletions are marked like this. Additions are marked like this.
Line 38: Line 38:
=== Installation ===
1. Make a new directory where the model code should be placed. Name the directory as dir (for instance)
=== Installation (only for students of UHH) ===
Line 41: Line 40:
2. Login at the remote server thunder1 (Only for students in UHH) 1. Login at the remote server thunder1
Line 46: Line 45:
3. Once you logged in, find home directory of u241155
2. Once you logged in, make a new directory where the model code should be placed. Name the directory as dir (for instance)


3. Find home directory of u241155
Line 54: Line 57:
cp home/zmaw/u241155/pyOM_thunder cp home/zmaw/u241155/pyOM_thunder <dir>
Line 56: Line 59:
4. Then, by different Fortran subroutines and Python methods in the model configuration
Line 58: Line 60:
environments in specific realizations can be shown. 4. Now all model code and Fortran subroutines and Python methods for the model configuration
 can be find in <dir>
Line 60: Line 63:
List of Directories List of Directories in <dir>

Python Ocean Model (pyOM)

Introduction

A numerical Ocean Circulation Model to configure and to integrate idealized numerical simulations with python (GUI) and a standard Fortran90 frontend.

In both cases, the dynamical core of the model is written in Fortran90.

Features

  • Surface pressure or implicit linear free surface formulation
  • Non-hydrostatic version
  • 1D domain decomposition for parallel computation

Assumptions and Approximations

  • Fully incompressible thermodynamics
  • Boussinesq approximation
    • ( Volume conservation and Buoyancy perturbations in gravity term)
  • Cartesian and beta-plane approximation

Resources

  • Model Manual Here

  • Ocean Model Source Code Here

Prerequisites and Installation

Prerequisites

1. Unix system

2. Fortran 90 compiler

3. Fortran and Python front ends NetCDF-library

Installation (only for students of UHH)

1. Login at the remote server thunder1

ssh thunder1

2. Once you logged in, make a new directory where the model code should be placed. Name the directory as dir (for instance)

3. Find home directory of u241155

finger u241155

and copy the following directory to your new directory to get src files for compiling

cp home/zmaw/u241155/pyOM_thunder <dir>

4. Now all model code and Fortran subroutines and Python methods for the model configuration

  • can be find in <dir>

List of Directories in <dir>

* ./for_src: Fortran subroutines used by both Fortran and Python front end

* ./py_src: Python modules and extension modules

* ./py_config: Configuration examples of Python front end

* ./for_config: Configuration examples for Fortran front end

* ./doc: contains documentation

* ./bin: contains executable of Fortran front end after successful compilation

Model Configurations

Allocating the model variables

* set_parameter :sets all important fixed model parameter

In the model setup

* set_coriolis : sets the (vertical and horizontal) Coriolis parameter.

* initial_conditions :sets the initial conditions.

* topography : set the topography.

For each time step

* boundary_conditions : set the surface boundary conditions.

* restoring_zones : set the interior sources and sinks for density.

* momentum_restoring_zones : set the interior sources and sinks for momentum.

* tracer_sources : set interior sources and sinks for the passive tracer. Also sets the surface boundary conditions.

Sample Configurations

Kelvin-Helmholtz Instability

Content Here

kelvin_helm1.py

Rayleigh–Bénard Convection

Content Here

rayleigh.py

Eady's Baroclinic Instability

Content Here

eady1.py / eady2.py

Eddy-driven zonal jets

Content Here

jets1.py

Thermohaline Circulation

Content Here

THC1.py

Southern Ocean Circulation

Content Here

acc1.py

ENSO Response

Content Here

enso1.py

Equatorial Waves

Content Here

eq_waves1.py

Isopycnal Diffusion

Content Here

isopyc_test1.py

An example of the python GUI for Eady's baroclinic instability case is shown below.

pyOM.png

IfmWiki: TO/outdated/pyOM (last edited 2014-09-13 14:56:24 by CarstenEden)