For general information, see the ADCIRC site, ADCIRC FAQ, or the ADCIRC Wikipedia page. For model documentation not yet available on the wiki, see the ADCIRC site. New content is being continuously added to the ADCIRCWiki, and material from the main ADCIRC site will be gradually transitioned over to the wiki.
Notes from code dive
I dug through the code, came up with some inner workings that aren't documented. The following info needs to be added:
- spatially-averaging is done to tau0 in: SUBROUTINE CalculateTimeVaryingTau0(TK, NNeigh, NeiTab, NP)
- I see Casey's fingerprints
- tau0=-3, -5, -6, -7: looks to average tau0 across all immediate (?) nodal neighbors
- Rick said tau0=-5 is ineffective
- tau0=-3: the actual tau0 is capped at 0.2
- tau0=-6 is a time-averaging:
C jgf47.33 Perform time averaging of tau0 if requested.
IF (TimeAveragedTau0) THEN DO I=1, NP TAU0VAR(I) = 0.5d0*TAU0VAR(I) + 0.5d0*LastTau0(I) LastTau0(I) = TAU0VAR(I) ENDDO ENDIF
- tau0=-7 is a different time-averaging:
C jgf48.42 Perform backloaded time averaging of tau0 if requested.
IF (BackLoadedTimeAveragedTau0) THEN DO I=1, NP TAU0VAR(I) = AlphaTau0*TAU0VAR(I) & + (1.d0-AlphaTau0)*LastTau0(I) LastTau0(I) = TAU0VAR(I) ENDDO ENDIF
- AlphaTau0 is hard-coded to 0.25, so 75% last tau0, 25% current one
Undocumented TAU0 and nodal attribute interactions
In digging through the code, I've found there are very few behavior checks on a user's selection of TAU0 (fort.15) and either of the two nodal attributes. The only thing that's blocked (as far as I can tell) is setting TAU0=-3 or -6, and not specifying PWICE. I'm mostly not getting into any of the specifics on this stuff, but just wanted to denote that it's here.