GithubHelp home page GithubHelp logo

hlkong / pymoc Goto Github PK

View Code? Open in Web Editor NEW

This project forked from pymoc/pymoc

1.0 1.0 0.0 14.64 MB

A simple model suite for the MOC

Home Page: https://pymoc.github.io

License: MIT License

Shell 1.23% Dockerfile 0.29% Makefile 0.02% Python 98.46%

pymoc's Introduction

CircleCI Test Coverage Maintainability PyPI version Documentation License

PyMOC is a suite of python modules to build simple "toy" models for ocean's Meridional Overturning Circulation (MOC).

The model suite consists of several independent modules representing various ocean regions and dynamics. Specifically, there are modules for calculating the 1-D advective-diffusive buoyancy tendencies averaged over ocean basins, given the net isopycnal transports in and out of the column. The isopycnal transports are computed as diagnostic relationships, with modules to calculate the wind- and eddy-driven residual circulation in a southern-ocean-like re-entrant channel, as well as the geostrophic exchange between different basins or basin regions. These modules may be coupled to study the circulation in a wide range of different configurations.

The intended audiences for this model are researchers, educators and students in the geophysical sciences. The goal is to provide an accessible model appropriate for newcomers to geophysical modeling, but with physics that reflect the current state of our theoretical understanding of the deep ocean overturning circulation.

Configuration and execution of the PyMOC suite requires relatively little technical knowledge or computational resources. All modules are written in pure Python, and the only core dependencies are the NumPy and SciPy libraries. If configuration of your base system environment is undesirable, a preconfigured Docker container has been made available with all required software libraries pre-installed.

Anybody is more than welcome to contibute to the development of PyMOC, but is asked to adhere to the goal of keeping PyMOC well tested, stable, maintainable, and documented. Further details on installation, configuration, contribution, and issue reporting is available in the documentation.


Update: Hailu Kong, 09/13/2021

Several more modules have been added, all for the Southern Ocean (SO) region, for the paper of:

Time-dependent response of the overturning circulation and pycnocline depth to Southern Ocean wind stress changes

The added modules are:

psi_SO_varKGM_local.py
psi_SO_varKGM_bulk.py 
psi_SO_Kst_Ktr.py
psi_SO_Ktr_Tst.py
psi_SO_Keff.py
psi_SO_Keff_Ktr.py
psi_SO_Keff_Dc.py

The specific assumptions of these modules are:

  1. psi_SO_varKGM_local.py

The SO diffusivity is parameterized as

,

i.e., it adopts the form of the diffusivity in Jones et al. (2011) but for each layer.

  1. psi_SO_varKGM_bulk.py

This is the module that is used to compute the SO dynamics used in PyMOC-no-meander configuration, where only transient eddies are considered, and a bulk value of pycnocline depth is used to parameterize the diffusivity. Specifically, the SO diffusivity is parameterized as

,

i.e., it is the bulk value of D, instead of the depth of each layer, that is used to compute a vertically constant diffusivity.

  1. psi_SO_Kst_Ktr.py

The SO diffusivity has two components: the transient & stationary parts

where the transient part remains the same as in psi_SO_varKGM_bulk.py.

  1. psi_SO_Ktr_Tst.py

Instead of first parameterizating the diffusivity before using it to compute the eddy-induced transport (i.e., ), now we separately parameterize the eddy-induced transport by the transient and stationary eddies:

where the last parenthesis denotes the linearly approximated SOMOC transport by the stationary eddies.

  1. psi_SO_Keff.py

This is the module used for the PyMOC configuration in the paper, where the SO diffusivity is parameterized via a stretching of the transient diffusivity by stationary eddies:

  1. psi_SO_Keff_Ktr.py

This is the most complicated parameterization for the SO effective diffusivity, where the dependence on the wind stress appears both in the stretching factor, as in the module introduced above, and in the transient diffusivity part, to mimic the impact of rapid change in local baroclinicity on the transient diffusivity:

  1. psi_SO_Keff_Dc.py

Finally, this module parameterizes the SO effective diffusivity in a similar way as psi_SO_Keff.py except that it is the cut-off version of D (i.e., D_c), instead of the full-depth-based D, that enters the parameterization:

Here D_c is computed similarly to D but its lower integral limit is cut off at the AMOC bottom buoyancy, which varies with time.

pymoc's People

Contributors

hlkong avatar mbueti avatar mfjansen avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.