Go to the bottom of this page. See the search engine and sub-section links.
Go to next page Go to previous page Go to top of this section Go to top page Go to table of contents

Previous Section Headers


User's Guide to NCAR CAM2.0.2


2. Using CAM2.0.2


2.1 How to Configure, Build and Run CAM2.0.2

Overview of building CAM. Building and running CAM takes place in the following steps.

Configure includes setting the compile-time parameters such as resolution, dynamical core to use (Eulerian Spectral, Semi-Lagrangian Spectral, or Finite-Volume), type of parallelism to employ (shared-memory and/or distributed memory), number of constituents, and number of vertical levels. This step is done most easily by invoking the configure script that creates the files necissary for the build step to take place.

Build model includes compiling and linking the executable using the GNU-make utility. The configure script creates a copy of the Makefile in the directory where the build is to take place. The user then need only change to this directory and execute gmake.

Build namelist includes creating the input namelist and ensuring input datasets are available.

Execute model includes the actual invokation of the executable. When running using distributed memory parallelism this step requires knowledge of how your machine invokes MPI executables. When using shared-memory parallelism using Open-MP you may also set the number of Open-MP threads.

It is assumed that the user has access to the utilities tar, Free Software Foundation gunzip and gmake (GNU make), and Perl5.  The scripts written in perl need at least Perl5.4 to work.

2.1.1 Obtaining and unpacking the source code and datasets

Download CAM source code and datasets from.

http://www.ccsm.ucar.edu/models/atm-cam/

The download of the source code is called "cam2.0.2_source.tar.gz" and the download of the standard datasets (for running the model using the Eulerian-spectral dynamics at T42 resolution with 26 levels) is called "cam2.0.2_standard_datasets.tar.gz". For running the model at non-standard resolutions or with the other dynamical cores use the dataset called "cam2.0.2_nonstandard_datasets.tar.gz".

To untar the source dataset you execute the following command.

gunzip -c cam2.0.2_source.tar.gz | tar xvf -

To untar the input datasets you execute the following command.

gunzip -c cam2.0.2.standard_datasets.tar.gz | tar xvf -

To untar the non-standard input datasets you execute the following command in the same directory as the standard datasets. Thus the non-standard and standard datasets will reside in the same directory structure.

gunzip -c cam2.0.2.standard_datasets.tar.gz | tar xvf -

If the user needs to run the model at resolutions that aren't provided in the above set of datasets they will need additional datasets. The user will need to create an atmospheric initial-condition dataset as well as a SST dataset for this resolution. The user could do this by interpolating the datasets that are provided. Currently we do not provide tools to do this interpolation. Also when running at a different resolution land model datasets will need to be created from the high resolution datasets. The high resolution datasets can be downloaded from.

http://www.cgd.ucar.edu/tss/clm/distribution

gunzip -c CLM2.1_inputdata.tar.gz | tar xvf -

Next set the environment variable "CSMDATA" to the location of the input datasets. Using "c-shell" this is done as follows. The user may want to set this value in their .login or .cshrc so that it will always be available after logging in.

setenv CSMDATA `pwd`/inputdata

  • The directory structure of the input datasets is as follows:

    2.1.2 Directory Hierarchy

    Once the source tar-ball is untarred, the directory hierarchy for "CAM2.0.2" is as follows. The directories in bold font are the top level directories for the CAM atmospheric model code. The directory hierarchy closely parallels the directory hierarchy for CCSM2 and as such seperates code out by model component.
     

    Table 2.1:  Directory Hierarchy
    Directory name
    Synopsis
    models/atm/cam/bld/ Scripts to build and execute the model
    models/atm/cam/src/ Atmosphere model main source code directory
    models/atm/cam/src/advection/slt Semi-Lagrangian Transport advection routines
    models/atm/cam/src/control Control code
    models/atm/cam/src/dynamics/eul Eulerian dynamics
    models/atm/cam/src/dynamics/fv Finite-Volume dynamics
    models/atm/cam/src/dynamics/sld Semi-Lagrangian dynamics
    models/atm/cam/src/ocnsice/dom Data Ocean Model
    models/atm/cam/src/physics/cam1 Physics routines (e.g., radiation, convection)
    models/atm/cam/src/utils CAM specific utilities
    models/atm/cam/tools/ Directory of tools (such as history compare routines)
    models/atm/cam/tools/cprnc History file comparison program. Normally used to compare code modifications to a "base-line" code. Prints out summary of differences.
    models/atmlnd_share Code shared between the land and atmosphere components.  
    models/csm_share Code shared by all the geophysical model components of the Community Climate System Model (CCSM)(e.g. code for CCSM message passing and orbital calculations)
    models/lnd/clm2 Community Land Model (CLM2.1) code
    models/ice/csim4 Community Sea-Ice Model (CSIM4) code
    models/utils Independent utility codes
    models/utils/esmf General purpose Earth System Modeling Framework (ESMF) utilities.
    models/utils/timing General purpose timing library.


    Sub Sections


        2.1.1 Obtaining and unpacking the source code and datasets

        2.1.2 Directory Hierarchy

        2.1.2 Using the Build/Run Scripts in the "bld" Directory

        2.1.3 Running CAM as part of the CCSM coupled model system


     Go to the top of this page. See links to previous section headers.
    Go to next page Go to previous page Go to top of this section Go to top page Go to table of contents

     Search for keywords in the CAM2.0 Users GuideSearch page

    Questions on these pages can be sent to... erik@ucar.edu .


    $Name: $ $Revision: 1.69.2.12 $ $Date: 2002/12/19 21:25:34 $ $Author: mvertens $