Difference between revisions of "TAU0"
Taylorgasher (talk  contribs) (formally correct, but will modify for practicality) 
Taylorgasher (talk  contribs) (temp) 

Line 1:  Line 1:  
'''<code>TAU0</code>''' is an input in the [[fort.15 file]] that influences the degree of numerical diffusion in ADCIRC's governing equations. Specifically, it influences the weighting factor that determines the relative contribution of the primitive and wave portions of the the Generalized WaveContinuity Equation (GWCE). The weighting factor, <math>\tau_0</math>, is affected by values in both the [[fort.15 file]] and the [[fort.13 file]], if the [[primitive weighting in continuity equation]] or [[min and max primitive weighting in continuity equation]] nodal attributes are specified. This page addresses both the <code>TAU0</code> value in the fort.15 file and the <math>\tau_0</math> parameter more generally.  '''<code>TAU0</code>''' is an input in the [[fort.15 file]] that influences the degree of numerical diffusion in ADCIRC's governing equations. Specifically, it influences the weighting factor that determines the relative contribution of the primitive and wave portions of the the Generalized WaveContinuity Equation (GWCE). The weighting factor, <math>\tau_0</math>, is affected by values in both the [[fort.15 file]] and the [[fort.13 file]], if the [[primitive weighting in continuity equation]] or [[min and max primitive weighting in continuity equation]] nodal attributes are specified. This page addresses both the <code>TAU0</code> value in the fort.15 file and the <math>\tau_0</math> parameter more generally.  
−  ==  +  == TAU0 Values == 
Because the <code>TAU0</code> value specified in the fort.15 file can be either a flag (indicating how ADCIRC should operate) or the actual <math>\tau_0</math> value used in solving the GWCE, it is important to distinguish between the two. All negative <code>TAU0</code> are flags, all positive <code>TAU0</code> are <math>\tau_0</math>. Furthermore, some values are overridden by the [[primitive weighting in continuity equation]] nodal attribute. The following table is a summary of possible <code>TAU0</code> values and their meaning. Note that for <code>TAU0 = x.1</code> (where <code>x</code> is an integer), behavior is the same as <code>x</code>, but the <math>\tau_0</math> values are written to the [[fort.90 file]]. More on this below in [[TAU0#OutputtingOutputting]].  Because the <code>TAU0</code> value specified in the fort.15 file can be either a flag (indicating how ADCIRC should operate) or the actual <math>\tau_0</math> value used in solving the GWCE, it is important to distinguish between the two. All negative <code>TAU0</code> are flags, all positive <code>TAU0</code> are <math>\tau_0</math>. Furthermore, some values are overridden by the [[primitive weighting in continuity equation]] nodal attribute. The following table is a summary of possible <code>TAU0</code> values and their meaning. Note that for <code>TAU0 = x.1</code> (where <code>x</code> is an integer), behavior is the same as <code>x</code>, but the <math>\tau_0</math> values are written to the [[fort.90 file]]. More on this below in [[TAU0#OutputtingOutputting]].  
Line 117:  Line 117:  
'''Positive values'''<br/>  '''Positive values'''<br/>  
−  +  A positive value is ignored if the [[primitive weighting in continuity equation]] nodal attribute is specified in the fort.15 file. For all positive values, the value specified in the fort.15 file is spatially and temporally constant and applied directly, i.e. <code>TAU0 = <math>\tau_0</math></code>. Practical guidance on setting a constant <code>TAU0</code> is provided below in [[#Selecting Tau0]], however  
*<code>TAU0 = 0</code>, the GWCE is a pure wave equation  *<code>TAU0 = 0</code>, the GWCE is a pure wave equation  
*<code>TAU0 = <math>\infty</math></code>, the GWCE behaves like a pure primitive continuity equation  *<code>TAU0 = <math>\infty</math></code>, the GWCE behaves like a pure primitive continuity equation  
Line 151:  Line 151:  
For <code>TAU0 = 3, 5, 6, or 7</code>, <math>\tau_0</math> is updated (via the <code>CalculateTimeVaryingTau0</code> subroutine) in space and in time. An initial "update" is done when the model starts. After this, updates are done only after a time step in which there is a change in wet/dry state somewhere in the model domain. For use cases that contain large number of nodes near the wet/dry boundary, this can be the equivalent of updating every time step. However, for use cases that have little or no wet/dry changes, '''there may be little or no updating'''. The rules listed above in [[TAU0#TAU0 ValuesTAU0 Values]] are applied during the update. Each node's <math>\tau_0</math> is then spatially averaged with all immediate neighbors. Timeaveraging (for <code>TAU0 = 6 or 7</code>) is applied last.  For <code>TAU0 = 3, 5, 6, or 7</code>, <math>\tau_0</math> is updated (via the <code>CalculateTimeVaryingTau0</code> subroutine) in space and in time. An initial "update" is done when the model starts. After this, updates are done only after a time step in which there is a change in wet/dry state somewhere in the model domain. For use cases that contain large number of nodes near the wet/dry boundary, this can be the equivalent of updating every time step. However, for use cases that have little or no wet/dry changes, '''there may be little or no updating'''. The rules listed above in [[TAU0#TAU0 ValuesTAU0 Values]] are applied during the update. Each node's <math>\tau_0</math> is then spatially averaged with all immediate neighbors. Timeaveraging (for <code>TAU0 = 6 or 7</code>) is applied last.  
−  == Selecting  +  == Selecting Tau0 == 
For positive values (<code>TAU0=<math>\tau_0</math></code>), a good rule of thumb for setting <code>TAU0</code> is to set it equal to the largest value of an equivalent linear friction factor: for linear friction <code>TAU0 = [[TAU]]</code>; for quadratic friction <code>TAU0 = max(speed*Cd/depth)</code>. Typical values for <code>TAU0</code> are in the range of 0.005 – 0.1.  For positive values (<code>TAU0=<math>\tau_0</math></code>), a good rule of thumb for setting <code>TAU0</code> is to set it equal to the largest value of an equivalent linear friction factor: for linear friction <code>TAU0 = [[TAU]]</code>; for quadratic friction <code>TAU0 = max(speed*Cd/depth)</code>. Typical values for <code>TAU0</code> are in the range of 0.005 – 0.1.  
Line 160:  Line 160:  
**<code>If depth > 10m; then TAU0Base = 0.005</code> (<code>TAU0</code> is constant in time)  **<code>If depth > 10m; then TAU0Base = 0.005</code> (<code>TAU0</code> is constant in time)  
−  == Outputting  +  == Outputting == 
For <code>TAU0</code> formulations that vary spatially or temporally, ADCIRC can output the internallycalculated nodal <math>\tau_0</math> values. They are written to the [[fort.90 file]], which has the same format and output frequency as the water surface elevation output file ([[fort.63]]). fort.90 output is activated by placing a 1 in the tenths place of <code>TAU0</code> in the fort.15 file. For example, if <code>TAU0 = 3.1</code>, the calculation of <math>\tau_0</math> is still carried out according to the description of <code>TAU0 = 3</code> above, and the fort.90 output file will also be produced.  For <code>TAU0</code> formulations that vary spatially or temporally, ADCIRC can output the internallycalculated nodal <math>\tau_0</math> values. They are written to the [[fort.90 file]], which has the same format and output frequency as the water surface elevation output file ([[fort.63]]). fort.90 output is activated by placing a 1 in the tenths place of <code>TAU0</code> in the fort.15 file. For example, if <code>TAU0 = 3.1</code>, the calculation of <math>\tau_0</math> is still carried out according to the description of <code>TAU0 = 3</code> above, and the fort.90 output file will also be produced. 
Revision as of 13:35, 19 February 2019
TAU0
is an input in the fort.15 file that influences the degree of numerical diffusion in ADCIRC's governing equations. Specifically, it influences the weighting factor that determines the relative contribution of the primitive and wave portions of the the Generalized WaveContinuity Equation (GWCE). The weighting factor, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
, is affected by values in both the fort.15 file and the fort.13 file, if the primitive weighting in continuity equation or min and max primitive weighting in continuity equation nodal attributes are specified. This page addresses both the TAU0
value in the fort.15 file and the Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
parameter more generally.
TAU0 Values
Because the TAU0
value specified in the fort.15 file can be either a flag (indicating how ADCIRC should operate) or the actual Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
value used in solving the GWCE, it is important to distinguish between the two. All negative TAU0
are flags, all positive TAU0
are Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
. Furthermore, some values are overridden by the primitive weighting in continuity equation nodal attribute. The following table is a summary of possible TAU0
values and their meaning. Note that for TAU0 = x.1
(where x
is an integer), behavior is the same as x
, but the Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
values are written to the fort.90 file. More on this below in Outputting.
fort.15 TAU0

>= 0  1  2  3  5  6  7 

Varies in space  no  yes  yes  yes  yes  yes  yes 
Varies in time  no  no  no  yes  yes  yes  yes 
Spaceaveraged  no  no  no  yes  yes  yes  yes 
Timeaveraged  no  no  no  no  no  yes  yes 
Expects nodal attribute  no  no  no  yes  yes  yes  yes 
Minimum  N/A  0.002  0.002  N/A  Tau0FullDomainMin

N/A  N/A 
Maximum  N/A  0.005  1  0.2  Tau0FullDomainMax

0.2  0.2 
Code Flags  
HighResTimeVaryingTau0

.FALSE.  .FALSE.  .FALSE.  .TRUE.  .FALSE.  .TRUE.  .TRUE. 
FullDomainTimeVaryingTau0

.FALSE.  .FALSE.  .FALSE.  .FALSE.  .TRUE.  .FALSE.  .FALSE. 
TimeAveragedTau0

.FALSE.  .FALSE.  .FALSE.  .FALSE.  .FALSE.  .TRUE.  .FALSE. 
BackLoadedTimeAveragedTau0

.FALSE.  .FALSE.  .FALSE.  .FALSE.  .FALSE.  .FALSE.  .TRUE. 
Positive values
A positive value is ignored if the primitive weighting in continuity equation nodal attribute is specified in the fort.15 file. For all positive values, the value specified in the fort.15 file is spatially and temporally constant and applied directly, i.e. TAU0 = Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
. Practical guidance on setting a constant TAU0
is provided below in #Selecting Tau0, however
TAU0 = 0
, the GWCE is a pure wave equationTAU0 = Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \infty}
, the GWCE behaves like a pure primitive continuity equation0 < TAU0 < Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \infty}
, the GWCE is a weighted sum of the primitive and wave portions of the equation
Negative Values
Spatially varying, temporally constant
TAU0 = 1
, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} is computed as follows:If depth >= 10; then Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} = 0.005
If depth < 10; then Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} = 0.020
 This value is ignored if primitive weighting in continuity equation is specified in the fort.15 file.
TAU0 = 2
, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} is is computed according to depth as follows:If depth >= 200; then Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} = 0.005
If 1 < depth < 200; then Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} = 1/depth
If depth < 1; then Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0 = 1}
 This value is ignored if primitive weighting in continuity equation is specified in the fort.15 file.
Spatially and temporally varying
In the unlikely event that one of the below options not paired with its corresponding nodal attribute (the code will exit if this is done for some TAU0
), then default values are set using the TAU0 = 1
logic.
TAU0 = 3
, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} is computed fromTAU0Base
(read in from the nodal attribute) as follows:If TAU0Base < 0.025; then Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} = TAU0Base
(constant in time)If TAU0Base >= 0.025; then Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} = TAU0Base+1.5*TK
whereTK=speed*Cd/depth
TAU0 = 5
, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} is computed similar toTAU0 = 3
as follows:Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} = Tau0Min+1.5*TK
 It is limited by
Tau0FullDomainMin <= Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} <= Tau0FullDomainMax
, which are specified on the line followingTAU0
in the fort.15 file (only whenTAU0 = 5
)  If the min and max primitive weighting in continuity equation nodal attribute is used, then the nodal minimum and maximum values replace the fulldomain values in the above calculation.
TAU0 = 6
, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} is defined using the rules forTAU0 = 3
, and then is set equal to the timeaverage of the current and previous (timeaveraged) values.TAU0 = 7
, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} is defined using the rules forTAU0 = 3
, and then is set equal to the weighted timeaverage of the current and previous (timeaveraged) values as follows:Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} = AlphaTau0*TAU0VAR + (1.0AlphaTau0)*LastTau0
, whereTAU0VAR
isTau0Base
after spatial averaging, andAlphaTau0 = 0.25
is hardcoded into the model. This means that Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0} is weighted 75% toward older values.
Spatial and Temporal Updating
For TAU0 = 3, 5, 6, or 7
, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
is updated (via the CalculateTimeVaryingTau0
subroutine) in space and in time. An initial "update" is done when the model starts. After this, updates are done only after a time step in which there is a change in wet/dry state somewhere in the model domain. For use cases that contain large number of nodes near the wet/dry boundary, this can be the equivalent of updating every time step. However, for use cases that have little or no wet/dry changes, there may be little or no updating. The rules listed above in TAU0 Values are applied during the update. Each node's Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
is then spatially averaged with all immediate neighbors. Timeaveraging (for TAU0 = 6 or 7
) is applied last.
Selecting Tau0
For positive values (TAU0=Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
), a good rule of thumb for setting TAU0
is to set it equal to the largest value of an equivalent linear friction factor: for linear friction TAU0 = TAU
; for quadratic friction TAU0 = max(speed*Cd/depth)
. Typical values for TAU0
are in the range of 0.005 – 0.1.
TAU0 = 3
, paired with the primitive weighting in continuity equation nodal attribute is generally the most popular formulation. In this case, TAU0Base
nodal attribute values can be generated with the ADCIRC utility program tau0_gen.f. The program bases generation on the following logic applied to each node individually:
If the avg. dist. to neighboring nodes < 1750 m; then TAU0Base = 0.03
 Otherwise
If depth < 10m; then TAU0Base = 0.02
(TAU0
is constant in time)If depth > 10m; then TAU0Base = 0.005
(TAU0
is constant in time)
Outputting
For TAU0
formulations that vary spatially or temporally, ADCIRC can output the internallycalculated nodal Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
values. They are written to the fort.90 file, which has the same format and output frequency as the water surface elevation output file (fort.63). fort.90 output is activated by placing a 1 in the tenths place of TAU0
in the fort.15 file. For example, if TAU0 = 3.1
, the calculation of Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \tau_0}
is still carried out according to the description of TAU0 = 3
above, and the fort.90 output file will also be produced.