ADCIRC v55 Migration Guide - StormSurgeLive/asgs GitHub Wiki

I (@jasonfleming) have been working with the latest ADCIRC release version v55.01 and have observed some differences in numerical behavior compared with the results produced on the same mesh and parameter set with the final release version of v53.

My initial questions are:

  1. Has anyone else experienced this when migrating to v55?
  2. Is this expected numerical solution behavior due to algorithmic changes?
  3. Are there best practices for migrating to v55 that we can implement?

I sought advice on best practices, any insights are appreciated.

Some feedback was provided as follows:

  • I would guess that the inverted barometer needs to be on... otherwise you will perturb the solution when a low pressure system crosses the boundary (with conflicting interior domain and boundary solutions which could otherwise cause numerical instability
  • We need to turn the advection state off on the Atlantic open ocean boundary in order to have robust solutions
  • Typically we apply Smagorinsky closure
  • With v55 certainly we added features such as internal tides, spherical coordinates, baroclinic pressure gradient hooks, etc., but those are all controlled with flags or parameters
  • I'm not sure if there is a flag to eliminate the "missing terms " in the spherical coordinates
  • The only algorithmic change I can think of was that upon some discussions, it was determined the elemental slope limiter should be changed so it is for a single time step only rather than once it got turned on at a node it will stay on for the remainder of the simulation
  • IC = 20 to 24 includes the 'missing' terms in the spherical coordinates in both the continuity and momentum equations. The differences in these IC options are the projection used
    • Currently, IC = 2 includes the missing terms in the momentum equations (and in the momentum part Jx, Jy terms) but not in the continuity equation (those missing terms are small at the mid latitude). At one point during the development, these terms were multiplied by zero when IC was set to 2.
  • The option IM = xxxxx3 does not split $H$ into $\eta + b$ in the GWCE solver.
  • Lately, for semi implicit runs, we like to run with the weights A00, B00, C00 = (0.4, 0.4, 0.2) or (0.5, 0.5, 0 ), i.e with the weights biased towards the current time step. This permits taking larger time step and, from an analysis of the dispersion property of the 1D scheme, they have nicer dispersion properties.
  • There was an indication that the only known difference that is not backward compatible is the implementation of Kolar's lateral viscosity. I believe there was a bug fix.
  • Pretty much everyone in the lab uses either the global model or turns off advection on the open ocean boundary
  • Last but not least we run the corrected spherical equations as our base, there are slight differences but they are the correct equations