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: 1. Internally Computed Tide Potential Forcing (@dwirasae, Al Cerrone) 2. Addition of netCDF inset for NWS=14 (@poseidonND) 3. CLE15 vortex model (@cblakely97, @WPringle) 4. Option to turn off dPhi/dt term 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|

- 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|

- 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|

- 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 labels variable 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|

- 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|

- Fortran
Published by zcobell about 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 directvelWD and useHF to the &wetDryControl namelist. 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 option useHF invokes a larger friction approximation in the wetting/drying algorithm, wherein if useHF = true, then we assume the friction coefficient Cf = 1 in 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 h0 and 4*h0 the wind stress is reduced by a hyperbolic tangent factor, starting at 1 for a water level of 4*h0 and ending at 0 for h0. Controlled by setting the logical parameter windlim in the wetDryControl namelist.

Subgrid barrier/time-varying bathymetry fix:

  • Introduce the global variables H1 and H2 to 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 of H1 was obtained, since it was recomputed as H1 = DP + ETA1, rather than being stored from the previous timestep. In some cases, this situation leads to H1 = 0. (H1 could not actually be zero at the previous timestep, since the water level is reset for elevs less than 0.8*h0.) This case leads to instabilities in atmospheric forcing, since the formulation for wind stress contains H1 in 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:

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

  1. Time varying combined wave radiation/flux boundaries ibtype=32
  2. ESMF NUOPC Coupler (@pvelissariou1, #304)
  3. A subgrid barrier nodal attribute which can restrict flow across coarse elements (@zcobell, @dylnwood #304, #371)
  4. NetCDF based SAL files for improved decomposition and loading times (@zcobell, #335)
  5. ARM processor compatibility within CMake build system (@zcobell, #330)
  6. Blending of NWS=12 wind fields (@zcobell, #336)
  7. More efficient I/O with NWS=14 GRIB/NetCDF meteorological forcing files (@cblakely97, @dwirasae, #357, #389)
  8. Ability to use the command line argument --hash to write the git repository hash to screen (@zcobell, #373)
  9. Wave radiation stress gradient limiter (@chrismassey, #383)
  10. Full mesh specification in netCDF output files (@zcobell, #385)
  11. UGRID 2.0 compliance and xarray compatibility. This also allows users to directly load results files directly into programs like QGIS (@zcobell, #385)

Bug Fixes

  1. Bug fixed when using writer cores (@cblakely97, #333)
  2. Fix for tropical cyclones in southern hemisphere (@pvelissariou1, #329)
  3. Unification of physical constants (@zcobell, #339, #384)
  4. Fix for wind direction bug in NWS=13 (@acrosby, #352)
  5. Removal of single precision mode (i.e. -DREAL4) (@zcobell, #340)
  6. Fix for bug in output of ice concentration (@GM-Ling, #317)
  7. Fix for building punswan using legacy build system (@zcobell, #337)
  8. Fixing weir cross-barrier pipe boundaries in adcprep (@zcobell, #382)
  9. Removal of arithmetic if statements flagged by GCC compilers as deprecated (@zcobell, #386)
  10. Fix for array access in VEW1D/Condensed Nodes (@shinbunya, @zcobell, #391, #392)
  11. 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|

- 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 directvelWD and useHF to the &wetDryControl namelist. 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 option useHF invokes a larger friction approximation in the wetting/drying algorithm, wherein if useHF = true, then we assume the friction coefficient Cf = 1 in 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 h0 and 4*h0 the wind stress is reduced by a hyperbolic tangent factor, starting at 1 for a water level of 4*h0 and ending at 0 for h0. Controlled by setting the logical parameter windlim in the wetDryControl namelist.

Subgrid barrier/time-varying bathymetry fix:

  • Introduce the global variables H1 and H2 to 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 of H1 was obtained, since it was recomputed as H1 = DP + ETA1, rather than being stored from the previous timestep. In some cases, this situation leads to H1 = 0. (H1 could not actually be zero at the previous timestep, since the water level is reset for elevs less than 0.8*h0.) This case leads to instabilities in atmospheric forcing, since the formulation for wind stress contains H1 in 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:

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

  1. Time varying combined wave radiation/flux boundaries ibtype=32
  2. ESMF NUOPC Coupler (@pvelissariou1, #304)
  3. A subgrid barrier nodal attribute which can restrict flow across coarse elements (@zcobell, @dylnwood #304, #371)
  4. NetCDF based SAL files for improved decomposition and loading times (@zcobell, #335)
  5. ARM processor compatibility within CMake build system (@zcobell, #330)
  6. Blending of NWS=12 wind fields (@zcobell, #336)
  7. More efficient I/O with NWS=14 GRIB/NetCDF meteorological forcing files (@cblakely97, @dwirasae, #357, #389)
  8. Ability to use the command line argument --hash to write the git repository hash to screen (@zcobell, #373)
  9. Wave radiation stress gradient limiter (@chrismassey, #383)
  10. Full mesh specification in netCDF output files (@zcobell, #385)
  11. UGRID 2.0 compliance and xarray compatibility (@zcobell, #385)

Bug Fixes

  1. Bug fixed when using writer cores (@cblakely97, #333)
  2. Fix for tropical cyclones in southern hemisphere (@pvelissariou1, #329)
  3. Unification of physical constants (@zcobell, #339, #384)
  4. Fix for wind direction bug in NWS=13 (@acrosby, #352)
  5. Removal of single precision mode (i.e. -DREAL4) (@zcobell, #340)
  6. Fix for bug in output of ice concentration (@GM-Ling, #317)
  7. Fix for building punswan using legacy build system (@zcobell, #337)
  8. Fixing weir cross-barrier pipe boundaries in adcprep (@zcobell, #382)
  9. Removal of arithmetic if statements flagged by GCC compilers as deprecated (@zcobell, #386)
  10. Fix for array access in VEW1D/Condensed Nodes (@shinbunya, @zcobell, #391, #392)
  11. 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|

- 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 directvelWD and useHF to the &wetDryControl namelist. 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 option useHF invokes a larger friction approximation in the wetting/drying algorithm, wherein if useHF = true, then we assume the friction coefficient Cf = 1 in 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 h0 and 4*h0 the wind stress is reduced by a hyperbolic tangent factor, starting at 1 for a water level of 4*h0 and ending at 0 for h0. Controlled by setting the logical parameter windlim in the wetDryControl namelist.

Subgrid barrier/time-varying bathymetry fix:

  • Introduce the global variables H1 and H2 to 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 of H1 was obtained, since it was recomputed as H1 = DP + ETA1, rather than being stored from the previous timestep. In some cases, this situation leads to H1 = 0. (H1 could not actually be zero at the previous timestep, since the water level is reset for elevs less than 0.8*h0.) This case leads to instabilities in atmospheric forcing, since the formulation for wind stress contains H1 in 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:

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

  1. Time varying combined wave radiation/flux boundaries ibtype=32
  2. ESMF NUOPC Coupler (@pvelissariou1, #304)
  3. A subgrid barrier nodal attribute which can restrict flow across coarse elements (@zcobell, @dylnwood #304, #371)
  4. NetCDF based SAL files for improved decomposition and loading times (@zcobell, #335)
  5. ARM processor compatibility within CMake build system (@zcobell, #330)
  6. Blending of NWS=12 wind fields (@zcobell, #336)
  7. More efficient I/O with NWS=14 GRIB/NetCDF meteorological forcing files (@cblakely97, @dwirasae, #357, #389)
  8. Ability to use the command line argument --hash to write the git repository hash to screen (@zcobell, #373)
  9. Wave radiation stress gradient limiter (@chrismassey, #383)
  10. Full mesh specification in netCDF output files (@zcobell, #385)
  11. UGRID 2.0 compliance and xarray compatibility (@zcobell, #385)

Bug Fixes

  1. Bug fixed when using writer cores (@cblakely97, #333)
  2. Fix for tropical cyclones in southern hemisphere (@pvelissariou1, #329)
  3. Unification of physical constants (@zcobell, #339, #384)
  4. Fix for wind direction bug in NWS=13 (@acrosby, #352)
  5. Removal of single precision mode (i.e. -DREAL4) (@zcobell, #340)
  6. Fix for bug in output of ice concentration (@GM-Ling, #317)
  7. Fix for building punswan using legacy build system (@zcobell, #337)
  8. Fixing weir cross-barrier pipe boundaries in adcprep (@zcobell, #382)
  9. 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|

- 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_hash to ADCIRC netCDF output files
  • Adding --hash command line option for adcirc and padcirc executables
  • 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

- 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

- 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|

- 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|

- 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

  1. Address sign mismatch in NWS=13 (Thanks @acrosby, #352)

Checksums

| Algorithm | Checksum | |--|--| | MD5 |2fed1b2106b31a3646d0a488ee808e6f| | SHA1 |e8e25b02aa9eb5e98f0fec8f6053ab03bf94f157| | SHA256 |10029efccf25796f5190d9ace89af5b371bf874b746de6116543ee136e9334ee|

- Fortran
Published by zcobell almost 3 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: 1. Fix to RampTip2 (#277) 2. Fix to sponge layer boundaries (#285, #282, #283) 3. Removal of GOTO statements throughout much of the code to improve coding practices (#279) 4. Improving interpolation speed for NWS=14 (#267) 5. Fixes for later gfortran compilers (11+) which can be pickier about namelist declaration order than past versions

Checksums

| Algorithm | Checksum | |--|--| | MD5 |497b8e66d60c682fc8ebffc56b457f42 | | SHA1 | f9adfaa8ceaf48dd8fd5289bc72a82adf47dc231| | SHA256 |fa42ff973e157634ed6bedae9465067928944901524cc255c561b24db2d41b27 |

- Fortran
Published by zcobell almost 5 years ago

adcirc - v55.00

v55.00

Initial release of ADCIRC version 55

New/Updated Features

  1. NWS=13 – OWI netCDF formatted output supporting arbitrary numbers of grids and proper treatment of moving grids (@acrosby)
  2. NWS=14 – GRIB2 formatted data can be used directly (@WPringle) a. GRIB and Jasper libraries can be built via CMake automatically (@zcobell)
  3. SWAN 41.31 - Updated SWAN version included (@caseydietrich)
  4. Linear interpolation between directions for the surface_directional_effective_roughness_length attribute (@tgasher)
  5. 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 than ICS=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
  6. 2D-Baroclinic modeling enabled (@WPringle)
  7. Sponge layer boundary type enabled (IBTYPE=94) (@dwirasae)
  8. 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)
  9. 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)
  10. Ice surface drag is included from GRIB2 files or netCDF (@WPringle, @GM-Ling)
  11. Corrected treatment of dry cells for station files and global max velocity files (@zcobell)
  12. elemental_slope_limiter output 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)
  13. Bug fixed where restarting output files would offset the output interval slightly (@zcobell)
  14. 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|

- 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: 1. Fix for #246 (velocity station nan values)

Checksums

| Algorithm | Checksum | |--|--| | MD5 |0cf679ddaf024f8a5f43ebf71f47301d | | SHA1 | 8d1bc1e4e22d5a19a8024d95dc2dec475a6f8dbd| | SHA256 | cb1aca0cc7a0b1b0c4cc91ad71a2ac2cbefc0a16d5ff25d6d2833e75b0fc5262|

- 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

  1. NWS=13 – OWI netCDF formatted output supporting arbitrary numbers of grids and proper treatment of moving grids (@acrosby)
  2. NWS=14 – GRIB2 formatted data can be used directly (@WPringle) a. GRIB libraries can be built via CMake automatically (@zcobell)
  3. SWAN 41.31 - Updated SWAN version included (@caseydietrich)
  4. Linear interpolation between directions for the surface_directional_effective_roughness_length attribute (@tgasher)
  5. 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 than ICS=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
  6. 2D-Baroclinic modeling enabled (@WPringle)
  7. Sponge layer boundary type enabled (IBTYPE=94) (@dwirasae)
  8. 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)
  9. 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)
  10. Ice surface drag is included from GRIB2 files or netCDF (@WPringle, @GM-Ling)
  11. Corrected treatment of dry cells for station files and global max velocity files (@zcobell)
  12. elemental_slope_limiter output 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|

- 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: 1. Fix for default SWAN output files produced (#230) 2. Fix for NWS=10 in parallel (#232)

Checksums

| Algorithm | Checksum | |--|--| | MD5 | 0c7def8c97641289da5894c29584296b| | SHA1 | a99f91146deeb7fed8a20ccc2a2b709fabc44fe8| | SHA256 | ff31a458c529f7ad970cf4ae099cbf0da9e949ad35af01be1e23e19dbb0ca6ca|

- 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 NSETS in the fort.22 allows for 1, 2, or 3 sets of Oceanweather wind fields named fort.221, fort.222, fort.223, fort.224, fort.217, fort.218. A negative NSETS allows the user to specify any number of domains where the wind fields will be read from the fort.22 file 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_factor has been added. This controls the way that the code reduces the effect of surface_directional_effective_roughness_length as water depth increases. This factor is multiplied times the depth. By default, it is set to 1/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 DragLawString are 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 &offsetControl namelist to &dynamicWaterlevelCorrection so 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_factor and 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
  • adcprep and adcirc revised to account for differing orders of attributes in header and body for nodal attributes files (fort.13) (#129)
  • First time snap of fort.19 forcing no longer erroneously set to zero (#176)
  • Option for an internal norm2 routine has been added to support compilers without Fortran 2008 support (-DNOF2008). This can be added to cmplrflags.mk or by selecting the available option within the CMake (GUI or command-line interface called ADCIRC_NOF2008). Note that it is expected that there can be slight differences in the solution using the internal function as the compiler intrinsic implementation of norm2 can vary.
  • Fixed compiler error when specifying -DPOWELL flag
  • Fixed bug when using &wetDryControl namelist (#204)
  • Fixed bug in station outputs using ASCII format (#178)

Minor Enhancements

  • CMake build system will now build a shared object library version of libadcirc and install Fortran *.mod files
  • 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|

- Fortran
Published by zcobell about 6 years ago

adcirc - v53.05

Tagging a final version of ADCIRC version 53

- 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 NSETS in the fort.22 allows for 1, 2, or 3 sets of Oceanweather wind fields named fort.221, fort.222, fort.223, fort.224, fort.217, fort.218. A negative NSETS allows the user to specify any number of domains where the wind fields will be read from the fort.22 file 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_factor has been added. This controls the way that the code reduces the effect of surface_directional_effective_roughness_length as water depth increases. This factor is multiplied times the depth. By default, it is set to 1/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 DragLawString are 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 &offsetControl namelist to &dynamicWaterlevelCorrection so 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_factor and 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
  • adcprep and adcirc revised to account for differing orders of attributes in header and body for nodal attributes files (fort.13) (#129)
  • First time snap of fort.19 forcing no longer erroneously set to zero (#176)
  • Option for an internal norm2 routine has been added to support compilers without Fortran 2008 support (-DNOF2008). This can be added to cmplrflags.mk or by selecting the available option within the CMake (GUI or command-line interface called ADCIRC_NOF2008). Note that it is expected that there can be slight differences in the solution using the internal function as the compiler intrinsic implementation of norm2 can vary.
  • Fixed compiler error when specifying -DPOWELL flag
  • Fixed bug when using &wetDryControl namelist (#204)
  • Fixed bug in station outputs using ASCII format (#178)

Minor Enhancements

  • CMake build system will now build a shared object library version of libadcirc and install Fortran *.mod files
  • 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

- 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 NSETS in the fort.22 allows for 1, 2, or 3 sets of Oceanweather wind fields named fort.221, fort.222, fort.223, fort.224, fort.217, fort.218. A negative NSETS allows the user to specify any number of domains where the wind fields will be read from the fort.22 file 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_factor has been added. This controls the way that the code reduces the effect of surface_directional_effective_roughness_length as water depth increases. This factor is multiplied times the depth. By default, it is set to 1/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 DragLawString are 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_factor and 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
  • adcprep and adcirc revised to account for differing orders of attributes in header and body for nodal attributes files (fort.13)
  • First time snap of fort.19 forcing no longer erroneously set to zero
  • Option for an internal norm2 routine have been added to support compilers without Fortran 2008 support (-DNOF2008). This can be added to cmplrflags.mk or by selecting the available option within the CMake (GUI or command-line interface called ADCIRC_NOF2008). Note that it is expected that there can be slight differences in the solution using the internal function as the compiler intrinsic implementation of norm2 can vary.

Minor Enhancements

  • CMake build system will now build a shared object library version of libadcirc and install Fortran *.mod files
  • 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

- Fortran
Published by zcobell over 6 years ago

adcirc - v53.04

v53.04

- Fortran
Published by zcobell about 8 years ago

adcirc - v53.03

v53.03

- Fortran
Published by zcobell about 8 years ago

adcirc - v53.02

v53.02

- Fortran
Published by zcobell about 8 years ago

adcirc - v53.01

v53.01

- Fortran
Published by zcobell about 8 years ago

adcirc - v52.30.14

Bugfix release for ADCIRC version 52. Fixes a bug in the writing of sparse output files.

- Fortran
Published by zcobell over 8 years ago

adcirc - v52.30.13

- Fortran
Published by zcobell about 9 years ago

adcirc - v48.4643

ADCIRC Release version 48

- Fortran
Published by zcobell almost 10 years ago

adcirc - v49.82.19

ADCIRC Release version 49

- Fortran
Published by zcobell almost 10 years ago

adcirc - v50.99.15

ADCIRC Release version 50

- Fortran
Published by zcobell almost 10 years ago

adcirc - v51.52.38

ADCIRC Release version 51

- Fortran
Published by zcobell almost 10 years ago

adcirc - v52.30.07

ADCIRC Release Version 52

- Fortran
Published by zcobell almost 10 years ago