Giter Club home page Giter Club logo

coastalapp's Introduction

CoastalApp

tests build license

ESMF application for building a NUOPC / NEMS application coupling ADCIRC, ATMESH, WW3 / WW3DATA, and NWM.

CoastalApp is an ESMF application developed as part of the Coastal Act coupling project to determine wind versus water percentage loss caused by a Named Storm Event.

git clone --recursive https://github.com/noaa-ocs-modeling/CoastalApp
cd CoastalApp

Organization / Responsibility

NEMS application implementing ESMF / NUOPC coupling

ESMF / NUOPC cap for ADCIRC model

ESMF / NUOPC cap for FVCOM model

ESMF / NUOPC cap for SCHISM model

ESMF / NUOPC cap for WW3 model

PaHM model and ESMF / NUOPC cap for PaHM model

ATMESH data component and ESMF / NUOPC cap for ATMESH data component

ESMF / NUOPC cap for NWM model

Compilation

./build.sh --component "ADCIRC ATMESH WW3DATA" --plat hera --compiler intel --clean -2 
  • --component can be any combination of
    • ADCIRC
    • ATMESH
    • WW3 / WW3DATA
    • NWM
  • --plat can be one of
    • hera
    • stampede
    • wcoss
    • orion
    • jet
    • gaea
    • cheyenne
    • linux
    • macosx
  • --compiler can be one of
    • intel
    • gnu
    • pgi
  • --clean is optional, and can be one of
    • (make clean and exit)
    • 1 (make clean and exit)
    • 2 (make clobber and exit)
    • -1 (make clean and build)
    • -2 (make clobber and build)

adding a new platform / compiler to compilation script

Environment files are stored in modulefiles/ with the filename envmodules_<COMPILER>.<PLATFORM>

To compile in your own system you should create a similar file, then run build.sh to compile.

Requirements

installing ParMETIS for WW3

Using unstructured WW3 requires an installation of ParMETIS for domain decomposition.

  1. download the code here
  2. build ParMETIS
    module purge
    module load intel impi
    setenv CFLAGS -fPIC
    make config cc=mpiicc cxx=mpiicc prefix=/path/to/your/parmetis/ | & tee config.out-rr
    make install | & tee make-install.out-rr
    This adds libparmetis.a under /path/to/your/parmetis/lib/libparmetis.a.
  3. set the path to ParMETIS
    setenv METIS_PATH /path/to/your/parmetis

Collaboration

To collaborate and contribute to this repository follow below instructions:

  1. go to https://github.com/noaa-ocs-modeling/CoastalApp
  2. create a fork (click Fork on the upper right corner), and fork to your account.
  3. clone your forked repository
    git clone --recursive https://github.com/<ACCOUNT>/CoastalApp
  4. edit the files locally
    git status
  5. commit changes
    git commit -a -m "describe what you changed"
  6. push your changes to GitHub
    git push
  7. enter your GitHub username/password if asked
  8. create a pull request with descriptions of changes at
    https://github.com/noaa-ocs-modeling/CoastalApp/compare/<BRANCH>...<ACCOUNT>:<BRANCH>
    

Citations

Moghimi, S., Van der Westhuysen, A., Abdolali, A., Myers, E., Vinogradov, S., 
   Ma, Z., Liu, F., Mehra, A., & Kurkowski, N. (2020). Development of an ESMF 
   Based Flexible Coupling Application of ADCIRC and WAVEWATCH III for High 
   Fidelity Coastal Inundation Studies. Journal of Marine Science and 
   Engineering, 8(5), 308. https://doi.org/10.3390/jmse8050308

Moghimi, S., Vinogradov, S., Myers, E. P., Funakoshi, Y., Van der Westhuysen, 
   A. J., Abdolali, A., Ma, Z., & Liu, F. (2019). Development of a Flexible 
   Coupling Interface for ADCIRC model for Coastal Inundation Studies. NOAA 
   Technical Memorandum, NOS CS(41). 
   https://repository.library.noaa.gov/view/noaa/20609/

Moghimi, S., Westhuysen, A., Abdolali, A., Myers, E., Vinogradov, S., Ma, Z., 
   Liu, F., Mehra, A., & Kurkowski, N. (2020). Development of a Flexible 
   Coupling Framework for Coastal Inundation Studies. 
   https://arxiv.org/abs/2003.12652

coastalapp's People

Contributors

zacharyburnett avatar moghimis avatar awest-noaa avatar trimbleava avatar pvelissariou1 avatar saeed-moghimi-noaa avatar platipodium avatar liujuanracheltang avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.