User-modified source code

Each model component ($component) has an associated directory, $CASEROOT/SourceMods/src.$component, where you can place modified source code before building the executable. Any source code from $component that is placed in $CASEROOT/SourceMods/src.$component/ will automatically be compiled when the model is built and will overwrite the default source code. For example, placing user-modifed cam source code in $CASEROOT/SourceMods/ will cause the user-modified routines to be used instead of the routines in $CCSMROOT/models/atm/cam.

If you want to modify numerous cam namelist values, you can use place a file, user_nl, containing modified cam namelist settings in SourceMods/ and this file will be used by the configure -case; command to generate the appropriate namelist for CAM.