Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update CPP implementation #490

Merged
merged 19 commits into from
Jul 31, 2020
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
update documentation
apcraig committed Jul 17, 2020
commit 4a14f9fb6c2a69a5f70c13094950c396598ba6ed
10 changes: 8 additions & 2 deletions doc/source/user_guide/ug_case_settings.rst
Original file line number Diff line number Diff line change
@@ -27,15 +27,19 @@ can be found in :ref:`cicecpps`. The primary CPPs are listed here.

"CESM1_PIO", "Provide backwards compatible support for PIO interfaces/version released with CESM1 in about 2010"
"coupled", " "
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this intentional to not describe "coupled" ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, because I don't know what to say. It does a bunch of things. I have already started working on a new PR that removes the coupled CPP flag following some discussion in #288.

"ESMF_INTERFACE, USE_ESMF_LIB, USE_ESMF_METADATA", "Turns on ESMF support in a subset of driver code"
"ESMF_INTERFACE", "Turns on ESMF support in a subset of driver code. Also USE_ESMF_LIB and USE_ESMF_METADATA"
"FORTRANUNDERSCORE", "Used in ice_shr_reprosum86.c to support Fortran-C interfaces. This should generally be turned on at all times. There are other CPPs (FORTRANDOUBULEUNDERSCORE, FORTRANCAPS, etc) in ice_shr_reprosum.c that are generally not used in CICE but could be useful if problems arise in the Fortran-C interfaces"
"GPTL", "Turns on GPTL initialization if needed for PIO"
"key_oasis3, key_oasis3mct, key_oasis4, key_iomput", "Leverages Oasis CPPs to define the local MPI communicator"
"key_oasis3", "Leverages Oasis CPPs to define the local MPI communicator"
"key_oasis3mct", "Leverages Oasis CPPs to define the local MPI communicator"
"key_oasis4", "Leverages Oasis CPPs to define the local MPI communicator"
"key_iomput", "Leverages Oasis CPPs to define the local MPI communicator"
"NO_F2003", "Turns off some Fortran 2003 features"
"NO_I8", "Converts integer*8 to integer*4. This could have adverse affects for certain algorithms including the ddpdd implementation associated with the ``bfbflag``"
"NO_R16", "Converts real*16 to real*8. This could have adverse affects for certain algorithms including the lsum16 implementation associated with the ``bfbflag``"
"USE_NETCDF", "Turns on netcdf code. This is normally on and is needed for released configurations. An older value, ncdf, is still supported"


.. csv-table:: **CPP application specific directives**
:header: "CPP name", "description"
:widths: 15, 60
@@ -46,13 +50,15 @@ can be found in :ref:`cicecpps`. The primary CPPs are listed here.
"ICE_DA", "Turns on code changes in the hadgem driver"
"RASM_MODS", "Turns on code changes for the RASM coupled application"


.. csv-table:: **CPP library specific directives**
:header: "CPP name", "description"
:widths: 15, 60

"_OPENMP", "Automatically defined when compiling with OpenMP"
"_OPENACC", "Automatically defined when compiling with OpenACC"


.. _tabsettings:

Table of CICE Settings