Back to home page

darwin3

 
 

    


Warning, /doc/phys_pkgs/phys_pkgs.rst is written in an unsupported language. File is not indexed.

view on githubraw file Latest commit faa67d17 on 2022-01-31 17:00:48 UTC
8679f9097b Jeff*0001 .. _packagesI:
                0002 
                0003 Packages I - Physical Parameterizations 
                0004 ***************************************
                0005 
                0006 
                0007 In this chapter and in the following chapter, the MITgcm 'packages' are
                0008 described. While you can carry out many experiments with MITgcm by starting
bf89a37abc Phob*0009 from case studies in section :numref:`chap_modelExamples`, configuring
8679f9097b Jeff*0010 a brand new experiment or making major changes to an experimental configuration
                0011 requires some knowledge of the *packages*
                0012 that make up the full MITgcm code. Packages are used in MITgcm to
                0013 help organize and layer various code building blocks that are assembled
                0014 and selected to perform a specific experiment. Each of the specific experiments
bf89a37abc Phob*0015 described in section :numref:`chap_modelExamples` uses a particular combination
8679f9097b Jeff*0016 of packages.
                0017 
                0018 :numref:`fig_package_organigramme` shows the full set of packages that
                0019 are available. As shown in the figure packages are classified into different
                0020 groupings that layer on top of each other. The top layer packages are
                0021 generally specialized to specific simulation types. In this layer there are
                0022 packages that deal with biogeochemical processes, ocean interior
                0023 and boundary layer processes, atmospheric processes, sea-ice, coupled
                0024 simulations and state estimation.
                0025 Below this layer are a set of general purpose
                0026 numerical and computational packages. The general purpose numerical packages
                0027 provide code for kernel numerical algorithms
                0028 that apply to
                0029 many different simulation types. Similarly, the general purpose computational
                0030 packages implement non-numerical algorithms that provide parallelism,
                0031 I/O and time-keeping functions that are used in many different scenarios.
                0032 
                0033   .. figure:: figs/mitgcm_package_organisation.*
                0034     :width: 70%
                0035     :align: center
                0036     :alt: One model for atmospheric and oceanic simulations
                0037     :name: fig_package_organigramme
                0038 
                0039     Hierarchy of code layers that are assembled to make up an MITgcm simulation. Conceptually (and in terms of code organization) MITgcm consists of several layers. At the base is a layer of core software that provides a basic numerical and computational foundation for MITgcm simulations. This layer is shown marked *Foundation Code* at the bottom of the figure and corresponds to code in the italicised subdirectories on the figure. This layer is not organized into packages. All code above the foundation layer is organized as packages.  Much of the code in MITgcm is contained in packages which serve as a useful way of organizing and layering the different levels of functionality that make up the full MITgcm software distribution. The figure shows the different packages in MITgcm as boxes containing bold face upper case names.  Directly above the foundation layer are two layers of general purpose infrastructure software that consist of computational and numerical packages.  These general purpose packages can be applied to both online and offline simulations and are used in many different physical simulation types.  Above these layers are more specialized packages.
                0040 
                0041 
                0042 The following sections describe the packages shown in
bf89a37abc Phob*0043 :numref:`fig_package_organigramme`. Section :numref:`using_packages`
8679f9097b Jeff*0044 describes the general procedure for using any package in MITgcm.
bf89a37abc Phob*0045 Sections :numref:`packagesI` to :numref:`chap_state_estimation`
8679f9097b Jeff*0046 layout the algorithms implemented in specific packages
                0047 and describe how to use the individual packages. A brief synopsis of the
bf89a37abc Phob*0048 function of each package is given in :numref:`fig_package_organigramme`.
8679f9097b Jeff*0049 Organizationally package code is assigned a
                0050 separate subdirectory in the MITgcm code distribution
bf89a37abc Phob*0051 (within the source code directory :filelink:`pkg`).
8679f9097b Jeff*0052 The name of this subdirectory is used as the package name in
bf89a37abc Phob*0053 :numref:`fig_package_organigramme`.
8679f9097b Jeff*0054 
                0055 
                0056 Overview
                0057 ========
                0058 
                0059 .. toctree::
                0060    :maxdepth: 3
                0061 
                0062    packages_overview.rst
                0063 
                0064 
                0065 Packages Related to Hydrodynamical Kernel
                0066 =========================================
                0067 
                0068 .. toctree::
                0069    :maxdepth: 3
                0070 
                0071    generic_advdiff.rst
dcaaa42497 Jeff*0072    mom_packages.rst
8679f9097b Jeff*0073    shap_filt.rst
                0074    zonal_filt.rst
                0075    exch2.rst
                0076    gridalt.rst
                0077 
                0078 General purpose numerical infrastructure packages
                0079 =================================================
                0080 
                0081 .. toctree::
                0082    :maxdepth: 3
                0083    
                0084    obcs.rst
                0085    rbcs.rst
                0086    ptracers.rst
                0087 
                0088 Ocean Packages
                0089 ==============
                0090 
                0091 .. toctree::
                0092    :maxdepth: 3
                0093    
                0094    gmredi.rst
                0095    kpp.rst
                0096    ggl90.rst
                0097    opps.rst
                0098    kl10.rst
                0099    bulk_force.rst
                0100    exf.rst
                0101    cal.rst
                0102 
                0103 Atmosphere Packages
                0104 ===================
                0105 
                0106 .. toctree::
                0107    :maxdepth: 3
                0108 
                0109    aim.rst
                0110    land.rst
                0111    fizhi.rst
                0112 
a18d498838 Jeff*0113 Ice and Sea Ice Packages
                0114 ========================
8679f9097b Jeff*0115 
                0116 .. toctree::
                0117    :maxdepth: 3
                0118 
                0119    thsice.rst
                0120    seaice.rst
b3f1c54cf2 Jeff*0121    shelfice.rst
838416a165 Jeff*0122    remesh.rst   
04bc052df0 dngo*0123    streamice.rst   
                0124 
9ce7d74115 Jeff*0125 Biogeochemistry Packages
                0126 ========================
                0127 
                0128 .. toctree::
                0129    :maxdepth: 3
                0130 
                0131    gchem.rst
                0132    dic.rst
1d947889e4 Oliv*0133    darwin.rst
                0134    radtrans.rst
faa67d1773 Oliv*0135    sun.rst