After the velocities are computed, the code computes the temperature, 

 salinity and sediment concentration if so desired. These equations are solved 

 with the same two-time-level scheme and implicit vertical diffusion treatment. 



3.3 Flow Chart 



A flow chart of the solution algorithm is shown in Figure 3.1. The model 

 can be run exclusively in the external mode with fairly large time step and 

 various choices of bottom friction formulation. The internal mode may be 

 updated as often as desired so long as the CFL condition is not violated. 



3.4 General Numerical Consideration 



Time-Differencing 



Although the finite-difference equations derived above assumed a 

 two-time-level scheme in general, three-time-level (leapfrog) scheme involving 

 variables at n+1, n, and n-1 th levels have also been tested for some 

 idealized problems. The three-level scheme essentially introduces second 

 order time derivatives and hence increases the order of the original 

 differential equations. Two disjoint solutions will develop in time and this 

 is the so-called "time-splitting" problem (Roache, 1972). Ad-hoc fixes 

 developed to control this problem include time smoothing (Asselin, 1972; 

 Simons, 1974) and an occasional switch to the two-level scheme. However, 

 extreme care must be exercised to objectively monitor the time-splitting 

 problem and to ensure the phases of gravity waves are not affected. If the 

 time-splitting problem could be properly monitored and controlled, the 

 three-level scheme does exhibit somewhat less numerical damping due to the 

 time-centering of the advective terms. In the three-level scheme, however, 

 the lateral diffusion terms in the momentum equations have to be lagged in 

 time (n-1 th level) to ensure numerical stability (Roache, 1972). 



47 



