forked from CICE-Consortium/Icepack
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request CICE-Consortium#126 from apcraig/docA
Update documentation
- Loading branch information
Showing
24 changed files
with
1,833 additions
and
3,994 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,18 @@ | ||
:tocdepth: 3 | ||
|
||
.. _about_dev: | ||
.. _dev_about: | ||
|
||
About Development | ||
================== | ||
|
||
The Icepack model consists of three different parts, the column physics | ||
code, the icepack driver, and the scripts. Development of each of these | ||
pieces will be described below separately. | ||
The CICE model consists of four different parts, the CICE dynamics and supporting infrastructure, | ||
the CICE driver code, the Icepack column physics code, and the scripts. Development of each of these | ||
pieces is described separately. | ||
|
||
Subroutine calls and other linkages into Icepack from the host model should only | ||
need to access the **icepack\_intfc\*.F90** interface modules within the | ||
``columnphysics/`` directory. | ||
The Icepack driver in the ``configuration/driver/`` directory is based on the CICE | ||
model and provides an example of the sea ice host model capabilities needed for inclusion | ||
of Icepack. In particular, host models will need to include code equivalent to that | ||
in the modules **icedrv\_\*_column.F90**. Calls into the Icepack interface routines | ||
are primarily from **icedrv\_step\_mod.F90** but there are others (search the driver code | ||
for ``intfc``). | ||
Guiding principles for the creation of CICE include the following: | ||
- CICE can be run in stand-alone or coupled modes. A top layer driver, coupling layer, | ||
or model cap can be used to drive the CICE model. | ||
- The Icepack column physics modules are independent, consist of methods that operate | ||
on individual gridcells, and contain so underlying infrastructure. CICE must call | ||
into the Icepack using interfaces and approaches specified by Icepack. | ||
|
||
Guiding principles for the creation of Icepack include the following: | ||
- The column physics modules shall be independent of all sea ice model infrastructural | ||
elements that may vary from model to model. Examples include input/output, timers, | ||
references to CPUs or computational tasks, initialization other than that necessary for | ||
strictly physical reasons, and anything related to a horizontal grid. | ||
- The column physics modules shall not call or reference any routines or code that | ||
reside outside of the **columnphysics/** directory. | ||
- Any capabilities required by a host sea ice model (e.g. calendar variables, tracer | ||
flags, diagnostics) shall be implemented in the driver and passed into or out of the | ||
column physics modules via array arguments. |
Oops, something went wrong.