Recent Releases of ADCIRC
ADCIRC - v56.1.0
v56.1.0
In addition to various bug fixes and improvements, version 56.1.0 brings the following new features:
- Internally Computed Tide Potential Forcing (@dwirasae, Al Cerrone)
- Addition of netCDF inset for
NWS=14(@poseidonND) - CLE15 vortex model (@cblakely97, @WPringle)
- Option to turn off
dPhi/dtterm in subgrid corrections leading to improved stability (@jlwoodr)
Summary
What's Changed
- Updating internal tide dissipation modification for use within ADCIRC… by @cblakely97 in https://github.com/adcirc/adcirc/pull/398
- Updates for dynamic water level correction by @shinbunya in https://github.com/adcirc/adcirc/pull/403
- Add compatibility with NVIDIA compilers by @zcobell in https://github.com/adcirc/adcirc/pull/405
- Fixing bug where writers were shut down twice by @zcobell in https://github.com/adcirc/adcirc/pull/407
- Adding method for explicitly computing Earth/Sun/Moon positions for tide potential calculations by @zcobell in https://github.com/adcirc/adcirc/pull/412
- Fixing issue in tables for full TIP by @dwirasae in https://github.com/adcirc/adcirc/pull/420
- Main nov2024 fixining fulltip by @dwirasae in https://github.com/adcirc/adcirc/pull/421
- Allowing NTIF=0 when using analytical TIP solution by @zcobell in https://github.com/adcirc/adcirc/pull/423
- Fixing behavior for warning elevation debug file when activated through namelist by @zcobell in https://github.com/adcirc/adcirc/pull/424
- Fixing velocity station nulls, Upgrading CI docker image, Adding Ninja compatibility by @zcobell in https://github.com/adcirc/adcirc/pull/429
- Improvement for drying in 1D/2D channel algorithm by @shinbunya in https://github.com/adcirc/adcirc/pull/432
- Adding Wind & Pressure Inset Option in NETCDF Format by @poseidonND in https://github.com/adcirc/adcirc/pull/435
- Adding automated Docker container build by @zcobell in https://github.com/adcirc/adcirc/pull/438
- Nc inset fix by @poseidonND in https://github.com/adcirc/adcirc/pull/439
- Adding ARM container builds by @zcobell in https://github.com/adcirc/adcirc/pull/440
- Adding build of main branch containers on change by @zcobell in https://github.com/adcirc/adcirc/pull/441
- Fast inset by @poseidonND in https://github.com/adcirc/adcirc/pull/443
- Added option to remove dphidt from computations by @jlwoodr in https://github.com/adcirc/adcirc/pull/436
- Updating tide potential calculations to explicitly use double precision by @zcobell in https://github.com/adcirc/adcirc/pull/444
- Adjusting format read to i4 from i3 for iFcstInc. by @mattbilskie in https://github.com/adcirc/adcirc/pull/447
- Remove binary output option by @zcobell in https://github.com/adcirc/adcirc/pull/445
- Using pre-computed array for csr matrix position by @zcobell in https://github.com/adcirc/adcirc/pull/418
- Update NWS8 and adding upgrades from Wang et al., (2022) by @cblakely97 in https://github.com/adcirc/adcirc/pull/449
- Initial commit to add ADCIRC documentation under docs by @shinbunya in https://github.com/adcirc/adcirc/pull/451
- Updating commit message for docs builds by @zcobell in https://github.com/adcirc/adcirc/pull/452
- Update wetdry.F by @chrismassey in https://github.com/adcirc/adcirc/pull/453
- Updating README.md to inform users of the new ADCIRC documentation by @shinbunya in https://github.com/adcirc/adcirc/pull/455
- Updating code for new compilers by @zcobell in https://github.com/adcirc/adcirc/pull/458
- Adding Pre-commit checks, developer mode, and updated CONTRIBUTING.md by @zcobell in https://github.com/adcirc/adcirc/pull/459
- Limiting scope of Github Actions workflows by @zcobell in https://github.com/adcirc/adcirc/pull/460
- Refactoring docs structure, consolidating ADCIRC wiki, and adding more content by @shinbunya in https://github.com/adcirc/adcirc/pull/462
- Adding About This Documentation page to the documentation by @shinbunya in https://github.com/adcirc/adcirc/pull/463
- Cleaning up CMake files by @zcobell in https://github.com/adcirc/adcirc/pull/465
- Fixing uninitialized variables used in logic by @zcobell in https://github.com/adcirc/adcirc/pull/468
- Fix River Forcing While Using Projection by @poseidonND in https://github.com/adcirc/adcirc/pull/466
- Fix for 3D ADCIRC Code by @zcobell in https://github.com/adcirc/adcirc/pull/470
- Fix warning messages by @zcobell in https://github.com/adcirc/adcirc/pull/473
New Contributors
- @poseidonND made their first contribution in https://github.com/adcirc/adcirc/pull/435
- @mattbilskie made their first contribution in https://github.com/adcirc/adcirc/pull/447
- @chrismassey made their first contribution in https://github.com/adcirc/adcirc/pull/453
Full Changelog: https://github.com/adcirc/adcirc/compare/v56.0.4...v56.1.0
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | edd83b5451e1ce6fb5b0c499e803c078 |
| SHA1 | 3836585f1c33bd3e16ede5c553b9abd3b0a8795e |
| SHA256 | c9119f950b58d5a4d994a1b0c87632b183cd51823f9f5c6f857c787bb2260f97 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell 10 months ago
ADCIRC - v56.0.4
v56.0.4
Fixing issue which could cause instabilities in wet/dry with near zero values
What's Changed
- Apply wet/dry update to v56 by @zcobell in https://github.com/adcirc/adcirc/pull/456
Full Changelog: https://github.com/adcirc/adcirc/compare/v56.0.3...v56.0.4
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 74767579afe3402aa26a9c1ef5530827 |
| SHA1 | e1289c2f8af7194914cf86c3922b24b14544b122 |
| SHA256 | 8135b5bf7f9db154f10a6523574a6ebb809fb7416d4f81a853d06fcb136c7989 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell about 1 year ago
ADCIRC - v56.0.3
v56.0.3
Fixing issue which cause velocity stations (fort.62/fort.62.nc) to report null values (#427)
What's Changed
- Adding check for station output type in packTwo by @zcobell in https://github.com/adcirc/adcirc/pull/430
Full Changelog: https://github.com/adcirc/adcirc/compare/v56.0.2...v56.0.3
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 7fcf770d0132052f2ee11882492827af |
| SHA1 | 8262b9404236004a67b6fdc8e3469034bb3ea02e |
| SHA256 | fdef5165b37d1dbc6de3e8943110c2ad3230872be04bd53ee3b6bf54d3b97183 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 1 year ago
ADCIRC - v56.0.2
v56.0.2
This is a minor bug fix release for ADCIRC version 56. The full release details for ADCIRC Version 56 located here.
What's Changed
- Minor fix for double shutdown of writer processors which could cause issues with certain MPI libraries (@zcobell, #407)
- Fix for running ADCIRC within the CSTORM system where the
labelsvariable might be double-allocated on successive runs (@chrismassey, #407)
Full Changelog: https://github.com/adcirc/adcirc/compare/v56.0.1...v56.0.2
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 07d01aba6116fb8bcd56097954e51b6b |
| SHA1 | 789808d770d88d35f56fd645a54cc04ec62c188a |
| SHA256 | 74e0dff04ae25200f4bf3cc7b0f344595770e70b193a9ea928e76a86b17d83ba |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell almost 2 years ago
ADCIRC - v56.0.1
v56.0.1
This is a minor bug fix release for ADCIRC version 56. The full release details for ADCIRC Version 56 located here.
What's Changed
- Minor v56 bug fixes for subgrid filename initialization and GCC > 14 by @zcobell in https://github.com/adcirc/adcirc/pull/401
Full Changelog: https://github.com/adcirc/adcirc/compare/v56.0.0...v56.0.1
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | b3e7101999f6657c50ac88248b367b7e |
| SHA1 | b7844eb5ca33baa3ec67cd2093a59f25eaa439e2 |
| SHA256 | cba0663722cfbfcc2c49dd01facb525d8ad49fe5f41c2017ce81173e3618b862 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell almost 2 years ago
ADCIRC - v56.0.0
v56.0.0
This is the first release of ADCIRC version 56. Version 56 has a significant number of new features and improvements.
Major New Features
Version 56 brings several major new features, such as:
Subgrid Modeling Capability (@jlwoodr, #348)
Subgrid modeling with ADCIRC allows for the incorporation of high-resolution bathymetric and topographic information without significant increases in computational cost. With subgrid modeling, hydraulic connectivity through subgrid scale features such as small tidal channels can be achieved on coarsened numerical meshes. The subgrid additions in ADCIRC v56 include changes to the wetting and drying routine (allowing for partially wet elements) and higher level corrections to the momentum solver (advection and bottom friction calculations). Subgrid modeling with ADCIRC requires the use of a pre-computed lookup table. (There is an example script for computing this lookup table here. This set of scripts will create subgrid input files for subgrid enabled ADCIRC) and additions to the namelist in the fort.15 file (wiki link). For more information on sub-grid modeling with ADCIRC, please refer to the following publications: [1] [2]. Note that the original implementation of this work used an edge based scheme, however, it has since been upgraded for efficiency to a vertex based scheme.
1D channels (Vertical Element Wall and 1D Condensation) (@shinbunya, #321)
Two new techniques are introduced to efficiently represent channels with various scales. The first, Vertical Element Wall (VEW), enables a discontinuous representation of topobathymetric elevation. The VEW is useful when the topo-bathymetric elevation varies abruptly with a scale smaller than grid spacing. It is typically used to represent steep slopes or vertical walls along sides of channels. The VEW is implemented as an extension of the interior barrier boundary (IBTYPE=24). The VEW's IBTYPE is 64. Unlike the interior barrier boundary where the weir formula is used to couple solutions on the sides of barriers, the VEW gives fully coupled solutions, solving the shallow water equations when a vertical wall is completely submerged. This leads to more seamless bi-directional exchange of water mass and momentum between channels and floodplains. The second technique consolidates nodal equations at paired nodes across a channel. Doing this eliminates cross-channel variability and consequently eliminates the across-channel Courant-Friedrichs-Lewy stability constraint on the model time step. The list of these pairs of nodes are specified as the nodal attribute "condensed_nodes" in fort.13 file. Together the two techniques allow channels of various sizes as well as other instances of steep topography to be embedded seamlessly, efficiently and in a fully coupled manner, yielding quasi one dimensional solutions in the channels. The details of the two techniques are described in Bunya et al. (2023).
Enhanced 2D+ baroclinic coupling (@cblakely97, #351)
The densityControl namelist has been upgraded to now include the option to supply the baroclinic forcing (depth-averaged baroclinic pressure gradient and bouyancy frequencies) as nodal rather than gridded input. It is recommended to calculate the baroclinic forcing from an ocean global circulation model onto the ADCIRC grid at each output level in a finite-element sense (see the ADCIRC theory and formulation report). This helps eliminate the aliasing from coarse OGCM to fine ADCIRC grid at boundaries. To turn on the baroclinic forcing at each node, the densityForcingType variable in the densityControl namelist needs to be set to BCForcingOnADCIRCGrid.
Improved wetting/drying stability and slope limiting (@dylnwood, #371, #322, #320, #311)
Wetting/drying Improvements:
- Addition of a specialized slope limiter to prevent excessive drainage on flooded elements. Excessive drainage leads to persistent model instabilities, due to the fact that water levels at nodes where elev. is less than 0.8*h0 are "reset", causing nodes with too much drainage to enter an endless loop of draining and resetting, which degrades the reliability of the numerical solution for the entire neighboring geographic region. This situation typically occurs when time steps are large and where there are rapid changes in topographic gradients. We specifically apply a limit on the component of the water surface elevation gradient that lies in the same direction as the bathymetric or topographic surface elevation gradient. Controlled by setting the value of the limit in the "wetDryControl" namelist with the "slim" parameter.
- Keep the maximum value for the friction (TK) approximation and apply equal friction on the two nodes forming the wetting front for an element transitioning from dry to wet. Reduces the stochastic behavior of the model, e.g., to ensure that the solutions are invariant with respect to the ordering of the computations, so that they are more reproducible. Previously, the value of the friction factor at a location on the wetting/drying front was overwritten with the most recently computed value, resulting in slightly different solutions for simulations with wetting/drying, depending upon the ordering of the finite elements in the connectivity table used for model input. Setting friction equal at the wetting front for an element also improves stability of solutions along the wet/dry boundary.
- Addition of the logical parameters
directvelWDanduseHFto the&wetDryControlnamelist. The option "directvelWD" lets the user choose to compute the flow velocity in the wetting/drying algorithm directly from the gravity-friction force balance. Previous code uses the user chosen value of "velmin" to approximate the velocity, and then checks this velocity against the very same value of velmin to determine whether to transition a node from dry to wet. The "directvelWD" avoids this circular logic and obtains a more physically realistic approximation to the velocity, which we then check against velmin to find out if a dry node should be wet. The optionuseHFinvokes a larger friction approximation in the wetting/drying algorithm, wherein ifuseHF = true, then we assume the friction coefficientCf = 1in the computation of the velocity from the gravity-friction balance. On average, this option increases friction along the wetting front considerably and can significantly slow the propagation of the wetting front during a flooding event, should the user deem this desirable. The "useHF" option does not have any effect if the "directvelWD" option is not used.
Wind stress:
- Introduce a limiting factor on wind stress for elements with very shallow flow. The magnitude of the wind stress could become unrealistically large for locations with very shallow flow, due to the fact that computations for wind stress are formulated with flow depth in the denominator. Leads to catastrophic instabilities in the model solution, i.e., the model crashes due to elevation warnings. For locations where water surface elevation is between
h0and4*h0the wind stress is reduced by a hyperbolic tangent factor, starting at1for a water level of4*h0and ending at0forh0. Controlled by setting the logical parameterwindlimin thewetDryControlnamelist.
Subgrid barrier/time-varying bathymetry fix:
- Introduce the global variables
H1andH2to store the values of the flow depths at the previous and current timesteps, respectively. In the previous code, when changing bathymetry (DP) on the current timestep, either at a subgrid barrier to adjust the overtopping rate, or for using the time-varying bathymetry feature, the wrong value ofH1was obtained, since it was recomputed asH1 = DP + ETA1, rather than being stored from the previous timestep. In some cases, this situation leads toH1 = 0. (H1could not actually be zero at the previous timestep, since the water level is reset for elevs less than0.8*h0.) This case leads to instabilities in atmospheric forcing, since the formulation for wind stress containsH1in its denominator, ultimately causing the model to crash due to elevation warnings. This update avoids the above issue and slightly reduces the model's compute load, while slightly raising the memory load, since we no longer have to recompute the depths as frequently, e.g.,HX = DP + ETAX.
SWAN Version 41.45 (@caseydietrich, #380)
Version 41.45:
- The DCTA method for computing triads as described in Booij et al. (2009) is included as an option. See also Section 2.3.4 of the Technical documentation.
- The method of De Wit (2022) for estimating the biphase is included as an option. See also SWAN settings for further details.
- Current-induced whitecapping as proposed by Van der Westhuysen (2012) is included as an option. For more information, consult the page SWAN settings.
Version 41.41:
- Bragg scattering is included as an option. Consult for details Section 2.3.7 of the Technical documentation.
- 1D surfbeat of Reniers and Zijlema (2022) is included as an option.
- The Quasi-Coherent Model (QCM) is included as an option. The method is described in Akrish et al. (2020) and Smit et al. (2015). See also Section 2.7 and Section 3.9 of the Technical documentation.
- Radiated seaward FIG energy / reflection option included for FIG source.
- TMA spectrum shape included for boundary condition.
- Supports VTK format files for post-processing with Paraview. See for details the User Manual.
Minor New Features
- Time varying combined wave radiation/flux boundaries [
ibtype=32] (@zcobell) - ESMF NUOPC Coupler (@pvelissariou1, #304)
- A subgrid barrier nodal attribute which can restrict flow across coarse elements (@zcobell, @dylnwood #304, #371)
- NetCDF based SAL files for improved decomposition and loading times (@zcobell, #335)
- ARM processor compatibility within CMake build system (@zcobell, #330)
- Blending of NWS=12 wind fields (@zcobell, #336)
- More efficient I/O with NWS=14 GRIB/NetCDF meteorological forcing files (@cblakely97, @dwirasae, #357, #389)
- Ability to use the command line argument
--hashto write the git repository hash to screen (@zcobell, #373) - Wave radiation stress gradient limiter (@chrismassey, #383)
- Full mesh specification in netCDF output files (@zcobell, #385)
- UGRID 2.0 compliance and
xarraycompatibility. This also allows users to directly load results files directly into programs like QGIS (@zcobell, #385)
Bug Fixes
- Bug fixed when using writer cores (@cblakely97, #333)
- Fix for tropical cyclones in southern hemisphere (@pvelissariou1, #329)
- Unification of physical constants (@zcobell, #339, #384)
- Fix for wind direction bug in NWS=13 (@acrosby, #352)
- Removal of single precision mode (i.e.
-DREAL4) (@zcobell, #340) - Fix for bug in output of ice concentration (@GM-Ling, #317)
- Fix for building
punswanusing legacy build system (@zcobell, #337) - Fixing weir cross-barrier pipe boundaries in
adcprep(@zcobell, #382) - Removal of arithmetic if statements flagged by GCC compilers as deprecated (@zcobell, #386)
- Fix for array access in VEW1D/Condensed Nodes (@shinbunya, @zcobell, #391, #392)
- Fix for netCDF arrays with certain combinations of boundary conditions in the model (@zcobell, #392)
Lastly, ADCIRC is now released under the terms of the GNU Lesser General Public License, Version 3 (#362)
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | dba0ad294525fb1194df15234b31001e |
| SHA1 | 89ded6802c0bf92c14bc4dfaa2dc148940625531 |
| SHA256 | 2c53ebe89eb1bc1a6426781fdf9f8fdd8cb93261bfedb6afd59b94b926fc1c78 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell about 2 years ago
ADCIRC - v56.0.0-beta.2
v56.0.0-beta.2
This is the second beta release of ADCIRC version 56 which addresses some minor bugs that were uncovered during testing.
Major New Features
Version 56 brings several major new features, such as:
Subgrid Modeling Capability (@jlwoodr, #348)
Subgrid modeling with ADCIRC allows for the incorporation of high-resolution bathymetric and topographic information without significant increases in computational cost. With subgrid modeling, hydraulic connectivity through subgrid scale features such as small tidal channels can be achieved on coarsened numerical meshes. The subgrid additions in ADCIRC v56 include changes to the wetting and drying routine (allowing for partially wet elements) and higher level corrections to the momentum solver (advection and bottom friction calculations). Subgrid modeling with ADCIRC requires the use of a pre-computed lookup table. (There is an example script for computing this lookup table here. This set of scripts will create subgrid input files for subgrid enabled ADCIRC) and additions to the namelist in the fort.15 file (wiki link). For more information on sub-grid modeling with ADCIRC, please refer to the following publications: [1] [2]. Note that the original implementation of this work used an edge based scheme, however, it has since been upgraded for efficiency to a vertex based scheme.
1D channels (Vertical Element Wall and 1D Condensation) (@shinbunya, #321)
Two new techniques are introduced to efficiently represent channels with various scales. The first, Vertical Element Wall (VEW), enables a discontinuous representation of topobathymetric elevation. The VEW is useful when the topo-bathymetric elevation varies abruptly with a scale smaller than grid spacing. It is typically used to represent steep slopes or vertical walls along sides of channels. The VEW is implemented as an extension of the interior barrier boundary (IBTYPE=24). The VEW's IBTYPE is 64. Unlike the interior barrier boundary where the weir formula is used to couple solutions on the sides of barriers, the VEW gives fully coupled solutions, solving the shallow water equations when a vertical wall is completely submerged. This leads to more seamless bi-directional exchange of water mass and momentum between channels and floodplains. The second technique consolidates nodal equations at paired nodes across a channel. Doing this eliminates cross-channel variability and consequently eliminates the across-channel Courant-Friedrichs-Lewy stability constraint on the model time step. The list of these pairs of nodes are specified as the nodal attribute "condensed_nodes" in fort.13 file. Together the two techniques allow channels of various sizes as well as other instances of steep topography to be embedded seamlessly, efficiently and in a fully coupled manner, yielding quasi one dimensional solutions in the channels. The details of the two techniques are described in Bunya et al. (2023).
Enhanced 2D+ baroclinic coupling (@cblakely97, #351)
The densityControl namelist has been upgraded to now include the option to supply the baroclinic forcing (depth-averaged baroclinic pressure gradient and bouyancy frequencies) as nodal rather than gridded input. It is recommended to calculate the baroclinic forcing from an ocean global circulation model onto the ADCIRC grid at each output level in a finite-element sense (see the ADCIRC theory and formulation report). This helps eliminate the aliasing from coarse OGCM to fine ADCIRC grid at boundaries. To turn on the baroclinic forcing at each node, the densityForcingType variable in the densityControl namelist needs to be set to BCForcingOnADCIRCGrid.
Improved wetting/drying stability and slope limiting (@dylnwood, #371, #322, #320, #311)
Wetting/drying Improvements:
- Addition of a specialized slope limiter to prevent excessive drainage on flooded elements. Excessive drainage leads to persistent model instabilities, due to the fact that water levels at nodes where elev. is less than 0.8*h0 are "reset", causing nodes with too much drainage to enter an endless loop of draining and resetting, which degrades the reliability of the numerical solution for the entire neighboring geographic region. This situation typically occurs when time steps are large and where there are rapid changes in topographic gradients. We specifically apply a limit on the component of the water surface elevation gradient that lies in the same direction as the bathymetric or topographic surface elevation gradient. Controlled by setting the value of the limit in the "wetDryControl" namelist with the "slim" parameter.
- Keep the maximum value for the friction (TK) approximation and apply equal friction on the two nodes forming the wetting front for an element transitioning from dry to wet. Reduces the stochastic behavior of the model, e.g., to ensure that the solutions are invariant with respect to the ordering of the computations, so that they are more reproducible. Previously, the value of the friction factor at a location on the wetting/drying front was overwritten with the most recently computed value, resulting in slightly different solutions for simulations with wetting/drying, depending upon the ordering of the finite elements in the connectivity table used for model input. Setting friction equal at the wetting front for an element also improves stability of solutions along the wet/dry boundary.
- Addition of the logical parameters
directvelWDanduseHFto the&wetDryControlnamelist. The option "directvelWD" lets the user choose to compute the flow velocity in the wetting/drying algorithm directly from the gravity-friction force balance. Previous code uses the user chosen value of "velmin" to approximate the velocity, and then checks this velocity against the very same value of velmin to determine whether to transition a node from dry to wet. The "directvelWD" avoids this circular logic and obtains a more physically realistic approximation to the velocity, which we then check against velmin to find out if a dry node should be wet. The optionuseHFinvokes a larger friction approximation in the wetting/drying algorithm, wherein ifuseHF = true, then we assume the friction coefficientCf = 1in the computation of the velocity from the gravity-friction balance. On average, this option increases friction along the wetting front considerably and can significantly slow the propagation of the wetting front during a flooding event, should the user deem this desirable. The "useHF" option does not have any effect if the "directvelWD" option is not used.
Wind stress:
- Introduce a limiting factor on wind stress for elements with very shallow flow. The magnitude of the wind stress could become unrealistically large for locations with very shallow flow, due to the fact that computations for wind stress are formulated with flow depth in the denominator. Leads to catastrophic instabilities in the model solution, i.e., the model crashes due to elevation warnings. For locations where water surface elevation is between
h0and4*h0the wind stress is reduced by a hyperbolic tangent factor, starting at1for a water level of4*h0and ending at0forh0. Controlled by setting the logical parameterwindlimin thewetDryControlnamelist.
Subgrid barrier/time-varying bathymetry fix:
- Introduce the global variables
H1andH2to store the values of the flow depths at the previous and current timesteps, respectively. In the previous code, when changing bathymetry (DP) on the current timestep, either at a subgrid barrier to adjust the overtopping rate, or for using the time-varying bathymetry feature, the wrong value ofH1was obtained, since it was recomputed asH1 = DP + ETA1, rather than being stored from the previous timestep. In some cases, this situation leads toH1 = 0. (H1could not actually be zero at the previous timestep, since the water level is reset for elevs less than0.8*h0.) This case leads to instabilities in atmospheric forcing, since the formulation for wind stress containsH1in its denominator, ultimately causing the model to crash due to elevation warnings. This update avoids the above issue and slightly reduces the model's compute load, while slightly raising the memory load, since we no longer have to recompute the depths as frequently, e.g.,HX = DP + ETAX.
SWAN Version 41.45 (@caseydietrich, #380)
Version 41.45:
- The DCTA method for computing triads as described in Booij et al. (2009) is included as an option. See also Section 2.3.4 of the Technical documentation.
- The method of De Wit (2022) for estimating the biphase is included as an option. See also SWAN settings for further details.
- Current-induced whitecapping as proposed by Van der Westhuysen (2012) is included as an option. For more information, consult the page SWAN settings.
Version 41.41:
- Bragg scattering is included as an option. Consult for details Section 2.3.7 of the Technical documentation.
- 1D surfbeat of Reniers and Zijlema (2022) is included as an option.
- The Quasi-Coherent Model (QCM) is included as an option. The method is described in Akrish et al. (2020) and Smit et al. (2015). See also Section 2.7 and Section 3.9 of the Technical documentation.
- Radiated seaward FIG energy / reflection option included for FIG source.
- TMA spectrum shape included for boundary condition.
- Supports VTK format files for post-processing with Paraview. See for details the User Manual.
Minor New Features
- Time varying combined wave radiation/flux boundaries [
ibtype=32] (@zcobell) - ESMF NUOPC Coupler (@pvelissariou1, #304)
- A subgrid barrier nodal attribute which can restrict flow across coarse elements (@zcobell, @dylnwood #304, #371)
- NetCDF based SAL files for improved decomposition and loading times (@zcobell, #335)
- ARM processor compatibility within CMake build system (@zcobell, #330)
- Blending of NWS=12 wind fields (@zcobell, #336)
- More efficient I/O with NWS=14 GRIB/NetCDF meteorological forcing files (@cblakely97, @dwirasae, #357, #389)
- Ability to use the command line argument
--hashto write the git repository hash to screen (@zcobell, #373) - Wave radiation stress gradient limiter (@chrismassey, #383)
- Full mesh specification in netCDF output files (@zcobell, #385)
- UGRID 2.0 compliance and
xarraycompatibility (@zcobell, #385)
Bug Fixes
- Bug fixed when using writer cores (@cblakely97, #333)
- Fix for tropical cyclones in southern hemisphere (@pvelissariou1, #329)
- Unification of physical constants (@zcobell, #339, #384)
- Fix for wind direction bug in NWS=13 (@acrosby, #352)
- Removal of single precision mode (i.e.
-DREAL4) (@zcobell, #340) - Fix for bug in output of ice concentration (@GM-Ling, #317)
- Fix for building
punswanusing legacy build system (@zcobell, #337) - Fixing weir cross-barrier pipe boundaries in
adcprep(@zcobell, #382) - Removal of arithmetic if statements flagged by GCC compilers as deprecated (@zcobell, #386)
- Fix for array access in VEW1D/Condensed Nodes (@shinbunya, @zcobell, #391, #392)
- Fix for netCDF arrays with certain combinations of boundary conditions in the model (@zcobell, #392)
Lastly, ADCIRC is now released under the terms of the GNU Lesser General Public License, Version 3 (#362)
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 65af3de610ca85b96548a5a5a00fe2b0 |
| SHA1 | 387eea0a9aeb89f8c56488258fecf96de31be51a |
| SHA256 | 4e69aafaeffee11ab4778757578f5e10532c006d86af59c3acc4cc3eba626fcf |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell about 2 years ago
ADCIRC - v56.0.0-beta.1
v56.0.0-beta.1
This is the first beta release of ADCIRC version 56.
Major New Features
Version 56 brings several major new features, such as:
Subgrid Modeling Capability (@jlwoodr, #348)
Subgrid modeling with ADCIRC allows for the incorporation of high-resolution bathymetric and topographic information without significant increases in computational cost. With subgrid modeling, hydraulic connectivity through subgrid scale features such as small tidal channels can be achieved on coarsened numerical meshes. The subgrid additions in ADCIRC v56 include changes to the wetting and drying routine (allowing for partially wet elements) and higher level corrections to the momentum solver (advection and bottom friction calculations). Subgrid modeling with ADCIRC requires the use of a pre-computed lookup table. (There is an example script for computing this lookup table here. This set of scripts will create subgrid input files for subgrid enabled ADCIRC) and additions to the namelist in the fort.15 file (wiki link). For more information on sub-grid modeling with ADCIRC, please refer to the following publications: [1] [2]. Note that the original implementation of this work used an edge based scheme, however, it has since been upgraded for efficiency to a vertex based scheme.
1D channels (Vertical Element Wall and 1D Condensation) (@shinbunya, #321)
Two new techniques are introduced to efficiently represent channels with various scales. The first, Vertical Element Wall (VEW), enables a discontinuous representation of topobathymetric elevation. The VEW is useful when the topo-bathymetric elevation varies abruptly with a scale smaller than grid spacing. It is typically used to represent steep slopes or vertical walls along sides of channels. The VEW is implemented as an extension of the interior barrier boundary (IBTYPE=24). The VEW's IBTYPE is 64. Unlike the interior barrier boundary where the weir formula is used to couple solutions on the sides of barriers, the VEW gives fully coupled solutions, solving the shallow water equations when a vertical wall is completely submerged. This leads to more seamless bi-directional exchange of water mass and momentum between channels and floodplains. The second technique consolidates nodal equations at paired nodes across a channel. Doing this eliminates cross-channel variability and consequently eliminates the across-channel Courant-Friedrichs-Lewy stability constraint on the model time step. The list of these pairs of nodes are specified as the nodal attribute "condensed_nodes" in fort.13 file. Together the two techniques allow channels of various sizes as well as other instances of steep topography to be embedded seamlessly, efficiently and in a fully coupled manner, yielding quasi one dimensional solutions in the channels. The details of the two techniques are described in Bunya et al. (2023).
Enhanced 2D+ baroclinic coupling (@cblakely97, #351)
The densityControl namelist has been upgraded to now include the option to supply the baroclinic forcing (depth-averaged baroclinic pressure gradient and bouyancy frequencies) as nodal rather than gridded input. It is recommended to calculate the baroclinic forcing from an ocean global circulation model onto the ADCIRC grid at each output level in a finite-element sense (see the ADCIRC theory and formulation report). This helps eliminate the aliasing from coarse OGCM to fine ADCIRC grid at boundaries. To turn on the baroclinic forcing at each node, the densityForcingType variable in the densityControl namelist needs to be set to BCForcingOnADCIRCGrid.
Improved wetting/drying stability and slope limiting (@dylnwood, #371, #322, #320, #311)
Wetting/drying Improvements:
- Addition of a specialized slope limiter to prevent excessive drainage on flooded elements. Excessive drainage leads to persistent model instabilities, due to the fact that water levels at nodes where elev. is less than 0.8*h0 are "reset", causing nodes with too much drainage to enter an endless loop of draining and resetting, which degrades the reliability of the numerical solution for the entire neighboring geographic region. This situation typically occurs when time steps are large and where there are rapid changes in topographic gradients. We specifically apply a limit on the component of the water surface elevation gradient that lies in the same direction as the bathymetric or topographic surface elevation gradient. Controlled by setting the value of the limit in the "wetDryControl" namelist with the "slim" parameter.
- Keep the maximum value for the friction (TK) approximation and apply equal friction on the two nodes forming the wetting front for an element transitioning from dry to wet. Reduces the stochastic behavior of the model, e.g., to ensure that the solutions are invariant with respect to the ordering of the computations, so that they are more reproducible. Previously, the value of the friction factor at a location on the wetting/drying front was overwritten with the most recently computed value, resulting in slightly different solutions for simulations with wetting/drying, depending upon the ordering of the finite elements in the connectivity table used for model input. Setting friction equal at the wetting front for an element also improves stability of solutions along the wet/dry boundary.
- Addition of the logical parameters
directvelWDanduseHFto the&wetDryControlnamelist. The option "directvelWD" lets the user choose to compute the flow velocity in the wetting/drying algorithm directly from the gravity-friction force balance. Previous code uses the user chosen value of "velmin" to approximate the velocity, and then checks this velocity against the very same value of velmin to determine whether to transition a node from dry to wet. The "directvelWD" avoids this circular logic and obtains a more physically realistic approximation to the velocity, which we then check against velmin to find out if a dry node should be wet. The optionuseHFinvokes a larger friction approximation in the wetting/drying algorithm, wherein ifuseHF = true, then we assume the friction coefficientCf = 1in the computation of the velocity from the gravity-friction balance. On average, this option increases friction along the wetting front considerably and can significantly slow the propagation of the wetting front during a flooding event, should the user deem this desirable. The "useHF" option does not have any effect if the "directvelWD" option is not used.
Wind stress:
- Introduce a limiting factor on wind stress for elements with very shallow flow. The magnitude of the wind stress could become unrealistically large for locations with very shallow flow, due to the fact that computations for wind stress are formulated with flow depth in the denominator. Leads to catastrophic instabilities in the model solution, i.e., the model crashes due to elevation warnings. For locations where water surface elevation is between
h0and4*h0the wind stress is reduced by a hyperbolic tangent factor, starting at1for a water level of4*h0and ending at0forh0. Controlled by setting the logical parameterwindlimin thewetDryControlnamelist.
Subgrid barrier/time-varying bathymetry fix:
- Introduce the global variables
H1andH2to store the values of the flow depths at the previous and current timesteps, respectively. In the previous code, when changing bathymetry (DP) on the current timestep, either at a subgrid barrier to adjust the overtopping rate, or for using the time-varying bathymetry feature, the wrong value ofH1was obtained, since it was recomputed asH1 = DP + ETA1, rather than being stored from the previous timestep. In some cases, this situation leads toH1 = 0. (H1could not actually be zero at the previous timestep, since the water level is reset for elevs less than0.8*h0.) This case leads to instabilities in atmospheric forcing, since the formulation for wind stress containsH1in its denominator, ultimately causing the model to crash due to elevation warnings. This update avoids the above issue and slightly reduces the model's compute load, while slightly raising the memory load, since we no longer have to recompute the depths as frequently, e.g.,HX = DP + ETAX.
SWAN Version 41.45 (@caseydietrich, #380)
Version 41.45:
- The DCTA method for computing triads as described in Booij et al. (2009) is included as an option. See also Section 2.3.4 of the Technical documentation.
- The method of De Wit (2022) for estimating the biphase is included as an option. See also SWAN settings for further details.
- Current-induced whitecapping as proposed by Van der Westhuysen (2012) is included as an option. For more information, consult the page SWAN settings.
Version 41.41:
- Bragg scattering is included as an option. Consult for details Section 2.3.7 of the Technical documentation.
- 1D surfbeat of Reniers and Zijlema (2022) is included as an option.
- The Quasi-Coherent Model (QCM) is included as an option. The method is described in Akrish et al. (2020) and Smit et al. (2015). See also Section 2.7 and Section 3.9 of the Technical documentation.
- Radiated seaward FIG energy / reflection option included for FIG source.
- TMA spectrum shape included for boundary condition.
- Supports VTK format files for post-processing with Paraview. See for details the User Manual.
Minor New Features
- Time varying combined wave radiation/flux boundaries [
ibtype=32] (@zcobell) - ESMF NUOPC Coupler (@pvelissariou1, #304)
- A subgrid barrier nodal attribute which can restrict flow across coarse elements (@zcobell, @dylnwood #304, #371)
- NetCDF based SAL files for improved decomposition and loading times (@zcobell, #335)
- ARM processor compatibility within CMake build system (@zcobell, #330)
- Blending of NWS=12 wind fields (@zcobell, #336)
- More efficient I/O with NWS=14 GRIB/NetCDF meteorological forcing files (@cblakely97, @dwirasae, #357, #389)
- Ability to use the command line argument
--hashto write the git repository hash to screen (@zcobell, #373) - Wave radiation stress gradient limiter (@chrismassey, #383)
- Full mesh specification in netCDF output files (@zcobell, #385)
- UGRID 2.0 compliance and
xarraycompatibility (@zcobell, #385)
Bug Fixes
- Bug fixed when using writer cores (@cblakely97, #333)
- Fix for tropical cyclones in southern hemisphere (@pvelissariou1, #329)
- Unification of physical constants (@zcobell, #339, #384)
- Fix for wind direction bug in NWS=13 (@acrosby, #352)
- Removal of single precision mode (i.e.
-DREAL4) (@zcobell, #340) - Fix for bug in output of ice concentration (@GM-Ling, #317)
- Fix for building
punswanusing legacy build system (@zcobell, #337) - Fixing weir cross-barrier pipe boundaries in
adcprep(@zcobell, #382) - Removal of arithmetic if statements flagged by GCC compilers as deprecated (@zcobell, #386)
Lastly, ADCIRC is now released under the terms of the GNU Lesser General Public License, Version 3 (#362)
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 1414fa8b0f4c4bf52647d830cd1009c9 |
| SHA1 | b8ec3386ab8193b4be146c2f8c6c09846df6769a |
| SHA256 | 18544a5b9651bf4aeceb6756458806530e08bdcbdea2e1853c67ca52dcf4a5e9 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell about 2 years ago
ADCIRC - noaa.stofs.2d.glo.v2.1.0r1.v55.12
What's Changed
- Updates to VELCHECK option
- Updates to subgrid barrier DT
- Adding
git_hashto ADCIRC netCDF output files - Adding
--hashcommand line option foradcircandpadcircexecutables - Forcing re-run of the version module generation scripts on each build
Full Changelog: https://github.com/adcirc/adcirc/compare/noaa.stofs.2d.glo.v2.1.0r1.v55.11...noaa.stofs.2d.glo.v2.1.0r1.v55.12
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 2 years ago
ADCIRC - noaa.stofs.2d.glo.v2.1.0r1.v55.11
What's Changed
- Fixes for NOAA Version of Code -- Velcheck and store H1 and H2 to fix Subgrid Barriers by @dylnwood in https://github.com/adcirc/adcirc/pull/370
Full Changelog: https://github.com/adcirc/adcirc/compare/noaa.stofs.2d.glo.v2.1.0r1...noaa.stofs.2d.glo.v2.1.0r1.v55.11
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 2 years ago
ADCIRC - noaa.stofs.2d.glo.v2.1.0r1.v55.10
noaa.stofs.2d.glo.v2.1.0r1.v55.10
Setting specific tag for NOAA's 12/13/2023 version
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 16e14b0bba72321ec9f92e397e23d894 |
| SHA1 | 561d3f6eb2608e0c87d9ad0804c860bcae50b3d5 |
| SHA256 | 92821ccb60db3e05c5fa383283de7da1ff4610f59c52fb98106f9f52ac27c0b0 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 2 years ago
ADCIRC - NOAA STOFS v2.1.0r1
NOAA STOFS v2.1.0r1
Tagging NOAA STOFS version v2.1.0r1 in the NOAA release workflow.
The attached file (adcirc_noaa.stofs.2d.glo.v2.1.0r1.tar.gz) contains the release package of the code.
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | bb7463b59bd78273d5ff36bb38043a6a |
| SHA1 | 832ebd1713132e8f38a89cba2c09addc25b45cc8 |
| SHA256 | e2f466423ec9a093ef999411beeefa338fe1cf44adcf7330802081f8d4038196 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 2 years ago
ADCIRC - v55.02
ADCIRC Version v55.02
Version 55.02 is a bug fix release in the version 55 release train
- Address sign mismatch in NWS=13 (Thanks @acrosby, #352)
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 2fed1b2106b31a3646d0a488ee808e6f |
| SHA1 | e8e25b02aa9eb5e98f0fec8f6053ab03bf94f157 |
| SHA256 | 10029efccf25796f5190d9ace89af5b371bf874b746de6116543ee136e9334ee |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 2 years ago
ADCIRC - v55.01
ADCIRC Version 55.01
Version 55.01 is a bugfix release with minor enhancements. The changes from version 55.00 include:
- Fix to
RampTip2(#277) - Fix to sponge layer boundaries (#285, #282, #283)
- Removal of
GOTOstatements throughout much of the code to improve coding practices (#279) - Improving interpolation speed for
NWS=14(#267) - Fixes for later
gfortrancompilers (11+) which can be pickier about namelist declaration order than past versions
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 497b8e66d60c682fc8ebffc56b457f42 |
| SHA1 | f9adfaa8ceaf48dd8fd5289bc72a82adf47dc231 |
| SHA256 | fa42ff973e157634ed6bedae9465067928944901524cc255c561b24db2d41b27 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell almost 5 years ago
ADCIRC - v55.00
v55.00
Initial release of ADCIRC version 55
New/Updated Features
- NWS=13 – OWI netCDF formatted output supporting arbitrary numbers of grids and proper treatment of moving grids (@acrosby)
- NWS=14 – GRIB2 formatted data can be used directly (@WPringle)
a. GRIB and Jasper libraries can be built via CMake automatically (@zcobell) - SWAN 41.31 - Updated SWAN version included (@caseydietrich)
- Linear interpolation between directions for the
surface_directional_effective_roughness_lengthattribute (@tgasher) - Global modeling enabled via new spherical transformations and correct accounting for curvature terms. This is especially important for high latitudes (@WPringle)
- Note: Recommend using the updated curvature treatments in domains as small as the typical WNAT domain via
ICS=20,21,or 22(Equal-area, CPP, Mercator) rather thanICS=2(CPP). click for more details - This can also perform rotations of the mesh reference frame so that an empty element can be placed at each pole when conducting global modeling to avoid a singularity. Examples of this are in the test suite
- Note: Recommend using the updated curvature treatments in domains as small as the typical WNAT domain via
- 2D-Baroclinic modeling enabled (@WPringle)
- Sponge layer boundary type enabled (IBTYPE=94) (@dwirasae)
- Resolving the whole gravity wave/barotropic pressure gradient term on the LHS when using consistent mass matrix. Enabled using
IMDIG6=3(@WPringle)- This also fixes the issues around minimum element size for negative depth (@WPringle)
- ADCIRC will now produce exit codes. When the code exits with an error, the error code can be checked. This may be useful for scripting built around ADCIRC
./adcirc ; echo $?(@zcobell) - Ice surface drag is included from GRIB2 files or netCDF (@WPringle, @GM-Ling)
- Corrected treatment of dry cells for station files and global max velocity files (@zcobell)
elemental_slope_limiteroutput file (ESLNodes.63) is now a diagnostic for the number of times it was enabled. Previously it was a binary flag, however, now that it can be enabled once per time step, this output can be used for diagnosis of potential problem areas (@zcobell)- Bug fixed where restarting output files would offset the output interval slightly (@zcobell)
- Improvements to handling of fractional time steps with vortex wind models (@WPringle)
Details for the major numerical improvements to the ADCIRC code made by @WPringle can be found in his publication in Geoscientific Model Development.
For more information see the ADCIRC wiki.
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 83aa687b3562fea420372b75b1d432b3 |
| SHA1 | c9a58e7e4e2a9a6b04a9aa5640f2061469003cae |
| SHA256 | 0de3bbdeb69b8809d668d511f10e8f4784f253d278e1985c3bbd3907725142d7 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 5 years ago
ADCIRC - v54.02
v54.02
ADCIRC Version 54.02
Please use adcirc_v54.02.tar.gz
Version 54.02 is a bugfix release that contains one fix:
- Fix for #246 (velocity station nan values)
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 0cf679ddaf024f8a5f43ebf71f47301d |
| SHA1 | 8d1bc1e4e22d5a19a8024d95dc2dec475a6f8dbd |
| SHA256 | cb1aca0cc7a0b1b0c4cc91ad71a2ac2cbefc0a16d5ff25d6d2833e75b0fc5262 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 5 years ago
ADCIRC - v55.00-beta.1
v55.00-beta.1
Beta release of ADCIRC version 55 for use by the ADCIRC developer community. This release is NOT for production.
New/Updated Features
- NWS=13 – OWI netCDF formatted output supporting arbitrary numbers of grids and proper treatment of moving grids (@acrosby)
- NWS=14 – GRIB2 formatted data can be used directly (@WPringle)
a. GRIB libraries can be built via CMake automatically (@zcobell) - SWAN 41.31 - Updated SWAN version included (@caseydietrich)
- Linear interpolation between directions for the
surface_directional_effective_roughness_lengthattribute (@tgasher) - Global modeling enabled via new spherical transformations and correct accounting for curvature terms. This is especially important for high latitudes (@WPringle)
- Note: Recommend using the updated curvature treatments in domains as small as the typical WNAT domain via
ICS=20,21,or 22(Equal-area, CPP, Mercator) rather thanICS=2(CPP). click for more details - This can also perform rotations of the mesh reference frame so that an empty element can be placed at each pole when conducting global modeling to avoid a singularity. Examples of this are in the test suite
- Note: Recommend using the updated curvature treatments in domains as small as the typical WNAT domain via
- 2D-Baroclinic modeling enabled (@WPringle)
- Sponge layer boundary type enabled (IBTYPE=94) (@dwirasae)
- Resolving the whole gravity wave/barotropic pressure gradient term on the LHS when using consistent mass matrix. Enabled using
IMDIG6=3(@WPringle)- This also fixes the issues around minimum element size for negative depth (@WPringle)
- ADCIRC will now produce exit codes. When the code exits with an error, the error code can be checked. This may be useful for scripting built around ADCIRC
./adcirc ; echo $?(@zcobell) - Ice surface drag is included from GRIB2 files or netCDF (@WPringle, @GM-Ling)
- Corrected treatment of dry cells for station files and global max velocity files (@zcobell)
elemental_slope_limiteroutput file (ESLNodes.63) is now a diagnostic for the number of times it was enabled. Previously it was a binary flag, however, now that it can be enabled once per time step, this output can be used for diagnosis of potential problem areas (@zcobell)
For more information see the ADCIRC wiki.
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | c7fbefb61095a7e29b0fbaf865511af3 |
| SHA1 | ec5fc8e6a580a932dde689750470092bea38afc1 |
| SHA256 | 6b6d23b8cd1d0a966d8a0d2e338c309ea284a71565f6b4a49f8d7a1064a4da36 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 5 years ago
ADCIRC - v54.01
v54.01
ADCIRC Version 54.01
Please use adcirc_v54.01.tar.gz
Version 54.01 is a bugfix release that contains two fixes:
- Fix for default SWAN output files produced (#230)
- Fix for NWS=10 in parallel (#232)
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | 0c7def8c97641289da5894c29584296b |
| SHA1 | a99f91146deeb7fed8a20ccc2a2b709fabc44fe8 |
| SHA256 | ff31a458c529f7ad970cf4ae099cbf0da9e949ad35af01be1e23e19dbb0ca6ca |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell about 6 years ago
ADCIRC - v54.00
v54.00
ADCIRC Version 54.00
Please use adcirc_v54.00.tar.gz
Major Feature Additions
- Oceanweather formatted wind fields (NWS=12) can be deployed in more than two domains. Positive
NSETSin thefort.22allows for 1, 2, or 3 sets of Oceanweather wind fields namedfort.221, fort.222, fort.223, fort.224, fort.217, fort.218. A negativeNSETSallows the user to specify any number of domains where the wind fields will be read from thefort.22file following the wind multiplier using one wind and pressure field set per line. Wind fields are prioritized in ascending order. (#192) - A new nodal attribute
overland_reduction_factorhas been added. This controls the way that the code reduces the effect ofsurface_directional_effective_roughness_lengthas water depth increases. This factor is multiplied times the depth. By default, it is set to1/30, which has been used in previous versions of the code. The motivation for this is sharp discontinuities in water depth can locally accelerate wind forcing which may be unrealistic. Note that z0 land is always capped at the z0 marine value, so the selection of this factor cannot accelerate the wind speed. (#190) - Wind drag routines have been optimized. Previously, the decision for which wind drag routine to select occurred for each node at each time step via a string comparison, which is very slow. The new routine maps a function pointer so that a memory address containing the appropriate function can be selected at model initialization which can be called later with no overhead. Additionally, the wind drag specifications passed via
DragLawStringare no longer case sensitive. This change has shown a considerable speedup (between 5% and 10%) depending on processor branch prediction. (#192)
Changes in functionality
- Renamed the
&offsetControlnamelist to&dynamicWaterlevelCorrectionso the name is more representative of the function. See comment for commit 7a1cfee00e10b118052bfd25a58306c9ad6d95b6 for full details.
Bug Fixes
- The bug in the application of z0 has been fixed. A technical note about the impact of this bug is attached. (#190)
- The removal of the arbitrary z0 cutoff depth, i.e. the depth at which z0 is no longer applied (previously 20m), has been removed. This behavior can be replicated using
overland_reduction_factorand setting the value to zero, however, ADCIRC will no longer arbitrarily set this outside of the user's control. (#190) - Bugs in writing of output data have been addressed
adcprepandadcircrevised to account for differing orders of attributes in header and body for nodal attributes files (fort.13) (#129)- First time snap of
fort.19forcing no longer erroneously set to zero (#176) - Option for an internal
norm2routine has been added to support compilers without Fortran 2008 support (-DNOF2008). This can be added tocmplrflags.mkor by selecting the available option within the CMake (GUI or command-line interface calledADCIRC_NOF2008). Note that it is expected that there can be slight differences in the solution using the internal function as the compiler intrinsic implementation ofnorm2can vary. - Fixed compiler error when specifying -DPOWELL flag
- Fixed bug when using
&wetDryControlnamelist (#204) - Fixed bug in station outputs using ASCII format (#178)
Minor Enhancements
- CMake build system will now build a shared object library version of
libadcircand install Fortran*.modfiles - CMake build system now compatible with Mac OSX
- ADCIRC reports percent complete during simulation
- Code Coverage reports now uploaded to CodeCov.io as part of testing
- Code has started to be documented internally using Doxygen formatting
Known Issues
- The three-dimensional code exhibits unknown behavior
- The SWAN model can fail but ADCIRC will continue running without warning
- Time-varying bathymetry output files may fail to be created during hotstart
Checksums
| Algorithm | Checksum |
|---|---|
| MD5 | fbfd0673e7fcf61fcd58fbec9a8e86f5 |
| SHA1 | 3aab10b9bcf536f8f6f53e3dc30e7bd1b1069197 |
| SHA256 | 6c2ac516b7ebb0508e2f3fdc684170f78b6f0e949f6ebcf98dc9208e304f3d18 |
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell about 6 years ago
ADCIRC - v54.00-rc2
v54.00-rc2
ADCIRC Version 54, Release Candidate 2
This version of the code is intended for further testing by the ADCIRC development community in preparation for the release of ADCIRC Version 54. This is not a release version of the code.
Please use adcirc_v54.00-rc2.tar.gz for testing.
Major Feature Additions
- Oceanweather formatted wind fields (NWS=12) can be deployed in more than two domains. Positive
NSETSin thefort.22allows for 1, 2, or 3 sets of Oceanweather wind fields namedfort.221, fort.222, fort.223, fort.224, fort.217, fort.218. A negativeNSETSallows the user to specify any number of domains where the wind fields will be read from thefort.22file following the wind multiplier using one wind and pressure field set per line. Wind fields are prioritized in ascending order. (#192) - A new nodal attribute
overland_reduction_factorhas been added. This controls the way that the code reduces the effect ofsurface_directional_effective_roughness_lengthas water depth increases. This factor is multiplied times the depth. By default, it is set to1/30, which has been used in previous versions of the code. The motivation for this is sharp discontinuities in water depth can locally accelerate wind forcing which may be unrealistic. Note that z0 land is always capped at the z0 marine value, so the selection of this factor cannot accelerate the wind speed. (#190) - Wind drag routines have been optimized. Previously, the decision for which wind drag routine to select occurred for each node at each time step via a string comparison, which is very slow. The new routine maps a function pointer so that a memory address containing the appropriate function can be selected at model initialization which can be called later with no overhead. Additionally, the wind drag specifications passed via
DragLawStringare no longer case sensitive. This change has shown a considerable speedup (between 5% and 10%) depending on processor branch prediction. (#192)
Changes in functionality
- Renamed the
&offsetControlnamelist to&dynamicWaterlevelCorrectionso the name is more representative of the function. See comment for commit 7a1cfee00e10b118052bfd25a58306c9ad6d95b6 for full details.
Bug Fixes
- The bug in the application of z0 has been fixed. A technical note about the impact of this bug is attached. (#190)
- The removal of the arbitrary z0 cutoff depth, i.e. the depth at which z0 is no longer applied (previously 20m), has been removed. This behavior can be replicated using
overland_reduction_factorand setting the value to zero, however, ADCIRC will no longer arbitrarily set this outside of the user's control. (#190) - Bugs in writing of output data have been addressed
adcprepandadcircrevised to account for differing orders of attributes in header and body for nodal attributes files (fort.13) (#129)- First time snap of
fort.19forcing no longer erroneously set to zero (#176) - Option for an internal
norm2routine has been added to support compilers without Fortran 2008 support (-DNOF2008). This can be added tocmplrflags.mkor by selecting the available option within the CMake (GUI or command-line interface calledADCIRC_NOF2008). Note that it is expected that there can be slight differences in the solution using the internal function as the compiler intrinsic implementation ofnorm2can vary. - Fixed compiler error when specifying -DPOWELL flag
- Fixed bug when using
&wetDryControlnamelist (#204) - Fixed bug in station outputs using ASCII format (#178)
Minor Enhancements
- CMake build system will now build a shared object library version of
libadcircand install Fortran*.modfiles - CMake build system now compatible with Mac OSX
- ADCIRC reports percent complete during simulation
- Code Coverage reports now uploaded to CodeCov.io as part of testing
- Code has started to be documented internally using Doxygen formatting
Known Issues
- The three-dimensional code exhibits unknown behavior
- The SWAN model can fail but ADCIRC will continue running without warning
- Time-varying bathymetry output files may fail to be created during hotstart
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 6 years ago
ADCIRC - v54.00-rc1
v54.00-rc1
ADCIRC Version 54, Release Candidate 1
This version of the code is intended for further testing by the ADCIRC development community in preparation for the release of ADCIRC Version 54. This is not a release version of the code.
Please use adcirc_v54.00-rc1.tar.gz for testing.
Major Feature Additions
- Oceanweather formatted wind fields (NWS=12) can be deployed in more than two domains. Positive
NSETSin thefort.22allows for 1, 2, or 3 sets of Oceanweather wind fields namedfort.221, fort.222, fort.223, fort.224, fort.217, fort.218. A negativeNSETSallows the user to specify any number of domains where the wind fields will be read from thefort.22file following the wind multiplier using one wind and pressure field set per line. Wind fields are prioritized in ascending order. - A new nodal attribute
overland_reduction_factorhas been added. This controls the way that the code reduces the effect ofsurface_directional_effective_roughness_lengthas water depth increases. This factor is multiplied times the depth. By default, it is set to1/30, which has been used in previous versions of the code. The motivation for this is sharp discontinuities in water depth can locally accelerate wind forcing which may be unrealistic. Note that z0 land is always capped at the z0 marine value, so the selection of this factor cannot accelerate the wind speed. - Wind drag routines have been optimized. Previously, the decision for which wind drag routine to select occurred for each node at each time step via a string comparison, which is very slow. The new routine maps a function pointer so that a memory address containing the appropriate function can be selected at model initialization which can be called later with no overhead. Additionally, the wind drag specifications passed via
DragLawStringare no longer case sensitive. This change has shown a considerable speedup (between 5% and 10%) depending on processor branch prediction.
Bug Fixes
- The bug in the application of z0 has been fixed. A technical note about the impact of this bug is attached.
- The removal of the arbitrary z0 cutoff depth, i.e. the depth at which z0 is no longer applied (previously 20m), has been removed. This behavior can be replicated using
overland_reduction_factorand setting the value to zero, however, ADCIRC will no longer arbitrarily set this outside of the users control. - Bugs in writing of output data have been addressed
adcprepandadcircrevised to account for differing orders of attributes in header and body for nodal attributes files (fort.13)- First time snap of
fort.19forcing no longer erroneously set to zero - Option for an internal
norm2routine have been added to support compilers without Fortran 2008 support (-DNOF2008). This can be added tocmplrflags.mkor by selecting the available option within the CMake (GUI or command-line interface calledADCIRC_NOF2008). Note that it is expected that there can be slight differences in the solution using the internal function as the compiler intrinsic implementation ofnorm2can vary.
Minor Enhancements
- CMake build system will now build a shared object library version of
libadcircand install Fortran*.modfiles - CMake build system now compatible with Mac OSX
- ADCIRC reports percent complete during simulation
- Code Coverage reports now uploaded to CodeCov.io as part of testing
- Code has started to be documented internally using Doxygen formatting
Known Issues
- The three-dimensional code exhibits unknown behavior
- The SWAN model can fail but ADCIRC will continue running without warning
- Time-varying bathymetry output files may fail to be created during hotstart
Climate Change - Natural Hazard and Storms
- Fortran
Published by zcobell over 6 years ago