Developer's Corner

Information and tools for developers of the Community Atmosphere Model

Community Atmosphere Model

The CAM source code (including both release and development code) is located in a Github repository. See the README file in the CAM Github repository for instructions on downloading the correct version of CAM and view the CAM documentation which includes the user's guide.

Contributing to CAM

If you have already developed a solution for a particular bug, or if you are working with an NCAR scientist or engineer to bring in new science or a new model feature, then first create a fork of the CAM repo, and add/test your code changes there. Instructions for how to do this properly can be found here.

Once you have your own personal version with all of the working code modifications, then open a pull request to the main CAM repo. Instructions for how to do this properly (including how to push to the correct CAM branch) can be found here.

Finally, CAM coding standards for Python and Fortran (the two main programming languages used in CAM) can be found here.

Tuning CAM

Model tuning is a necessary of part of climate models development. We provide here a living document that describe the tuning process of CAM.

Debugging CAM

Helpful techniques which are useful when the model is crashing can be found here.

Reporting Bugs & Issues

If you are having trouble with CAM, or if you believe there is a bug or problem with the model, then please make a post on the CAM forum.

If the problem is indeed a real bug, then you will be notified by an NCAR scientist or engineer, and an official Github Issue will be created and added to the work list.

Git & Github

If you need any help with either Git or Github, or would like to know some possibly helpful tips, you can view them here.