-
Notifications
You must be signed in to change notification settings - Fork 33
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 #20 from noaa-ocs-modeling/feature/adcirc_v55
ADCIRC v55
- Loading branch information
Showing
66 changed files
with
3,864 additions
and
247 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 |
---|---|---|
|
@@ -26,7 +26,13 @@ | |
*.a | ||
*.lib | ||
|
||
# intermediate build files | ||
*_INSTALL/ | ||
|
||
# Executables | ||
*.exe | ||
*.out | ||
*.app | ||
|
||
# Editor | ||
.idea |
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,24 +1,24 @@ | ||
[submodule "ATMESH"] | ||
path = ATMESH | ||
url = https://github.com/moghimis/ATMESH | ||
url = https://github.com/noaa-ocs-modeling/ATMESH.git | ||
branch = master | ||
[submodule "WW3DATA"] | ||
path = WW3DATA | ||
url = https://github.com/moghimis/WW3DATA | ||
url = https://github.com/noaa-ocs-modeling/WW3DATA.git | ||
branch = master | ||
[submodule "WW3"] | ||
path = WW3 | ||
url = https://github.com/awest-noaa/WW3.git | ||
url = https://github.com/noaa-ocs-modeling/WW3.git | ||
branch = nuopc_unstruc | ||
[submodule "NEMS"] | ||
path = NEMS | ||
url = https://github.com/moghimis/NEMS | ||
url = https://github.com/noaa-ocs-modeling/NEMS.git | ||
branch = develop | ||
[submodule "ADCIRC"] | ||
path = ADCIRC | ||
url = https://github.com/moghimis/adcirc-cg.git | ||
url = https://github.com/adcirc/adcirc-cg.git | ||
branch = master | ||
[submodule "NWM"] | ||
path = NWM | ||
url = https://github.com/trimbleava/nwm_public_nuopc.git | ||
url = https://github.com/noaa-ocs-modeling/nwm_public_nuopc.git | ||
branch = master |
Submodule ADCIRC
updated
from 597650 to 742873
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
Submodule NEMS
updated
19 files
+48 −0 | .gitignore | |
+226 −0 | src/ENS_Cpl/ENS_CplComp_ESMFMod_STUB.f90 | |
+9 −0 | src/ESMFVersionDefine.h | |
+56 −0 | src/conf/configure.nems | |
+0 −0 | src/conf/externals.nems | |
+0 −0 | src/conf/modules.nems | |
+6 −6 | src/incmake/buildenv.mk | |
+4 −4 | src/incmake/component_ADCIRC.mk | |
+1 −2 | src/incmake/component_NWM.mk | |
+2 −2 | src/incmake/component_WW3.mk | |
+3,786 −0 | src/module_EARTH_GRID_COMP.tmp.f90 | |
+59 −0 | src/module_EARTH_INTERNAL_STATE.tmp.f90 | |
+9,214 −0 | src/module_MEDIATOR.tmp.f90 | |
+1,440 −0 | src/module_MEDIATOR_SpaceWeather.tmp.f90 | |
+359 −0 | src/module_MEDIATOR_methods.tmp.f90 | |
+993 −0 | src/module_NEMS_GRID_COMP.tmp.f90 | |
+60 −0 | src/module_NEMS_INTERNAL_STATE.tmp.f90 | |
+741 −0 | src/module_NEMS_Rusage.tmp.f90 | |
+159 −0 | src/module_NEMS_UTILS.tmp.f90 |
Submodule NWM
updated
47 files
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,101 +1,118 @@ | ||
## ADC-WW3-NWM-NEMS | ||
|
||
ADC-WW3-NWM-NEMS 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. | ||
|
||
## Cloning | ||
git clone --recursive https://github.com/noaa-ocs-modeling/ADC-WW3-NWM-NEMS.git | ||
# ADC-WW3-NWM-NEMS | ||
|
||
ESMF application for building a NUOPC / NEMS application coupling ADCIRC, ATMESH, WW3 / WW3DATA, and NWM. | ||
|
||
`ADC-WW3-NWM-NEMS` 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. | ||
|
||
```bash | ||
git clone --recursive https://github.com/noaa-ocs-modeling/ADC-WW3-NWM-NEMS | ||
cd ADC-WW3-NWM-NEMS | ||
``` | ||
|
||
## Compilation | ||
|
||
```bash | ||
./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 any combination 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 | ||
|
||
### Install ParMETIS | ||
|
||
Unstructured WW3 requires an installation of ParMETIS for domain decomposition. Download the code from this [link](http://glaros.dtc.umn.edu/gkhome/metis/parmetis/download) | ||
|
||
To 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` | ||
|
||
Set the path to ParMETIS: | ||
|
||
setenv METIS_PATH /path/to/your/parmetis | ||
|
||
### Set module files based on your HPC | ||
|
||
For a list of additional requirements and versions, see: | ||
|
||
modulefiles/hera/ESMF_NUOPC | ||
|
||
|
||
## Compile | ||
|
||
Set the following environment variable: | ||
|
||
- `ROOTDIR`: The directory of your choice where the repository has been cloned | ||
|
||
In the build script `build.sh`, select desired components for which to build the app, e.g.: | ||
|
||
make -f GNUmakefile build COMPONENTS="ADCIRC WW3 ATMESH" | ||
|
||
Execute the build script: | ||
|
||
./build.sh | ||
|
||
#### installing ParMETIS for WW3 | ||
|
||
Using unstructured WW3 requires an installation of ParMETIS for domain decomposition. | ||
|
||
1. [download the code here](http://glaros.dtc.umn.edu/gkhome/metis/parmetis/download) | ||
2. build ParMETIS | ||
```bash | ||
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 | ||
```bash | ||
setenv METIS_PATH /path/to/your/parmetis | ||
``` | ||
|
||
## Collaboration | ||
|
||
To collaborate and contribute to this repository follow below instructions: | ||
|
||
While in github GUI, https://github.com/noaa-ocs-modeling/ADC-WW3-NWM-NEMS.git: | ||
|
||
1) Hit the "Fork" button located on the upper right corner of the GUI in order | ||
to have your own copy of this repository into your own github repository. | ||
2) Your github username displays with a message "Where should we fork ..." . | ||
Click on your username to fork it into your account. | ||
3) You should see the source codes in your own github repository with the same | ||
name as the forked reopsitory. | ||
|
||
Next you should create your local version of your forked repository. | ||
Go to your local directoy and clone the the repository: | ||
|
||
1) git clone --recursive https://github.com/<your_github_repo_name>/ADC-WW3-NWM-NEMS | ||
2) do your collaboration edition and when finished | ||
3) git add . | ||
4) git commit -m "describe what you changed" | ||
5) git push origin master - to push your changes into your github | ||
6) enter your github username/password if asked | ||
|
||
While in your github repository GUI: | ||
|
||
1) push the "New pull request" button | ||
2) hit the "Create pull request" button | ||
3) the request goes to originated repository, where your changes are reviewed and | ||
merged or rejected. | ||
|
||
### Setup and compilation | ||
|
||
This application contains a module file tailored for the intended computer system. | ||
To compile in your own system you should create a similar file. The setup module | ||
file, is located at modulefile/hera/ESMF_NUOPC. Also, for your convenience there | ||
is a "HOWTO" that explains in detail about the usage of this application. | ||
|
||
|
||
## Cite | ||
|
||
Moghimi, S.; Van der Westhuysen, A.; Abdolali, A.; Myers, E.; Vinogradov, S.; Ma, Z.; Liu, F.; Mehra, A.; Kurkowski, N. Development of an ESMF Based Flexible Coupling Application of ADCIRC and WAVEWATCH III for High Fidelity Coastal Inundation Studies. J. Mar. Sci. Eng. 2020, 8, 308. https://doi.org/10.3390/jmse8050308 | ||
|
||
Development of a Flexible Coupling Framework for Coastal Inundation Studies, 2020 S Moghimi, A van der Westhuysen, A Abdolali, E Myers, S Vinogradov | ||
https://arxiv.org/abs/2003.12652 | ||
|
||
Development of a Flexible Coupling Interface for ADCIRC Model for Coastal Inundation Studies, 2019 Saeed Moghimi, Sergey Vinogradov, Edward P Myers, Yuji Funakoshi, Andre J Van der Westhuysen, Ali Abdolali, Zaizhong Ma, Fei Liu https://repository.library.noaa.gov/view/noaa/20609/ | ||
1. go to https://github.com/noaa-ocs-modeling/ADC-WW3-NWM-NEMS | ||
2. create a fork (click `Fork` on the upper right corner), and fork to your account. | ||
3. clone your forked repository | ||
```bash | ||
git clone --recursive https://github.com/<ACCOUNT>/ADC-WW3-NWM-NEMS | ||
``` | ||
4. edit the files locally | ||
```bash | ||
git status | ||
``` | ||
5. commit changes | ||
```bash | ||
git commit -a -m "describe what you changed" | ||
``` | ||
6. push your changes to GitHub | ||
```bash | ||
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/ADC-WW3-NWM-NEMS/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 | ||
``` |
Submodule WW3
updated
6 files
+17 −16 | model/esmf/Makefile | |
+178 −0 | model/esmf/Makefile-orig | |
+189 −0 | model/esmf/Makefile.orig | |
+62 −0 | model/esmf/Makefile.rej | |
+3 −0 | model/esmf/switch | |
+36 −0 | model/esmf/switch-orig |
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 @@ | ||
scripts/build-v1.1.sh |
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,25 @@ | ||
Patch usage: patch -p1 < patch_name | ||
example: patch -p1 < ADC-WW3-NWM-NEMS.patch | ||
to reverse it: | ||
example: patch -p1 -R < ADC-WW3-NWM-NEMS.patch | ||
|
||
1) Run the build.sh script as: | ||
build.sh -h or, build.sh --help | ||
to get the list of all options available to script. | ||
|
||
2) Example: Run the build.sh script as: | ||
build.sh | ||
to use the default settings | ||
|
||
3) Example: Run the build.sh script as: | ||
build.sh -plat stampede -component "ADCIRC ATMESH | ||
to use customized settings | ||
|
||
3) Example: Run the build.sh script as: | ||
build.sh -c --component="ADCIRC ATMESH | ||
to clean a previous compilation using "make clean" | ||
build.sh -c 2 --component="ADCIRC ATMESH | ||
to clean a previous compilation using "make distclean" | ||
|
||
Panagiotis Velissariou - 12/04/2020 | ||
|
Oops, something went wrong.