-
Notifications
You must be signed in to change notification settings - Fork 24
/
README
31 lines (24 loc) · 1.64 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
!===============================================================================
! SVN $Id: README 19883 2009-12-14 23:19:10Z erik $
! SVN $URL: https://svn-ccsm-models.cgd.ucar.edu/csm_share/trunk_tags/share3_150116/README $
!===============================================================================
A description of csm_share
This module exists to collect code shared between various CIME components.
Excluding this "shared code" module, CIME components are built using disjoint
sets of source code. The use of this shared code is similar to the use of
object code libraries where each subdirectory of share is equivalant to
one library. While object library routines are accessed by linking to libraries
during the load phase, these shared code routines are accessed by including the
appropriate source code directory path during the compile phase.
Motivation for this code sharing includes:
- facilitating consistent physics between all models. For example, uniform
solar-zenith-angle/orbital calculations and uniform physical constants.
- providing an interface/API between component models and the flux-coupler
component in the CCSM framework.
- avoiding the need for redundant implementations of commonly needed
functionality. For example netCDF file reading, basic mapping (re-gridding)
functionality, and common character string manipulations.
Current subsets ("libraries") of shared code only include:
util - very generic, general-purpose code that is likely to be useful to all
CIME components. CIME components may be explicitly required to use some
parts of this code, for example the physical constants module.