Skip to content

Earth System Modeling Framework cap for SCHISM

Notifications You must be signed in to change notification settings

schism-dev/schism-esmf

Folders and files

NameName
Last commit message
Last commit date
Dec 31, 2022
Dec 31, 2022
Dec 31, 2022
Sep 12, 2019
Dec 31, 2022
Dec 31, 2022
Feb 7, 2020
Dec 31, 2022
Mar 19, 2025
Oct 16, 2024
Dec 31, 2022
Dec 31, 2022
Jan 7, 2022
Oct 16, 2024
Dec 31, 2022
Mar 25, 2024
Mar 5, 2025
Oct 16, 2024
May 15, 2020
Dec 31, 2022
Oct 16, 2024
Oct 19, 2022
Oct 16, 2024
Oct 16, 2024
Oct 16, 2024
Oct 16, 2024
May 15, 2020
Oct 16, 2024

Repository files navigation

schism-esmf

Earth System Modeling Framework (ESMF) and National Unified Operational Prediction Capability (NUOPC) caps for SCHISM


Using it

Prerequisites

  1. ESMF: You need to have ESMF installed and an environment variable ESMFMKFILE defined (via setenv or export) that points to your ESMF installation, for example

    on femto: setenv ESMFMKFILE /sciclone/home10/yinglong/esmf_femto/lib/libO/Linux.intel.64.openmpi.default/esmf.mk setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/sciclone/home10/yinglong/esmf_femto/lib/libO/Linux.intel.64.openmpi.default/

    on WW: setenv ESMFMKFILE /sciclone/home10/yinglong/esmf_WW/lib/libO/Linux.intel.64.mvapich2.default/esmf.mk setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/sciclone/home10/yinglong/esmf_WW/lib/libO/Linux.intel.64.mvapich2.default

    on James: setenv ESMFMKFILE /ches/home00/yinglong/esmf_James/lib/libO/Linux.intel.64.openmpi.default/esmf.mk setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/ches/home00/yinglong/esmf_James/lib/libO/Linux.intel.64.openmpi.default

    on Cyclops: setenv ESMFMKFILE /sciclone/home10/yinglong/esmf_cyclops/lib/libO/Linux.intel.64.mvapich2.default/esmf.mk setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/sciclone/home10/yinglong/esmf_cyclops/lib/libO/Linux.intel.64.mvapich2.default

  2. SCHISM: You need to have SCHISM built with cmake and an environment variable SCHISM_BUILD_DIR defined that points to your SCHISM build directory containing lib/libhydro.a, e.g.

    on femto: setenv SCHISM_BUILD_DIR /sciclone/home10/yinglong/git/schism/build.femto

    on WW: setenv SCHISM_BUILD_DIR /sciclone/home10/yinglong/git/schism/build.whirlwind

    on James: setenv SCHISM_BUILD_DIR /ches/home00/yinglong/git/schism/build_james

    on Cyclops: setenv SCHISM_BUILD_DIR /sciclone/home10/yinglong/git/schism/build.cyclops

  3. Optionally, you need PDAF:

    on WW: setenv PDAF_LIB_DIR /sciclone/home10/yinglong/PDAF-D_V1.14/lib/Whirlwind

    on Cyclops: setenv PDAF_LIB_DIR /sciclone/home10/yinglong/PDAF-D_V1.14/lib/Cyclops

Compilation (in schism-esmf)

make distclean    [make version older than v3.82 will spit out an error on undef cmd]
make all 

This will produce (1) the libesmf_schism.a libschism_nuopc.a library, which can be linked in other ESMF applications that want to include SCHISM as a component. This is the primary application.

#Also (2) schism_esmf_test and (3) concurrent_esmf_test executables are produced #that can be executed from any directory that contains a schism setup. Results #should exactly match those produced from a pschism uncoupled executable.

Bugs and contributing

Please report bugs to [email protected]. You are very welcome to contribute to improving this cap. Fork on github, make changes, and file a pull request.


Joseph's notes: