-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'katec/derecho_update' into ktc/fixin_slap
- Loading branch information
Showing
54 changed files
with
810 additions
and
582 deletions.
There are no files selected for viewing
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 |
---|---|---|
@@ -0,0 +1,30 @@ | ||
This directory contains posix-compliant CMake build scripts (*-cmake.sh) and | ||
shell agnostic build scripts (*-cmake), which are mostly intended for csh/tcsh | ||
users. | ||
|
||
The posix scripts are recommended because they support out of source builds by | ||
using the first command-line argument to set the (top-level) CISM source | ||
directory. For example, to build in this directory, you may run the command: | ||
|
||
source PLATFORM-COMPILER-cmake.sh | ||
|
||
Likewise, if your CISM source is located in $CISM, you may build in a $BUILD | ||
subdirectory by: | ||
|
||
mkdir -p $BUILD && cd $BUILD source | ||
$CISM/builds/PLATFORM-COMPILER/PLATFORM-COMPILER-cmake.sh $CISM | ||
|
||
This functionality is necessary for using the build and test structure (BATS, | ||
located in $CISM/tests/regression/), will allow you to build multiple versions | ||
of CISM for testing, and make cleaning up the build directory easier. | ||
|
||
Because there isn't a reasonable way to make out-of-source capable build | ||
scripts work across both posix-compliant shells (sh, bash, zsh, etc.) and | ||
non-compliant shells (csh, tcsh), a shell agnostic build script is also | ||
available for csh/tcsh users. | ||
|
||
NOTE: If you edit one of these script, please reflect your changes in the other | ||
script! | ||
|
||
WARNING: It is possible these scripts will have diverged, so if you're having | ||
build problems, first check the differences between the two scripts. |
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 |
---|---|---|
@@ -0,0 +1,60 @@ | ||
# Run this script by typing: source cheyenne-intel-cmake | ||
# After this script completes, type: make -j 8 | ||
# If rebuilding, type 'make clean' before running 'make -j 8' | ||
|
||
# This cmake configuration script is set up to perform a parallel build with Trilinos | ||
|
||
module purge | ||
module load ncarenv/23.06 | ||
module load intel/2023.0.0 | ||
module load intel-mpi/2021.8.0 | ||
module load mkl/2023.0.0 | ||
#module load mpt/2.19 | ||
module load netcdf/4.9.2 | ||
module load ncarcompilers/1.0.0 | ||
#module load pnetcdf/1.11.0 | ||
module load cmake/3.26.3 | ||
#module load python/2.7.13 | ||
#module load numpy/1.12.0 | ||
#module load netcdf4-python/1.2.7 | ||
|
||
# remove old build data: | ||
rm -f ./CMakeCache.txt | ||
rm -rf ./CMakeFiles | ||
|
||
echo | ||
echo "Doing CMake Configuration step" | ||
|
||
# Note: the compilation flags were taken from the defaults for a CESM build on | ||
# cheyenne-intel (using cime at 84aafd5). Some of these options are probably | ||
# unnecessary for a standalone cism build, but I am keeping things consistent | ||
# with the CESM build for simplicity. | ||
|
||
cmake \ | ||
-D CISM_BUILD_CISM_DRIVER:BOOL=ON \ | ||
-D CISM_ENABLE_BISICLES=OFF \ | ||
-D CISM_ENABLE_FELIX=OFF \ | ||
\ | ||
-D CISM_USE_TRILINOS:BOOL=OFF \ | ||
-D CISM_MPI_MODE:BOOL=ON \ | ||
-D CISM_SERIAL_MODE:BOOL=OFF \ | ||
\ | ||
-D CISM_USE_GPTL_INSTRUMENTATION:BOOL=OFF \ | ||
-D CISM_COUPLED:BOOL=OFF \ | ||
-D CISM_USE_CISM_FRONT_END:BOOL=OFF \ | ||
\ | ||
-D CISM_NETCDF_DIR=$NETCDF \ | ||
-D CMAKE_VERBOSE_MAKEFILE:BOOL=OFF \ | ||
\ | ||
-D CMAKE_CXX_COMPILER=mpiicpc \ | ||
-D CMAKE_C_COMPILER=mpicc \ | ||
-D CMAKE_Fortran_COMPILER=mpif90 \ | ||
\ | ||
-D CMAKE_EXE_LINKER_FLAGS="-mkl=cluster" \ | ||
\ | ||
-D CMAKE_Fortran_FLAGS:STRING="-qno-opt-dynamic-align -convert big_endian -assume byterecl -ftz -traceback -assume realloc_lhs -fp-model source -qopt-report -O2 -debug minimal " \ | ||
-D CMAKE_C_FLAGS:STRING="-qno-opt-dynamic-align -fp-model precise -std=gnu99 -qopt-report -O2 -debug minimal " \ | ||
-D CMAKE_CXX_FLAGS:STRING="-qno-opt-dynamic-align -fp-model precise -std=gnu99 -qopt-report -O2 -debug minimal " \ | ||
../.. | ||
|
||
# Note: last argument above "../.." is path to top-level cism directory |
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 |
---|---|---|
@@ -0,0 +1,73 @@ | ||
#!/bin/sh | ||
|
||
# After this script completes, type: make -j 8 | ||
# If rebuilding, type 'make clean' before running 'make -j 8' | ||
|
||
# Set path to top cism directory | ||
# Note, this is an easy way to build out of source. | ||
# In directory you want to build in, run: | ||
# $ source $CISM/builds/linux-gnu-cism/linux-gnu-cism-cmake $CISM | ||
# where $CISM is the path to the top level cism directory. | ||
if [ $# -eq 0 ] | ||
then | ||
cism_top="../.." | ||
else | ||
cism_top=${1%/} | ||
fi | ||
|
||
echo CISM: "${cism_top}" | ||
|
||
|
||
module purge | ||
module load ncarenv/23.06 | ||
module load intel/2023.0.0 | ||
module load mkl/2023.0.0 | ||
#module load mpt/2.15f | ||
module load netcdf/4.9.2 | ||
module load ncarcompilers/1.0.0 | ||
#module load pnetcdf/1.8.0 | ||
module load cmake/3.26.3 | ||
#module load python/2.7.13 | ||
#module load numpy/1.12.0 | ||
#module load netcdf4-python/1.2.7 | ||
|
||
# remove old build data: | ||
rm -f ./CMakeCache.txt | ||
rm -rf ./CMakeFiles | ||
|
||
echo | ||
echo "Doing CMake Configuration step" | ||
|
||
# Note: the compilation flags were taken from the defaults for a CESM build on | ||
# cheyenne-intel (using cime at 84aafd5). Some of these options are probably | ||
# unnecessary for a standalone cism build, but I am keeping things consistent | ||
# with the CESM build for simplicity. | ||
|
||
# CISM_USE_GPTL_INSTRUMENTATION -- ON by default, set to OFF to not use GPTL instrumentation. | ||
|
||
cmake \ | ||
-D CISM_BUILD_CISM_DRIVER:BOOL=ON \ | ||
-D CISM_ENABLE_BISICLES=OFF \ | ||
-D CISM_ENABLE_FELIX=OFF \ | ||
\ | ||
-D CISM_USE_TRILINOS:BOOL=OFF \ | ||
-D CISM_MPI_MODE:BOOL=ON \ | ||
-D CISM_SERIAL_MODE:BOOL=OFF \ | ||
\ | ||
-D CISM_USE_GPTL_INSTRUMENTATION:BOOL="${CISM_USE_GPTL_INSTRUMENTATION:=ON}" \ | ||
-D CISM_COUPLED:BOOL=OFF \ | ||
-D CISM_USE_CISM_FRONT_END:BOOL=OFF \ | ||
\ | ||
-D CISM_NETCDF_DIR="$NETCDF" \ | ||
-D CISM_GPTL_DIR= "utils/libgptl" \ | ||
-D CMAKE_VERBOSE_MAKEFILE:BOOL=OFF \ | ||
\ | ||
-D CMAKE_CXX_COMPILER=mpiicpc \ | ||
-D CMAKE_C_COMPILER=mpicc \ | ||
-D CMAKE_Fortran_COMPILER=mpif90 \ | ||
\ | ||
-D CMAKE_Fortran_FLAGS:STRING="-qno-opt-dynamic-align -convert big_endian -assume byterecl -ftz -traceback -assume realloc_lhs -fp-model source -qopt-report -O2 -debug minimal " \ | ||
-D CMAKE_C_FLAGS:STRING="-qno-opt-dynamic-align -fp-model precise -std=gnu99 -qopt-report -O2 -debug minimal " \ | ||
-D CMAKE_CXX_FLAGS:STRING="-qno-opt-dynamic-align -fp-model precise -std=gnu99 -qopt-report -O2 -debug minimal " \ | ||
"${cism_top}" | ||
|
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
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 |
---|---|---|
|
@@ -40,7 +40,7 @@ | |
#include <unistd.h> | ||
#include <string.h> | ||
#include <fcntl.h> | ||
|
||
#include <ctype.h> | ||
|
||
|
||
#define CFG_LEN 35 | ||
|
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,12 +1,14 @@ | ||
Instructions for setting up and running the MISMIP experiments with CISM. | ||
|
||
Note: For setting up the experiments on an NCAR computing environment, follow the steps in the README.NCAR_HPC file in the tests directory. | ||
|
||
Note: These instructions assume that you have access to the NCAR HPC Cheyenne, | ||
with an LIWG HPC account. If you do not have an account and would like one, | ||
please contact Gunter Leguy ([email protected]). | ||
|
||
See this paper for details on MISMIP: | ||
Pattyn,F., et al., Results of the Marine Ice Sheet Model Intercomparison Project, MISMIP, | ||
The Cryosphere, 6, 573-588, doi:10.5194/tc-6-573-2012, 2012. | ||
"Pattyn,F., et al., Results of the Marine Ice Sheet Model Intercomparison Project, MISMIP, | ||
The Cryosphere, 6, 573-588, doi:10.5194/tc-6-573-2012, 2012." | ||
|
||
The MISMIP experiments consist of a set of advance and retreat experiments of the | ||
grounding line. This is achieved by modifying the flow rate factor A. | ||
|
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
Oops, something went wrong.