From XMS Wiki
Jump to navigationJump to search
ADCIRC Screenshot
Model Info
Model type Finite element hydrodynamic model for coastal oceans, inlets, rivers and floodplains.

Rick Luettich
Joannes Westerink
Randall Kolar

Clint Dawson
Web site

General Section

  • Data Visualization
  • Mesh Editing
  • Observation

Models Section

Several Sample problems can be found on the ADCIRC model developer's webpage

The ADCIRC (Advanced Circulation) model is a finite element hydrodynamic model for coastal oceans, inlets, rivers and floodplains. The initial developers of the code were Rick Luettich (University of North Carolina at Chapel Hill) and Joannes Westerink (University of Notre Dame). Other principal developers include Randall Kolar (University of Oklahoma at Norman) and Clint Dawson (University of Texas at Austin). Various other groups are involved in development and support around the country.

The ADCIRC model can be added to a paid edition of SMS.

Graphical Interface

SMS provides a graphical interface that is designed to visualize the projects being created, easily modify project parameters, and view the solutions produced by the ADCIRC model. For information on version of ADCIRC distributed with SMS, see the model version chart.

The ADCIRC graphical interface contains tools to create and edit an ADCIRC simulation. The simulation consists of a geometric definition of the model domain (the mesh) and a set of numerical parameters. The parameters define the boundary conditions and options pertinent to the model.

The interface is accessed by selecting the 2D mesh module and setting the current model to ADCIRC. If a mesh has already been created for a ADCIRC simulation or an existing simulation read, the mesh object will exist in the Project Explorer and selecting that object will make the 2D Mesh module active and set the model to ADCIRC. See the 2D mesh module documentation for guidance on building and editing meshes as well as visualizing mesh results.

The interface consists of the 2D mesh module menus and tools augmented by the ADCIRC menu. See ADCIRC Graphical Interface for more information.


The list of files (both input and output) that may be associated with an ADCIRC simulation is quite long. The web site lists all of these with details describing format and purpose. A brief summary of the most common file types is included here:

Input files

  • Required
    • fort.14: Grid file – Saved as proj_name.grd by SMS and copied to fort.14 for use in an ADCIRC run.
    • fort.15: Control file – Saved as proj_name.ctl by SMS and copied to fort.15 for use in an ADCIRC run.
  • Optional
    • fort.13: Nodal or Spatial attributes
    • fort.19: Specified water surfaces (non-periodic elevation)
    • fort.20: Specified flow rates (non-periodic flow/flux such as a river)
    • fort.22, fort.2**: Meteorologic conditions (winds and atmospheric pressure) – Several formats depending on the option being used.
    • fort.23: Wave radiation stress forcing

Output files

  • Diagnostic
    • fort.6 – Screen output
    • fort.16 – General information
    • fort.18 – Parallel file
    • fort.33 – ITPACKV 2D Solver convergence issue information
  • Global
    • fort.63 or – Water surface at each node
    • fort.64 or – Velocity components at each node
    • fort.53 – Elevation Harmonic constituents at each node
    • fort.54 – Velocity Harmonic constituents at each node
    • fort.73 – Atmospheric pressure at each node
    • fort.74 – Wind stress or velocity at each node
    • fort.80 – Parallel run file
  • At observation stations
    • fort.61 – Water surface at stations
    • fort.62 – Velocity components at stations
    • fort.51 – Elevation Harmonic constituents at stations
    • fort.52 – Velocity Harmonic constituents at stations
    • fort.71 – Atmospheric pressure at stations
    • fort.72 – Wind stress or velocity at stations

Global Output Format

Generally, ADCIRC has the ability to output global data in three formats. These include:

  • Standard ASCII – This format loops through the time steps including a value for each node (both node ID and solution value). These files are commonly very large (multiple GB) and can take a significant amount of time to load (sometimes as long as half an hour) because SMS has to process each time step of each dataset and build information about the solution for faster access. When instructing SMS to read a file of this type, SMS recognizes that the ASCII format is not efficient and converts the data to XMDF format in an "h5" file. The name of the XMDF file that will be created can be specified. Multiple standard ascii files can be combined into a single "h5" file. The new "h5" file hase the following advantages:
    • The "h5" file is binary and compressed so it is much smaller than the standard ASCII file.
    • SMS can read the "h5" file almost instantaneously because all of the time step information is already compiled and a single time step is retrieved rather than processing the entire dataset.
  • Sparse ASCII – This format loops through the time steps includes a default value for the time step and a number of nodes that don't have this default. Most commonly, the default would be -9999 indicating dry nodes. The file then includes the exceptions consisting of node ID and solution values for nodes that are not the default value. These lines are identical to the value lines in the standard ASCII format. (This format is supported in SMS starting at version 11.2) SMS converts sparse ASCII files to XMDF files just as it does the standard ASCII files.
  • NetCDF – This format is a binary library format using the NetCDF library. The data can be viewed using an HDF viewer. (This format is supported in SMS starting at version 11.2)

(Note: ADCIRC documentation references a global binary format as an option. These options correspond to NOUT** values of 2 and -2 generally. There is no evidence that this option is functional in the current version of ADCIRC. It has been removed from the SMS interface.)


ADCIRC is a system of computer programs for solving time dependent, free surface circulation and transport problems in two and three dimensions. These programs utilize the finite element method in space allowing the use of highly flexible, unstructured grids. Typical ADCIRC applications have included: (i) modeling tides and wind driven circulation, (ii) analysis of hurricane storm surge and flooding, (iii) dredging feasibility and material disposal studies, (iv) larval transport studies, (v) near shore marine operations.

ADCIRC (which models wetting and drying) has also been used to model the propagation and inundation of tsunami waves as shown in this paper. ADCIRC was also coupled with SWAN outside of SMS to model tsunami inundation in this paper.

For more information about the ADCIRC model visit

Running ADCIRC in Parallel (PADCIRC)

SMS 11.2 and later allow running ADCIRC in parallel (PADCIRC) on a single machine to take advantage of multiple cores. This can greatly speed up the runs. Use the following steps to set up a PADCIRC model:

  1. Obtain the MPI (Message Passing Interface) executable by downloading the "ADCIRC Basic Utilities" found in the Database Files & Utilities section on the SMS downloads page on Aquaveo's website. The zip archive will be named "".
  2. Unzip "".
  3. Install and run MPI as an administrator by doing the following:
    Warning: As this is a more advanced process, steps may vary depending on machine, firewall setup, etc.
    Attempt this first:
    1. Double-click on "w_mpi-rt_p_4.1.0.023.exe" in the "ADCIRC_Essentials" folder.
    2. Follow all of the installation steps in the wizard.
    If the previous steps don not work, do the following:
    1. Search for "command" in the Windows search bar.
    2. Right-click on the "Command Prompt" result and select Run as administrator.
    3. Change to the directory where MPI was installed. The default location is "C:\Program Files (x86)\Intel\MPI-RT\\em64t\bin".
    4. Type "mpivars.bat" and press Enter.
    5. Type "smpd -install" and press Enter.
    6. Type "mpiexec -remove" and press Enter.
    7. Type "mpiexec -register" and press Enter.
    8. Type "mpiexec -validate" and press Enter. The command prompt should return "SUCCESS".
    9. Type "smpd -status" and press Enter. The command prompt should return "smpd running on <hostname>", where "<hostname>" is the name of the computer running it.
    10. If the last two commands are successful, ADCIRC is ready to run in parallel.
  4. In SMS, select Edit | Preferences to bring up the Preferences dialog.
  5. Select the File Locations tab
  6. In the Other Files section, set the file path for the MPIEXEC executable.
  7. Open the ADCIRC Model Control dialog.
  8. Select the General tab in the model control.
  9. In the Processors section put the desired number of processors into the Computational field.
    1. To find out how many processors (CPU's or cores) the machine can use, right-click on the windows task bar and select Task Manager to bring up the Windows Task Manager.
    2. In the task manager, select the Performance tab and count the number of boxes under the CPU Usage History section or check the number next to Cores. This will show how many physical processors the computer has. It may also list the number of logical (or virtual) processors if hyper-threading technology is enabled (it may have twice as many CPU's show up as actual physical cores in the hardware).
    3. Note that running PADCIRC using hyperthreading (specifying more logical processors than physical cores) has not been shown to significantly reduce run time.
  10. In SMS, run the ADCIRC model and PADCIRC.exe will run instead.


When using File | Save As... the following files get saved in the SMS file.

  • *.mat referenced to new save location
  • *.map referenced to new save location
  • *.grd referenced to new save location
  • *.ctl referenced to new save location
  • *.h5 referenced to new save location
  • *.dat referenced to new save location

Using the Model / Practical Notes

It's important to note that ADCIRC is configured to accept only one calendar year’s data, so it is not possible to combine meteorological data from two different calendar years into a single file and then run it (e.g. Dec 2015 and Jan 2016 data could not be combined into a single ADCIRC model).

When importing a fort.22 file, the ADCIRC control file must be imported to read the data in the fort.22 file. If the fort.22 happens to be a best track format file (NWS=8,19,20), add the ".atcf" extension to the file name so that SMS can import the file and create a wind track coverage. This is the only format of fort.22 that is independent enough of the fort.15 to reasonably expect anything to happen on import.

There is an ADCIRC listserv that may be useful to keep up-to-date about the latest releases of ADCIRC and to post any questions about ADCIRC. It is If wanting to join, please email Crystal Fulcher.

If the fort.14 file has been manually edited, the mesh may not be usable once imported into SMS. Doing this may cause certain functions to fail such as converting mesh features to a coverage or mapping tidal components. This is not always the case, but care should be taken when editing the fort.14 file outside of SMS and in general it is not advisable. The model checker may catch these issues, but in some cases the model checker will miss the error.

Editing the mesh in SMS after it has been linked to a simulation may require that the mesh be unlinked and re-applied to the simulation.

Related Topics

External Links

  • ADCIRC Home page
  • Mar 2002 ERDC/CHL CHETN-IV-40 Guidelines for Using Eastcoast 2001 Database of Tidal Constituents within Western North Atlantic Ocean, Gulf of Mexico and Caribbean Sea [1]
  • Jun 2001 ERDC/CHL CHETN-IV-32 Leaky Internal-Barrier Normal-Flow Boundaries in the ADCIRC Coastal Hydrodynamics Code [2]
  • Mar 2001 Technical Report CHL-98-32 Shinnecock Inlet, New York, site Investigation Report 4, Evaluation of Flood and Ebb shoal Sediment Source Alternatives for the West of Shinnecock Interim Project, New York [3]
  • Dec 1999 Coastal Engineering Technical Note IV-21 Surface-Water Modeling System Tidal Constituents Toolbox for ADCIRC [4]
  • Assessment of ADCIRC's Wetting and Drying Algorithm
  • Video demonstration of using ADCIRC in SMS