--- Welcome to the official ADCIRCWiki site! The site is currently under construction, with limited information. ---

For general information, see the ADCIRC site, ADCIRC FAQ, or the ADCIRC Wikipedia page. For model documentation not yet available on the wiki, see the ADCIRC site. New content is being continuously added to the ADCIRCWiki, and material from the main ADCIRC site will be gradually transitioned over to the wiki.

Main Page: Difference between revisions

From ADCIRCWiki
Jump to navigation Jump to search
(→‎Contributor/Editor Resources: organized, added to resources)
 
(33 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Hey there. For editors and administrators, links to some general wiki information are provided toward the bottom of this page, while more specific editing help can be found at the "Help" link on the sidebar of this page.  Have fun, and welcome to the party!   
For visitors to the site, please note the message above. For editors and administrators, links to some general wiki information are provided toward the bottom of this page, while more specific editing help can be found at the "Help" link on the sidebar of this page.  The following summary shows some of the major pages that need content.  Blue links are pages that have been created (but still definitely need content).  Red links are pages that haven't been created yet (clicking the link will let you create the page).  Have fun, and welcome to the party!   


== Getting Started with Running ADCIRC in Linux/Unix ==
<!-------Big table of contents--------->
 
{| style="border-style: solid; border-width:1px; width:100%; vertical-align:top; border-spacing:4px;"
As with most useful and complex models, just getting started is the main initial barrier.  This section of the wiki describes the most basic scenario of running ADCIRC on a Linux/Unix computer, using a simple test case as an example.  <strong> If the user is running ADCIRC through the SMS application, please see the SMS documentation on running ADCIRC within SMS.  This wiki does not cover that usage. </strong> And although the general process of running ADCIRC on a Windoze computer or cluster is the same as for Linux/Unix, this section does not cover compiling ADCIRC on a Windoze computer.  See "Compiling and Running ADCIRC on Windoze" instead.
|- style="vertical-align:top;
 
| style="width:50%" |    <!--setting column width here applies for the whole column of the big table-->
Initially, we will describe getting ADCIRC running on a simple test case in "serial" mode, meaning that only one cpu is used. Running ADCIRC in parallel mode is moderately more complex and will be described separately.
<!----- Basics ------->
 
{| width="100%" cellpadding="2" cellspacing="5" style="vertical-align:top; "
This section provides details on the following topics, with the serial, quarter annular harbor test case as a working example. Compiling the code for serial execution, the basic input/output files for ADCIRC, and what to do with the output.  Overviews of the main input and output files are also described.
|-
 
! <div style="margin:0; background:#97bfde; font-size:120%; font-weight:bold; text-align:left; color:#13294B; padding:0.2em 0.4em;">Basics</div>
This section assumes several things.  The user ...
|-
* knows ADCIRC is a finite element model, with linear triangular elements
|style="color:#000;"|
* has access to a computer on which to run ADCIRC, and that the OS is Unix/Linux
*[[adcirc:About|About ADCIRC]]
* knows how to edit files (using an editor such as vi/vim, emacs (really?), or a GUI editor)
*[[Features]]
* is familiar with working on computers via the "command line" (i.e., not clicking around with the mouse as in Windoze)
*[[Getting started]]
* has the source code (which is not freely available)
*[[FAQ]]
* has a compiler available (see notes below)
*[[Version information]]
 
|}
=== Compiling ADCIRC ===
| style="width:50%" |    <!--setting column width here applies for the whole column of the big table-->
The ADCIRC model is written in Fortran (the best language eva') and needs to be compiled into executable code for the specific computer.  Thus, the user needs a Fortran compiler available to translate the text source code into something the computer can execute.
<!----- User guide ------------------------>
 
{| width="100%" cellpadding="2" cellspacing="5" style="vertical-align:top; "
==== Do you have a Fortran compiler? ====
|-
If the answer to this question is "Huh?", then read this: https://en.wikipedia.org/wiki/Compiler
! <div style="margin:0; background:#b9b7eb; font-size:120%; font-weight:bold; text-align:left; color:#000; padding:0.2em 0.4em;">User Guide</div>
 
|-
==== Which Compiler Do I Use? ====
|style="color:#000;"|
If you are working on a desktop machine, you probably know if a compiler is available. If one is not available and you have administrative access to the computer, install the GNU fortran compiler.  Otherwise, have an administrative user install it. The compiler is available here: https://gcc.gnu.org/wiki/GFortranBinaries
*[[Compiling]]
 
*[[File formats]]
If you are working on a High-Performance Computing (HPC) cluster maintained as a research and applications resource, then the chances are high that a Fortran compiler exists on that machine.  In fact, there are probably several, typically including the GNU Fortran computer gfortran, and commercial compilers from Intel (ifort) and Portland Group (pgf).  Which compiler you actually use depends on how your specific user environment is configured.  Large clusters frequently use the "module" approach to add applications to the user's environment, or else just publish a list of compilers and how to add paths to them. 
*[[Model setup]]
 
*[[Running]]
Regardless, let's assume that you have a compiler identified.  The mechanics of compiling ADCIRC are independent of the specific compiler.
*[[Visualization]]
 
*[[Tools]]
==== OK, actual compile time ====
|}
The ADCIRC source code is packaged in directories ("folders" in Windoze parlance).  The actual compiling is done in the "work" directory.  In a terminal (i.e., on the command-line), go there.  In this directory, there is a file called "makefile", which is a system for compiling software into executable code. There is also a file called cmplrflags.mk that contains sections for different compilers. Assuming that you have the gfortran compiler available somewhere on your environment's PATH, edit the cmplrflags.mk file by uncommenting the line that says "compiler=gnu".  This will tell the make process to use compiler information as defined in the "gnu" section for a Linux OS.  At the command prompt, type "make adcirc" to compile the serial ADCIRC model. 
|- style="vertical-align:top;
 
|
=== Running the Serial Quarter Annular Harbor Test Case ===
<!----- How-Tos ------->
The test case is the so-called serial quarter annular problem.  It is described in some detail here: https://adcirc.org/home/documentation/example-problems/quarter-annular-harbor-with-tidal-forcing-example/.
{| width="100%" cellpadding="2" cellspacing="5" style="vertical-align:top; "
The ADCIRC grid is only 63 nodes (triangle vertices) and 96 elements.  It looks like this:
|-
 
! <div style="margin:0; background:#b7ebdb; font-size:120%; font-weight:bold; text-align:left; color:#000; padding:0.2em 0.4em;">How-To</div>
Get the test case, if you have not already done so. The serial case is here: http://www.unc.edu/ims/adcirc/test_cases/quarter_annular/serial_quarter_annular_v51_52_20.zip  Unzip/untar the downloaded file.  It will expand into a directory called "serial_quarter_annular_v51_52_20/".  Go there and uncompress the contents.
|-
 
|style="color:#000;"|
There are 16 files in this directory, only two of which are *input* files.  The rest are output by ADCIRC and contain various
*[[Tutorials]]
*[[Examples and Test Cases]]
*[[Troubleshooting]]
*[[Grid Development and Editing]]
*[[Tips and Tricks]]
|}
|
<!----- Technical ------->
{| width="100%" cellpadding="2" cellspacing="5" style="vertical-align:top; "
|-
! <div style="margin:0; background:#7ea0ff; font-size:120%; font-weight:bold; text-align:left; color:#000; padding:0.2em 0.4em;">Technical</div>
|-
|style="color:#000;"|
*[[ADCIRC physics|Physics]]
*[[ADCIRC numerics|Numerics]]
*[[Code architecture]]
*[[Parallelization]]
*[[Coupling]]
|}
|}


== Contributor/Editor Resources ==
== Contributor/Editor Resources ==
 
A quick way to learn Wiki syntax (the source code is called "[https://www.mediawiki.org/wiki/Wikitext wikitext]") is to go to a Wikipedia page and click on the "Edit source" or "View source" link at the top of the page.  I often use [https://en.wikipedia.org/wiki/Navier%E2%80%93Stokes_equations the Navier Stokes page].  If something works on Wikipedia but not here, let Taylor know. 
* [https://meta.wikimedia.org/wiki/Help:Contents#For_editors General editing help]
* General editing
* [https://meta.wikimedia.org/wiki/Help:Starting_a_new_page Starting a new page]
** [http://www.workingwithmediawiki.com/book/chapter3.html Nice list of key editing abilities]
* [https://en.wikipedia.org/wiki/Wikipedia:Sandbox "Sandbox"] to play around with editing without affecting anything...this is on Wikipedia but should work the same
** [https://meta.wikimedia.org/wiki/Help:Contents#For_editors General editing help]
* [https://meta.wikimedia.org/wiki/Help:Advanced_editing Advanced editing]
** [https://meta.wikimedia.org/wiki/Help:Advanced_editing Advanced editing]
* [https://meta.wikimedia.org/wiki/Help:Reverting Reverting edits]
* Specific editing tasks/tools
* [https://www.mediawiki.org/wiki/Help:Templates Templates help]
** [https://meta.wikimedia.org/wiki/Help:Starting_a_new_page Starting a new page]
** [https://meta.wikimedia.org/wiki/Help:Reverting Reverting edits]
** [https://www.mediawiki.org/wiki/Help:Templates Templates help]
** [https://www.mediawiki.org/wiki/Help:Cite Citations and <nowiki><ref></nowiki> help]
* [[Help:Style Guide|ADCIRC Wiki style guide]] (under development)
* [https://en.wikipedia.org/wiki/Wikipedia:Sandbox "Sandbox"] to play around with editing without affecting anything...this is on Wikipedia but should mostly work the same
* Somewhat related: [https://en.wikipedia.org/wiki/Help:Directory Wikipedia help directory], [https://en.wikipedia.org/wiki/Template:Wikipedia_technical_help Wikipedia technical help list], [https://en.wikipedia.org/wiki/Help:Text_editor_support Wikipedia text editor help]
* Somewhat related: [https://en.wikipedia.org/wiki/Help:Directory Wikipedia help directory], [https://en.wikipedia.org/wiki/Template:Wikipedia_technical_help Wikipedia technical help list], [https://en.wikipedia.org/wiki/Help:Text_editor_support Wikipedia text editor help]



Latest revision as of 09:45, 17 June 2020

For visitors to the site, please note the message above. For editors and administrators, links to some general wiki information are provided toward the bottom of this page, while more specific editing help can be found at the "Help" link on the sidebar of this page. The following summary shows some of the major pages that need content. Blue links are pages that have been created (but still definitely need content). Red links are pages that haven't been created yet (clicking the link will let you create the page). Have fun, and welcome to the party!

Basics
User Guide
How-To
Technical

Contributor/Editor Resources

A quick way to learn Wiki syntax (the source code is called "wikitext") is to go to a Wikipedia page and click on the "Edit source" or "View source" link at the top of the page. I often use the Navier Stokes page. If something works on Wikipedia but not here, let Taylor know.

Moderator/Admin Resources

Wiki Management: Getting started