## 1. Introduction

In the past, numerical weather prediction models had to use the governing equations with the hydrostatic approximation in order to avoid acoustic waves in the vertical direction. When high-frequency acoustic waves exist, an exceedingly small time step is required to prevent numerical instability of the explicit time-stepping scheme (Mendez-Nunez and Carroll 1994; Hsu and Sun 2001). Fully compressible nonhydrostatic models, which include sound waves, have become more popular in recent atmospheric modeling due to the improvement of numerical techniques and the rapid increase of computing resources. The explicit time-splitting scheme (Gadd 1978) implemented in nonhydrostatic models (Klemp and Wilhelmson 1978) has significantly reduced computational time. The development of the semi-implicit scheme (Robert 1969) was a remarkable milestone in the development of numerical techniques. The use of the semi-implicit scheme in nonhydrostatic models has relaxed the extremely small time step constraint (Tapp and White 1976; Tanguay et al. 1990; Cullen 1990; Juang 1992; Golding 1992; Kapitza and Eppel 1992; Robert 1993; Pinty et al. 1995; Simmons and Temperton 1996; Skamarock et al. 1997).

In some fully compressible nonhydrostatic models, only acoustic waves are calculated implicitly (Tapp and White 1976; Juang 1992; Laprise 1992), and the time step is constrained by the propagation speeds of gravity waves. Here, we apply the implicit scheme to both acoustic and gravity waves, as in Tanguay et al. (1990), Cullen (1990), Golding (1992), and Pinty et al. (1995). It is noted that our model has differences from theirs because we keep the cross-derivative terms, due to the terrain-following coordinate, in the elliptic partial differential equation (EPDE) of the Exner function perturbation. Usually, a huge multiband sparse matrix (∼300 000 × 300 000) of the EPDEs is encountered for high-resolution nonhydrostatic models. Scientists have applied different methods to avoid calculating this huge multiband sparse matrix. With the use of the explicit time-splitting scheme, only vertical acoustic waves are calculated implicitly, while horizontal acoustic waves (Lamb waves) are calculated explicitly. Under this condition, the horizontal resolution should not be too high in order to avoid the requirement of a small time step. Some scientists (Juang 1992; Cullen 1990; Golding 1992; Pinty et al. 1995) also suggest integrating the cross-derivative terms explicitly in order to simplify the equations to become Poisson- or Helmholtz-type equations, which are more easily solved. However, numerical instability may occur over steep mountains with this kind of approach (Ikawa 1988; Skamarock et al. 1997).

There are different ways to solve linear EPDEs mathematically, including direct methods [Gaussian elimination, Fourier and cyclic reduction, and lower-upper (LU) triangular decomposition] and iterative methods [Jacobi, Gauss–Seidel, successive overrelaxation (SOR), alternative direction implicit (ADI), conjugate gradient, and multigrid]. The advantages and disadvantages of different methods have been briefly discussed in Fulton et al. (1986) and Kapitza and Eppel (1992). The ADI scheme works well if there is no cross-derivative term (Cullen 1990; Golding 1992; Pinty et al. 1995). To integrate cross-derivative terms implicitly, Kapitza and Eppel (1992) used the conjugate gradient method, which is usually applied to symmetric problems, with a preconditioner, and Skamarock et al. (1997) used the conjugate residual method with a preconditioner to solve the EPDEs. The convergence rate of the EPDEs depends upon the condition number of iteration matrix, which is the largest eigenvalue divided by the smallest one, and the number of distinct eigenvalues. A good preconditioner can cluster the eigenvalues and result in a faster convergence rate. Considerable experimentation is necessary to find a good preconditioner.

The multigrid method is a very general and efficient method for elliptic-type or Helmholtz-type problems (Brandt 1977; Fulton et al. 1986; Ciesielski et al. 1986; Bates et al. 1990; Bowman and Huang 1991: Adams et al. 1992; Engquist and Luo 1997; Mertens et al. 1998; Hiptmair 1998; Adams and Smolarkiewicz 2001). This method is a nested iteration scheme that was originally applied to boundary value problems. It is well known that the convergence rate of standard iterative methods, such as Jacobi, Gauss–Seidel, and SOR, are related to the eigenvalues of the iterative matrix. For linear discretized partial differential equations, the eigenvalues (convergence rates) are a function of the grid resolution. These standard iterative methods rapidly eliminate the error associated with short waves, but leave the long waves almost unchanged. The iteration on a coarse grid is much cheaper and more efficient since fewer points are involved. This feature becomes the essence of the multigrid method, which uses a coarse grid correction (long-wave correction) to improve the convergence rate. Different orders of relaxation cycling schemes can be used, as shown in Fig. 1. A V cycle (Fig. 1a) or W cycle (Fig. 1b) is preferred if a good initial guess is provided. A full multigrid V cycle (Fig. 1c), which starts from the coarsest grids, is suggested if there is no good initial guess. Four processes are involved in this method: prerelaxation, coarse grid solution, coarse grid correction, and postrelaxation. Figure 2 shows the procedure of a three-level V(*N*_{1}, *N*_{2})-cycle multigrid method, where *N*_{1} and *N*_{2} are the numbers of relaxation sweeps for prerelaxation and postrelaxation, respectively, and a brief description is given in appendix A.

As mentioned earlier, the implicit scheme is applied to both acoustic and gravity waves, and therefore a set of linear equations with a huge multiband sparse matrix needs to be solved. Modelers have been looking for a method, which is able to solve the EPDEs accurately and efficiently, and which can be applied to calculate this linear system with less constraint, such as consistently integrating the cross-derivative terms implicitly. Though the conjugate gradient method was used, Kapitza and Eppel (1992) mentioned that the iterative multigrid technique is the most efficient algorithm for Poisson-type problems. However, they argued that the multigrid method suffers from the requirement that the number of grid intervals must be a power of 2. In fact, this constraint can be slightly relaxed if the matrix can be reasonably calculated by direct solvers or by repeated relaxation sweeps on the coarsest grids. It seems that the multigrid method has high potential for efficiently solving the linear EPDEs. This method is not as popular in the atmospheric sciences as are the conjugate gradient and conjugate residual methods. More investigation might be both interesting and necessary in order to learn the characteristics of this method and to learn the appropriateness of applying it to atmospheric models. For these reasons, the multigrid method is chosen for use in this study, with the primary objective being to investigate the efficiency and accuracy of this method.

The multigrid solver developed by Adams [mud3cr; Adams and Smolarkiewicz (2001)] is applied to this study since this package is quite comprehensive. (This solver is available on the World Wide Web at http://www.scd.ucar.edu/css/software/mudpack.) Mud3cr computes the second-order finite-difference approximation to three-dimensional linear nonseparable EPDEs with cross-derivative terms. A Gauss–Seidel iteration is applied to each level and a block Gaussian elimination method is used to solve the linear equations at the coarsest grid level. The full weighting restriction and the multilinear interpolation (appendix A) are used. The size of grid intervals is not restricted to a power of 2 (Adams 1989), but still needs to satisfy the formula of 2^{x} × *y*, where *x* is a non-negative integer and *y* is a prime number. Small prime numbers are recommended as described in the package. A four-color ordering scheme, which makes the solver converge faster and makes it suitable for parallelizing, is implemented. The convergence criteria are defined as a function of the maximum vector norm, and are introduced in section 3. Many options are provided in this package, and several features are tested in this study, such as different relaxation choices (point by point or line by line), different tolerance numbers, and different sweeps of prerelaxation and postrelaxation. The choice of point-by-point or line-by-line relaxation is important for efficient convergence and it can approximately be determined by the coefficients of the EPDEs. However, experimentation might be required in some cases. Detailed information on this package is found in Adams (1989, 1991) and Adams and Smolarkiewicz (2001).

In general, atmospheric models use very fine resolution in terms of height or hydrostatic pressure in the lower troposphere. In this model, uniform vertical, as well as horizontal, grid spacing is required because it is a feature of the multigrid solver. To achieve the constant grid spacing with nonuniform height intervals in the vertical direction, one of the possibilities is to apply a monotonic function to general terrain-following coordinates, similar to that done in the Canadian Mesoscale Compressible Community model (Thomas et al. 1998) and the German Deutscher Wetterdienst (DWD) Lokal-Modell (Thomas et al. 2000). Here, we propose a flexible hybrid coordinate, which is also terrain following and has the features of the (modified) hybrid coordinate (Arakawa and Lamb 1977; Simmons and Burridge 1981; Simmons and Strüfing 1981), to meet the requirement of constant grid spacing. The flexible hybrid coordinate is briefly introduced in section 2. The description of the nonhydrostatic model is given in section 3 and the emphasis is put on solving the high-frequency wave equations. In section 4, three experiments are carried out to validate the model performance and to test the efficiency and accuracy of the multigrid method. Finally, a brief summary is given in section 5.

## 2. Flexible hybrid coordinate

*σ*

_{f}. Here, we only present

*σ*

_{f}(

*z*), which is the one used in this model. In physical space,

*z*at any grid point is split into three parts: the surface height (

*z*

_{s}), base height (

*z*

_{b}), and deviation height (

*z*

_{d}). The implicit relationship between

*σ*

_{f}(

*z*) and

*z*can be expressed as where

*z*

_{t}is the height at the model top, and

*z*

_{s;thmax}is the maximum surface height within the domain;

*F*

_{b}and

*F*

_{d}are termed base and deviation functions, respectively;

*σ*

_{f}has the value 1 at the surface and then monotonically decreases with height to 0 at the model top, while the base (

*F*

_{b}) and deviation (

*F*

_{d}) functions are 0 at the surface and 1 at the model top according to their definitions here. The definitions of

*F*

_{b}and

*F*

_{d}depend upon the preferred vertical structure.

The base function is mainly designed to meet the requirement of the constant vertical interval in the multigrid solver. A segment of any function can be chosen to present *F*_{b}, as well as *F*_{d}, in *σ*_{f}(*z*) as long as it is well defined, satisfies boundary conditions, and monotonically decreases with *σ*_{f}. Suggested functions are hyperbolic tangent, polynomial, and exponential functions.

The deviation height could be used to assist the adjustment of the vertical resolution when the surface topography [or pressure in *σ*_{f}(*p*)] varies significantly. Figure 3 shows the vertical cross section of *σ*_{f} surfaces when two different deviation functions are used with the same linear base function. Both *σ*_{f}'s have the same resolution at the column of mountain peak, but the hyperbolic tangent deviation function (solid lines) gives a better resolution in terms of height at the valleys than the linear one (dashed lines) does. The difference of the resolutions can also be seen from the thick solid and dashed lines (Fig. 3), which present the same *σ*_{f} surface of 0.78. This higher resolution in the lower troposphere at the valleys due to the use of a hyperbolic tangent deviation function might be able to improve some simulations of boundary layer phenomena. It is noted that the usual *σ*–*z* coordinate (*z*_{t} − *z*)/(*z*_{t} − *z*_{s}) is a special case of *σ*_{f}(*z*) when *F*_{b} = *F*_{d} = 1 − *σ*_{f} (dashed lines in Fig. 3). Therefore, the deviation function in FHC does provide more flexibility than the usual *σ* coordinate does.

A brief description of how to choose different coefficients in the hyperbolic tangent function, as in the formula in the caption of Fig. 3, might be useful. Here, *C*_{1} (*σ*_{f} = 1) and *C*_{2} (*σ*_{f} = 0) are the starting and ending points of the chosen segment tanh(*X*). The segment can be used to define the base and deviation functions after it is shifted downward for tanh(*C*_{1}) [minus tanh(*C*_{1})] and then normalized by the value of tanh(*C*_{2}) − tanh(*C*_{1}). The resolution in terms of height is related to the slope of the segment. A smaller slope (∂*F*_{b}/∂*X* or ∂*F*_{d}/∂*X*) indicates a higher resolution. As the coefficients (*C*_{1} = −4 and *C*_{2} = 1) used in Fig. 3, a higher resolution is obtained at the lower troposphere due to a smaller slope close to the starting point of *C*_{1}. To experiment with different coefficients is recommended in order to get a better sense of this coordinate.

FHC is named not only for its flexibility, but also for the feature it has in common with the (modified) hybrid coordinate (Simmons and Burridge 1981; Simmons and Strüfing 1981) when *σ*_{f}(*p*) is used, that is, that *σ*_{f} surfaces are (nearly) parallel to pressure surfaces in the stratosphere if the deviation function, *F*_{d}, is chosen properly (Chen 1999).

## 3. Model description

### a. Governing equations

*x*,

*y*, and

*z*components of the momentum equations, conservation of mass, and thermodynamic equation. The symbols

*u*,

*υ*,

*w*,

*π*, and

*θ*are velocity components in the

*x*,

*y*, and

*z*directions; Exner function; and potential temperature, respectively. The Exner function,

*π*, is defined as where

*p*is pressure and

*p*

_{o}= 1000 hPa. In addition,

*C*

_{p}is the specific heat of air at constant pressure,

*R*the gas constant,

**V**the three-dimensional velocity,

*m*

_{u}the mapping factor at the

*u*point,

*m*

_{υ}the mapping factor at the

*υ*point, and

*g*the gravitational acceleration.

*σ*

_{f}(

*z*), is applied to this model. The base function

*F*

_{b}(

*σ*

_{f}) and deviation function

*F*

_{d}(

*σ*

_{f}) are chosen case by case in order to meet the desired physical vertical resolutions in section 4. The potential temperature (

*θ*), Exner function (

*π*), and pressure (

*p*) are divided into mean fields [

*θ*

*z*),

*π*

*z*), and

*p*

*z*)] and perturbation fields [

*θ*′(

*x*,

*y*,

*z*,

*t*),

*π*′(

*x*,

*y*,

*z*,

*t*), and

*p*′(

*x*,

*y*,

*z*,

*t*)]. Mean fields are assumed hydrostatic balance, and

*π*

*T*

*θ*

*π*

*π*/∂

*t*becomes ∂

*π*′/∂

*t*in (5) and ∂

*θ*/∂

*t*becomes ∂

*θ*′/∂

*t*in (6).

### b. Numerical methods

In order to relax the small time step constraint due to high-frequency acoustic and gravity waves, the semi-implicit scheme (Robert 1969) is applied. The low-frequency waves are calculated explicitly, while the high-frequency waves are calculated implicitly. In this section, most attention is paid to solving high-frequency wave equations. A staggered Arakawa C–Lorenz grid is used with the pressure and temperature located at the same levels as horizontal velocity components.

To solve the governing equations, we first advance prognostic variables with advection terms using a fourth-order advection scheme (Sun 1993) in the horizontal direction and a second-order Crowley advection scheme (Crowley 1968) in the vertical direction. For an open boundary condition, the upstream method and the second-order Crowley scheme are applied to lateral boundaries, and the upstream method is also applied to the upper boundary. A free-slip boundary condition is imposed at the lower boundary. Second, the prognostic variables are advanced with eddy diffusion terms explicitly based on Durran and Klemp (1983).

*B*

_{x}= ∂

*σ*

_{f}/∂

*x*,

*B*

_{y}= ∂

*σ*

_{f}/∂

*y*, and

*B*

_{z}= ∂

*σ*

_{f}/∂

*z*. After transferring from Cartesian coordinates to flexible hybrid coordinates, the equations for high-frequency waves become Only terms on the left-hand sides of (7)–(11) are integrated implicitly, while terms on the right-hand sides are evaluated explicitly. An implicit scheme with uncentered coefficient

*α*(Cullen 1990; Juang 1992) is applied. For convenience, we define any prognostic variable,

*M*, such that

*M*

^{n}is the variable at the current time step

*n*,

*M** is the updated variable after the integration of the eddy diffusion,

*M*** is the temporary prognostic variable for integrating the high-frequency waves, and

*M*

^{n+1}is the variable at the next time step

*n*+ 1. In order to save memory, only the Exner function perturbation is expressed as

*π*

*α*

*π*

*α*

*π*

^{n}

*π*

^{α}

*M*, are expressed as

*M*

*α*

*M*

*α*

*M*

*M** and

*M*

^{n}are small. Here, 0.5 <

*α*≤ 1 is used to guarantee unconditional stability and a test of the

*α*value is examined in section 4.

*m*

_{p}is the mapping factor at the point of pressure. In addition,

*w*** can be obtained from (14) and (16) and expressed as where

*E*

*t*

^{2}

*g*

*α*

^{2}

*θ*

*B*

_{z}

*θ*

*σ*

_{f}

*w*** should involve the calculation of the inverse of a tridiagonal matrix if the space is discretized. Here, we keep the continuous form in space to simplify the calculation of

*w***, which will reduce the complexity of the EPDE of the Exner function perturbation later on. In Thomas et al. (2000), the Arakawa C–Lorenz grid was also implemented, but they used temperature, pressure, and vertical momentum equations to calculate

*w*without mass lumping.

*C*

_{xx},

*C*

_{yy},

*C*

_{zz},

*C*

_{xz},

*C*

_{yz},

*C*

_{x},

*C*

_{y},

*C*

_{z}, and

*C*

_{e}, and the source/sink term

*r*, are given in appendix B. The

*C*coefficients on the left-hand side of (18) are independent of time and, therefore, only need to be calculated once. However, extra memory is required to save these coefficients.

*C*coefficients and

*r*term in (18) are calculated and passed into the multigrid solver with the first guess of

*π*′

^{n}. The iteration is stopped when the maximum outer iteration number is reached or when

*r*

_{max}< tol, where tol is a given error tolerance number, and

*r*

_{max}is the convergence criteria, which is defined as where

*K*and

*K*− 1 indicate the current and previous iteration multigrid cycles, respectively, and ‖ ‖ is the maximum vector norm and is used to compute the relative difference between two successive solutions. After getting

*π*′**, we can substitute it into (12), (13), and (17) to calculate

*u***,

*υ***, and

*w***, respectively. The prognostic variables at the next time step (

*u*

^{n+1},

*υ*

^{n+1},

*w*

^{n+1}, and

*π*′

^{n+1}) are finally obtained after we explicitly integrate terms on the right-hand sides of equations (7)–(10).

### c. Boundary conditions of the Exner function of the EPDEs

*π*′** = 0 is applied to the top boundary and lateral boundaries in the

*x*direction. For the boundary condition in the

*y*direction,

*π*′** = 0 is used if the experiment is three-dimensional, and a periodic boundary condition is used if the experiment is two-dimensional (

*y*direction is assumed homogeneous). At the lower boundary, the velocity normal to the surface is equal to zero, and therefore,As mentioned earlier, the Arakawa C–Lorenz grid is used with the pressure, temperature, and horizontal velocity components located at the same levels. However, in order to satisfy the lower boundary condition, all prognostic variables are located on the surface (horizontal still staggered). The grid spacing is uniform between

*π***, and

*w*is located between

*π***. Therefore, the grid interval between

*w*is not a constant (only half-grid interval at the lower boundary). Similar grid points are also arranged at upper and lateral boundaries. Substituting (12), (13), and (17) into (19) yields where In practice, Eq. (20) is approximately solved as

## 4. Experiments

Three experiments, linear mountain waves (Queney 1948), a downslope windstorm (Lilly 1978), and a three-dimensional thermal bubble, are carried out to demonstrate the performance of the model and the efficiency and accuracy of the multigrid solver. In order to compare the model results with previous works and with the analytical solution, the first two experiments are two-dimensional with the *y* direction homogeneous. The mapping factors (e.g., *m*_{p}, *m*_{u}, and *m*_{υ}) are set to 1, the maximum outer iteration number is 30, and the uncentered coefficient, *α*, is 0.65 (for the reason explained later).

### a. Linear mountain waves

A linear mountain wave experiment is chosen after Queney (1948). The nonlinear effects are suppressed when the mountain is very shallow. Therefore, the numerical results can be compared with the linear analytical solution. A bell-shaped ridge is imposed at the center of the domain. The ridge is defined as *h* = *h*_{s}/[1 + (*x*/*a*)^{2}], where the crest of the ridge, *h*_{s}, is 10 m, and the half-width length, *a*, is 1000 m. The atmosphere is dry and the eddy diffusion is excluded. A uniform horizontal mean velocity, 10 m s^{−1}, is imposed for the whole atmosphere, which has a Brunt–Väisälä frequency (*N*) of 0.01 s^{−1}. The sea level pressure, vertical domain, horizontal domain in the *x* direction, and surface temperature are 1000 hPa, 25 600 m, 51 200 m, and 300 K, respectively. How to properly handle the open boundary condition is an important issue, but it is not the primary concern of this study. Therefore, we only simply apply the boundary conditions, which were mentioned in section 3c, with sponge zones (30 bands in the *x* lateral boundaries and one-fourth domain at upper boundary) to absorb waves. Sixteen runs (four groups) are set up, as indicated in Table 1, with the use of a V(1,1) multigrid cycle. A linear deviation function is applied to all runs. Different base functions and different numbers of grid intervals are examined in order to see the influence of the resolution on the surface pressure perturbation, as well as in the lower troposphere. Moreover, the convergence behavior of the multigrid method regarding different tolerance numbers, and relaxation choices (point by point or line by line) are tested. There are four grid intervals in the *y* direction, and Δ*x* = Δ*y* is set in every run. A hyperbolic tangent base function as described in the caption of Table 1 is used in group 1. A very high resolution (∼20 m) is located near the surface and a relatively low resolution (∼420 m) is presented near the top. The exponential base function, which is also given in the caption of Table 1, is utilized in group 2. The vertical resolution is about 140 m near the surface and 270 m near the top. A linear base function (1 − *σ*_{f}) is applied to the rest. The last group has double grid intervals in both the *x* and *σ*_{f} directions compared with the others. Therefore, the average vertical resolution over the whole domain is about 200 m in group 3, and about 100 m in group 4. A 200-m horizontal resolution and a 10-s time step are used in the first three groups; a 100-m horizontal resolution and a 5-s time step are used in the last one. The model integrates for 10 h at which time the solution approximately reaches steady state.

Figure 4a shows the surface pressure perturbation for the analytical solution of the nonhydrostatic mountain waves (ANALY), and the model simulations of TANH_P_1, EXP_P_1, LIN_P_1, and LINH_P_1 after a 10-h integration, and Fig. 4b shows the discrepancies of the surface pressure perturbation between the analytical solution and model simulations in Fig. 4a. Only one run of each group is plotted since four runs in the same group are very similar. It should be mentioned that the analytical solution in Queney (1948) is different from that in Fig. 4a, which is calculated with higher-order accuracy (Hsu and Sun 2001). Weak high pressure (∼0.5 Pa) is built on the windward side of the ridge since air is accumulated there and a minimum low pressure center is located on the crest of the ridge as indicated in Fig. 4a. Regarding the phases of the surface pressure perturbations, the model simulations are quite consistent with the analytical solution for all runs, although most of the amplitudes are underestimated. The root-mean-square errors of the surface pressure perturbation in Table 2, as well as the plot of Fig. 4b, show that group 1 is in the best agreement with the analytical solution, followed by the results of group 4, group 2, and group 3, in that order. The simulated result of the surface pressure perturbation is strongly correlated to the vertical resolution near the ground.

Figure 5 shows the potential temperature perturbation for the analytical solution (dashed lines) and the model simulation results (solid lines). The overall patterns of the model simulations are quite comparable with the analytical solution. For the model results, the amplitudes are slightly underestimated, and the phases are slightly shifted. Although the wave propagation from the surface is well simulated in group 1, the resolution in the lower troposphere is inhomogeneous and not sufficient. Thus, it does not produce a better result (Fig. 5a and Table 2) compared with group 4 (Fig. 5d and Table 2), which has double grid intervals in each direction and a higher time resolution. The root-mean-square errors of groups 3 and 4 in Table 2 indicate that the improvement in the surface pressure (improved 46%) is faster than the potential temperature (improved 33%) as resolution increases, namely that the solution of the surface pressure perturbation, which is obtained by solving EPDEs, is more sensitive than the solution of the potential temperature perturbation. It is noted that the total central processing unit (CPU) times in group 4 are much more than four times those in group 3 when only four times grid intervals are used in group 4. We suspect that this performance anomaly is due to virtual memory effects. The initial case was designed to use most of the physical memory on the processor. The runs in group 4 did not fit into physical memory and required paging to and from the disk.

The tolerance number is one of the major factors, which determines the convergence rate and the accuracy of the solution. Two tolerance numbers, 0.1 and 0.001, are tested, and the model simulation errors are almost identical for both numbers as indicated in Table 2 (e.g., TANH_P_1 vs TANH_P_001, TANH_L_1 vs TANH_L_001, etc.). However, the average iteration numbers, which are defined as the average numbers of V cycles per time step, are quite different. The solutions are converged with one average V(1,1) cycle when the 0.1 tolerance number is used. Without further improving accuracy, it takes 6–13 average V(1,1) cycles to converge, depending on the different base functions and relaxation choices, when the 0.001 tolerance number is used. The tolerance number of 0.1 apparently works quite well in this linear case.

The relaxation choice, point by point or line by line, could also critically determine the convergence rate, and the decision depends upon the coefficients of the EPDEs. Details are found in Fulton et al. (1986). The point-by-point relaxation with the tolerance number of 0.1 works quite well in this experiment as indicated in Table 2. For a V cycle, to solve the EPDEs line by line takes more time than to solve them point by point due to the involvement of calculating tridiagonal matrices in the line-by-line relaxation. Therefore, the total CPU time spent on the second run (line by line) is about 10%–30% more than that on the first run (point by point) for each group with the tolerance number of 0.1, though both iteration numbers are comparable. The grid boxes in the lower troposphere are unisotropic (Δ*z* ≪ Δ*x*) in group 1. When the tolerance number of 0.001 is chosen, the average iteration number with line-by-line relaxation is half of that with point-by-point relaxation, but both CPU times are comparable. As mentioned earlier, the results with a tolerance number of 0.1 are good enough in this case and the point-by-point relaxation is more efficient than the line-by-line one.

Another setup with the same configuration of TANH_P_1 but different sweeps of prerelaxation and postrelaxation—V(2,2), V(1,2), and V(2,1)—is tested. The root-mean-square errors of the surface pressure perturbation (∼0.130 × 10^{−1} Pa) and potential temperature perturbation (∼0.153 × 10^{−2} K) for these three runs are very similar to those in TANH_P_1. The average iteration number is about 1.019 for all of them, and the total CPU time for each of them is slightly more than that for TANH_P_1, which uses a V(1,1) cycle. So far, the V(1,1) cycle with point-by-point relaxation has performed reasonably well in this nonhydrostatic linear mountain wave case.

The uncentered coefficient, *α*, determines the instability and the damping strength of the short waves. Therefore, its value might be one of the critical factors in determining the model accuracy and the convergence rate of the EPDEs. When the time derivative is discretized using three time steps, the short waves are stable if 0.5 < *α* ≤ 1 (Cullen 1990). The waves damp the most as *α* equals 1 (fully implicit scheme). However, when a two-time-step scheme is applied, the proof of the instability regarding the value of *α* is not that straightforward (Simmons and Temperton 1996), but its value is still within the same range (0.5–1). In Juang (2000) and Ikawa (1988), *α* = 0.8 was chosen. In this study, instead of choosing an arbitrary number, a test with different values of *α* is conducted with the same configuration of TANH_P_1. Figure 6 shows the results of the relative root-mean-square error and the average iteration number. The root-mean-square error of the potential temperature perturbation increases as *α* increases. The error of the surface pressure perturbation behaves quite similarly when *α* is greater than 0.60, but the values rise as *α* approaches 0.5. With the value of 0.52, the error grows one order larger in the potential temperature perturbation and three orders larger in the surface pressure perturbation. The model becomes unstable when *α* ≤ 0.51. The convergence rate is correlated to the value of *α*, which indicates the damping strength of the short waves or the smoothness of short waves. The average iteration number drops fast at the beginning as *α* increases and then approaches a value of 1 when *α* is greater than 0.65. Considering the accuracy of the pressure field and the convergence efficiency, *α* = 0.65 is, therefore, adopted into this model.

A hydrostatic mountain wave test is also given after Queney (1948). The initial conditions of the atmosphere, the model setup, and the options in the multigrid solver are the same as those in TANH_P_1, except that the half-width length of the mountain is 10 km, the horizontal domain is 640 000 m, the horizontal resolution is 2000 m, and the time interval is 20 s. The grid aspect ratio (Δ*x*/Δ*z*) is about 100 in the lower troposphere. Different tolerance numbers and relaxation choices are tested, and the results are shown in Table 3. The CPU times in Table 3 are less than those in TANH_P_1 since a larger time step is used. The root-mean-square errors of the surface pressure perturbation with point-by-point relaxation (P_1 and P_001) are slightly better than those with line-by-line relaxation (L_1 and L_001), but all of them are still considered to converge to similar solutions. With similar accuracy, the point-by-point relaxation with the tolerance number of 0.1 (P_1) is still the most efficient—the same conclusion as in the nonhydrostatic mountain wave simulation.

### b. Downslope windstorm

Strong downslope winds, which develop on the steep lee sides of mountains, have received a great deal of attention (e.g., Lilly 1978; Durran and Klemp 1983; Smith 1985; Richard et al. 1990; Miller and Durran 1991; Doyle et al. 2000; Hsu and Sun 2001). To further demonstrate the nonlinear behavior of this model and to test the efficiency of the multigrid solver, we choose to simulate the hydraulic jump (Fig. 7 in Lilly 1978) and the strong downslope wind (Fig. 9 in Lilly 1978) that occurred during the windstorm experiment on 11 January 1972 in Colorado. The isentropic surfaces at high levels were dragged down to low levels on the lee side of the mountain, and strong winds (greater than 60 m s^{−1}) developed near the surface. The sounding at 1200 UTC 11 January 1972 at Grand Junction, Colorado, is used as the initial condition (Table 4). As in the linear mountain wave experiment, the same boundary conditions are applied, and a bell-shaped mountain is also imposed into the domain with a crest of 2000 m and a half-width length of 10 km. The vertical domain is 35 km. A 30-band sponge zone is used at the top and both lateral boundaries in the *x* direction, and the horizontal resolution is 1 km. There are 384, 4, and 192 grid intervals in the *x*, *y*, and *σ*_{f} directions, respectively. Both linear base and deviation functions are the same as those in group 3 in the linear mountain wave experiment. The tolerance number is 0.1, the V(1,1) cycle is used, and the point-by-point relaxation is chosen. A 5-s time step is utilized and the model is integrated for 4 h.

Figures 7a and 7b show the solutions of the potential temperature at 2 and 3 h, respectively. The hydraulic jump is well formed after 2 h and continuously propagates downstream with a speed of about 4 m s^{−1}. The leading edge of the hydraulic jump becomes steeper and steeper as time goes on. The initial zonal wind near the surface is about 8–10 m s^{−1}, but reaches a maximum of 62.9 m s^{−1} after 2 h of the simulation (Fig. 8a) and a maximum of 72.9 m s^{−1} after 3 h (Fig. 8b). The hydraulic jump and the magnitude of the downslope wind compare reasonably with observational data, as well as with most model results in Fig. 3 of Doyle et al. (2000). In this experiment, it takes about 2.61 average V(1,1) cycles to converge for point-by-point relaxation. The model takes one to two more V(1,1) cycles to converge at the very early stage of the simulations due to the initial shock, and thereafter only one V(1,1) cycle. However, when the hydraulic jump appears, the iteration number is back to three to four V(1,1) cycles. The average iteration number could be reduced to one average V(1,1) cycle when a 2-s time step is applied to the windstorm case. This feature is also pointed out in Skamarock et al. (1997), who used the conjugate residual method. Two other tests are also carried out: point-by-point relaxation with 0.001 tolerance number, and line-by-line relaxation with 0.1 tolerance number. Both results are quite comparable with those in the original test, which uses a 0.1 tolerance number and point-by-point relaxation. However, it takes 6.365 average V(1,1) cycles to converge with a tolerance number of 0.001 and point-by-point relaxation. The line-by-line relaxation with a 0.1 tolerance number takes only 1.51 average V(1,1) cycles per time step, but it requires more CPU time (5.26 h for point-by-point relaxation vs 6.37 h for line-by-line relaxation).

The tests mentioned above are carried out on an IBM RISC/6000 scalar machine with a 200-MHz processor and 4 MB of L2 cache. Since the field indices for both model and the multigrid solver mud3cr are (*i*, *j*, *k*), the use of scalar machines might degrade the performance of line-by-line relaxation, while vector machines will not cause this problem. Therefore, another comparison between point-by-point relaxation and line-by-line relaxation with a tolerance number of 0.1 is carried out on a Cray J90 vector machine. The model CPU time with the point-by-point relaxation is 16.63 h. However, the CPU time with line-by-line relaxation is only 8.94 h.

As mentioned in section 2, the deviation function can be applied to adjust the vertical resolution in valley regions. Another setup with a hyperbolic tangent deviation function is examined. Below 6 km, the hyperbolic tangent case has a near-constant vertical resolution of about 172 m, in contrast to the linear case where the lower-troposphere vertical resolution varies between 172 and 182 m. Figure 9 presents the potential temperature and zonal wind after a 4-h integration. We can see that the hydraulic jump in the hyperbolic tangent case (solid lines) moves faster than that in the linear case (dashed lines). The flexibility of the deviation function, which cannot be achieved by usual *σ* coordinates, provides a good opportunity to further study the influence of the resolution on the model simulations in valley regions. More investigation of the *σ*_{f} coordinate will be interesting, but it is beyond the scope of this paper.

### c. A three-dimensional thermal bubble

*F*

_{b}= 1 −

*σ*

_{f}, is chosen. There are 96, 96, and 160 grid intervals in the

*x*,

*y*, and

*σ*

_{f}directions, respectively. The horizontal resolution (Δ

*x*and Δ

*y*) is 10 m and the vertical resolution of

*σ*

_{f}is 1/160 (Δ

*z*= 10 m). The surface pressure is 1000 hPa, and the potential temperature is 303 K (isentropic). Four lateral boundaries of the Exner function perturbation are set to zero. The initial bubble has a constant potential temperature perturbation of 0.5 K within a radius of 50 m and then exponentially decaying to the boundaries. The formula of the thermal bubble is where

*r*=

*x*−

*x*

_{0})

^{2}+ (

*y*−

*y*

_{0})

^{2}+ (

*z*−

*z*

_{0})

^{2}

*S*= 100 m. Here,

*x*

_{0}and

*y*

_{0}are the middle points of the domain in the

*x*and

*y*directions, respectively, and

*z*

_{0}= 260 m. The time interval is 1 s, and the total integration time is 18 min. A point-by-point relaxation, V(1,1) cycle, and 0.1 tolerance number in the multigrid solver are chosen.

Figure 10 shows the three-dimensional potential temperature perturbation at 9, 12, 15, and 18 min. The thermal bubble moves upward after release because of buoyancy, and then it grows like a mushroom. The upper part of the bubble gets thinner and thinner as time increases and the bubble top breaks at 15 min. After 18 min of simulation, part of the bubble has moved out of the domain through the upper boundary. The average iteration number of the V(1,1) cycle is 1.07.

## 5. Summary

Here, we present a three-dimensional, fully compressible, nonhydrostatic model. To overcome the exceedingly small time step required for high-frequency waves, a semi-implicit scheme is applied to this model. The use of the implicit scheme relaxes the extremely small time step requirement, but a linear system with a huge multiband sparse matrix of elliptic partial differential equations is encountered. The EPDEs become more difficult to solve when the cross-derivative terms are consistently integrated implicitly. The multigrid solver, mud3cr, is applied to solve this set of EPDEs.

The uniform grid spacing is required in the multigrid solver. To address this requirement, a new terrain-following coordinate, the flexible hybrid coordinate, is designed. Two functions are introduced in the FHC (*σ*_{f}): base (*F*_{b}) and deviation (*F*_{d}) functions. The base function is simply used to meet the uniform grid spacing in the multigrid solver, and the deviation function can be applied to adjust the vertical resolution, especially in the valley regions or stratosphere. Different combinations of base and deviation functions can present a variety of vertical structures of the *σ*_{f} surfaces. The recommended functions are exponential, hyperbolic tangent, and polynomial.

Three experiments are provided to demonstrate the performance of this nonhydrostatic model and the efficiency of the multigrid solver: one with linear mountain waves (Queney 1948), one with a downslope windstorm (Lilly 1978), and one with a three-dimensional thermal bubble. In the nonhydrostatic linear mountain wave case, the model results are in very good agreement with the analytical solution for all runs. A better surface pressure is obtained with a higher resolution near the surface, and a better potential temperature field in the lower troposphere is simulated with double grid intervals in each direction. This case is further used to diagnose the uncentered coefficient, *α*, and the value of 0.65 is considered as the optimal choice of this test in terms of the accuracy and efficiency. The surface pressure perturbation is calculated by solving the elliptic partial differential equations, and its solution is rather sensitive to the uncentered coefficient, more so than the potential temperature. The hydrostatic mountain wave simulations also show quite reasonable results. In the downslope windstorm experiment, the model reproduces the observed hydraulic jump and the magnitude of the downslope wind reasonably well. The simulated maximum wind occurs near the surface due to the implementation of an inviscid lower boundary condition. It is worth mentioning that the windstorm simulation results are very similar to those from the National Taiwan University–Purdue model in Doyle et al. (2000), which used a time-split explicit scheme to calculate high-frequency waves. The windstorm case is also used to examine the potential influence of the deviation function and the results do show some impact of the use of different deviation functions. A three-dimensional thermal bubble is tested to further demonstrate the reasonable performance and the robustness of this model.

The multigrid method is not as popular in the atmospheric sciences as it is in engineering or some other fields, since the coefficients of the EPDEs are quite complicated in terrain-following coordinates, as well as because the method is more sophisticated to code than others. One of the major purposes of this study is to address the performance and efficiency of the multigrid method when applied to nonhydrostatic atmospheric models. Several tests with different tolerance numbers, different relaxation choices (point by point or line by line), and different sweeps of prerelaxation and postrelaxation are examined. The use of the 0.001 tolerance number does not improve the solutions, but requires more CPU time. Both nonhydrostatic and hydrostatic linear mountain waves, as well as the three-dimensional thermal bubble simulation, take one average V(1,1) cycle with point-by-point relaxation to converge. It is noted that the very nonlinear problems, such as the windstorm case in this study, might need more iteration time to converge. Therefore, besides the tolerance number, the convergence speed may also depend on the property of the fluid, namely that convergence might be more difficult for a fast-changing fluid. Though the windstorm simulation requires two to three average V(1,1) cycles with point-by-point relaxation or one to two average V(1,1) cycles with line-by-line relaxation to converge, it is still quite efficient. Given enough accuracy, we therefore, consider that the point-by-point, V(1,1) cycle relaxation with 0.1 tolerance number gives a very good performance for all experiments examined in this study on scalar machines, even when the grid aspect ratio (Δ*z*/Δ*x*) is much less than 1. It is worth mentioning that the line-by-line relaxation is superior to point-by-point relaxation for the windstorm case, which has a very nonlinear fluid and the grid aspect ratio is much less than 1, due to the order of the field indices of the model and the multigrid solver. The trade-off of using implicit methods is that extra memory is required for saving coefficients of the EPDEs.

Though we believe that the multigrid method is one of the best iteration methods for solving elliptic-type problems, more investigation is required. It seems that the conjugate residual method with a preconditioner also performs quite well, as discussed by Skamarock et al. (1997). A detailed comparison between these two methods will be of interest and we leave it for future work.

## Acknowledgments

The authors would like to thank Dr. Jiun-dar Chern for his generous assistance and Dr. J. Adams at NCAR for his helpful discussion. The authors would also like to thank Dr. J. Bresch and two anonymous reviewers for their useful suggestions concerning this paper. NCAR is acknowledged for providing the multigrid software. This work is supported by NSF under Grant ATMS-9631572.

## REFERENCES

Adams, J. C., 1989: MUDPACK: Multigrid portable FORTRAN software for the efficient solution of linear elliptic partial differential equations.

,*Appl. Math. Comput***34****,**113–146.Adams, J. C., 1991: Recent enhancements in MUDPACK, a multigrid software package for elliptic partial differential equations.

,*Appl. Math. Comput***43****,**79–93.Adams, J. C., , and P. Smolarkiewicz, 2001: Modified multigrid for 3D elliptic equations with cross-derivatives.

,*Appl. Math. Comput***121****,**301–312.Adams, J. C., , R. Garcia, , B. Gross, , J. Hack, , D. Haidvogel, , and V. Pizzo, 1992:: Applications of multigrid software in the atmospheric sciences.

,*Mon. Wea. Rev***120****,**1447–1458.Arakawa, A., , and V. R. Lamb, 1977: Computational design of the basic dynamical processes of the UCLA general circulation model.

*Methods in Computational Physics*, J. Chang Ed., Vol. 17, Academic Press, 173–265.Bates, J. R., , F. H. M. Semazzi, , R. W. Higgins, , and S. R. M. Barros, 1990: Integration of the shallow water equations on the sphere using a vector semi-Lagrangian scheme with a multigrid solver.

,*Mon. Wea. Rev***118****,**1615–1627.Bowman, K. P., , and J. Huang, 1991: A multigrid solver for the Helmholtz equation on a semiregular grid on the sphere.

,*Mon. Wea. Rev***119****,**769–775.Brandt, A., 1977: Multi-level adaptive solutions to boundary-value problems.

,*Math. Comput***31****,**333–390.Briggs, W. L., 1987:

*A Multigrid Tutorial*. Society for Industrial and Applied Mathematics, 90 pp.Briggs, W. L., , V. E. Henson, , and S. F. McCormick, 2000:

*A Multigrid Tutorial*. Society for Industrial and Applied Mathematics, 193 pp.Chen, S. H., 1999: Part I: The development of a nonhydrostatic model. Ph.D. thesis, Purdue University, 83 pp.

Ciesielski, P. E., , S. R. Fulton, , and W. H. Schubert, 1986: Multigrid solution of an elliptic boundary value problem from tropical cyclone theory.

,*Mon. Wea. Rev***114****,**797–807.Crowley, W. P., 1968: Numerical advection experiments.

,*Mon. Wea. Rev***96****,**1–11.Cullen, M. J. P., 1990: A test of a semi-implicit integration technique for a fully compressible non-hydrostatic model.

,*Quart. J. Roy. Meteor. Soc***116****,**1253–1258.Doyle, J. D., and and Coauthors, 2000: An intercomparison of model-predicted wave breaking for the 11 January 1972 Boulder windstorm.

,*Mon. Wea. Rev***128****,**901–914.Durran, D. R., , and J. B. Klemp, 1983: A compressible model for the simulation of moist mountain waves.

,*Mon. Wea. Rev***111****,**2341–2361.Engquist, B., , and E. Luo, 1997: Convergence of a multigrid method for elliptic equations with highly oscillatory coefficients.

,*SIAM J. Numer. Anal***34****,**2254–2273.Fulton, S. R., , P. E. Ciesielski, , and W. H. Schubert, 1986: Multigrid methods for elliptic problems: A review.

,*Mon. Wea. Rev***114****,**943–959.Gadd, A. J., 1978: A split explicit integration scheme for numerical weather prediction.

,*Quart. J. Roy. Meteor. Soc***104****,**569–582.Golding, B. W., 1992: An efficient non-hydrostatic forecast model.

,*Meteor. Atmos. Phys***50****,**89–103.Hiptmair, R., 1998: Multigrid method for Maxwell's equations.

,*SIAM J. Numer. Anal***36****,**204–225.Hsu, W-R., , and W-Y. Sun, 2001: A time-split, forward-backward numerical model for solving a nonhydrostatic and compressible system of equations.

,*Tellus***53A****,**279–299.Ikawa, M., 1988: Comparison of some schemes for nonhydrostatic models with orography.

,*J. Meteor. Soc. Japan***66****,**753–776.Juang, H-M. H., 1992: A spectral fully compressible nonhydrostatic mesoscale model in hydrostatic sigma coordinates: Formulation and preliminary results.

,*Meteor. Atmos. Phys***50****,**75–88.Juang, H-M. H., 2000: The NCEP mesoscale spectral model: A revised version of the nonhydrostatic regional spectral model.

,*Mon. Wea. Rev***128****,**2329–2362.Kapitza, H., , and D. P. Eppel, 1992: The non-hydrostatic mesoscale model GESIMA. Part I: Dynamical equations and tests.

,*Beitr. Phys. Atmos***65****,**129–145.Klemp, J. B., , and R. B. Wilhelmson, 1978: The simulation of three-dimensional convective storm dynamics.

,*J. Atmos. Sci***35****,**1070–1096.Laprise, R., 1992: The Euler equations of motion with hydrostatic pressure as an independent variable.

,*Mon. Wea. Rev***120****,**197–207.Lilly, D. K., 1978: A severe downslope windstorm and aircraft turbulence event induced by a mountain wave.

,*J. Atmos. Sci***35****,**59–77.Mendez-Nunez, L. R., , and J. J. Carroll, 1994: Application of the MacCormack scheme to atmospheric nonhydrostatic models.

,*Mon. Wea. Rev***122****,**984–1000.Mertens, R., , H. de Gersem, , R. Belmans, , K. Hameyer, , D. Lahaye, , S. Vandewalle, , and D. Roose, 1998: An algebraic multigrid method for solving very large electromagnetic systems.

,*IEEE Trans. Magn***34****,**3327–3330.Miller, P. P., , and D. R. Durran, 1991: On the sensitivity of downslope windstorms to the asymmetry of the mountain profile.

,*J. Atmos. Sci***48****,**1457–1473.Pinty, J-P., , R. Benoit, , E. Richard, , and R. Laprise, 1995: Simple tests of a semi-implicit semi-Lagrangian model on 2D mountain wave problems.

,*Mon. Wea. Rev***123****,**3042–3058.Queney, P., 1948: The problem of airflow over mountains: A summary of theoretical studies.

,*Bull. Amer. Meteor. Soc***29****,**16–26.Richard, E., , P. Mascart, , and E. C. Nickerson, 1990: Examples of the role of surface friction in downslope windstorms.

,*Meteor. Atmos. Phys***43****,**163–172.Robert, A., 1969: The integration of a spectral model of the atmosphere by the implicit method.

*Proc. WMO-IUGG Symp. on NWP*, Vol. VII, Tokyo, Japan, Japan Meteorological Agency, 19–24.Robert, A., 1993: Bubble convection experiments with a semi-implicit formulation of the Euler equations.

,*J. Atmos. Sci***50****,**1865–1873.Simmons, A. J., , and D. M. Burridge, 1981: An energy and angular-momentum conserving vertical finite-difference scheme and hybrid vertical coordinates.

,*Mon. Wea. Rev***109****,**758–766.Simmons, A. J., , and R. Strüfing, 1981: An energy and angular momentum conserving finite-difference scheme, hybrid coordinates and medium-range weather prediction. ECMWF Tech. Rep. 28, 67 pp.

Simmons, A. J., , and C. Temperton, 1996: Stability of a two-time-level semi-implicit integration scheme for gravity-wave motion. ECMWF Tech. Memo. 226, 33 pp.

Skamarock, W. C., , P. K. Smolarkiewicz, , and J. B. Klemp, 1997: Preconditioned conjugate-residual solvers for Helmholtz equations in nonhydrostatic models.

,*Mon. Wea. Rev***125****,**587–599.Smith, R. B., 1985: On severe downslope winds.

,*J. Atmos. Sci***42****,**2597–2603.Sun, W-Y., 1993: Numerical experiments for advection equation.

,*J. Comput. Phys***108****,**264–271.Tanguay, M., , A. Robert, , and R. Laprise, 1990: A semi-implicit semi-Lagrangian fully compressible regional forecast model.

,*Mon. Wea. Rev***118****,**1970–1980.Tapp, M. C., , and P. W. White, 1976: A non-hydrostatic mesoscale model.

,*Quart. J. Roy. Meteor. Soc***102****,**277–296.Thomas, S., , C. Girard, , R. Benoit, , M. Desgagne, , and P. Pellerin, 1998:: A new adiabatic kernel for the MC2 model.

,*Atmos.–Ocean***36****,**241–270.Thomas, S., , C. Girard, , G. Doms, , and U. Schattler, 2000: Semi-implicit scheme for the DWD Lokal-Modell.

,*Meteor. Atmos. Phys***73****,**105–125.

## APPENDIX A

### The Algorithm of a Three-Level Multigrid V-Cycle Relaxation

In Fig. 2, assume that we are solving a set of linear equations, 𝗔**U** = **F**, where 𝗔 is a (*n* × *n*) matrix and **U** and **F** are (*n* × 1) vectors. For any vector or matrix **M**, **M**^{h} indicates **M** at the finest grid level, **M**^{2h} indicates **M** at the second finest grid level, etc. Here, we simply give five steps to illustrate the three-level V(*N*_{1}, *N*_{2}) cycle relaxation scheme.

*Step 1:*

(a) Relax 𝗔^{h}**U**^{h} = **F**^{h} (prerelaxation). Assign an initial guess to **U**^{h} at the finest grids. Use a relaxation scheme to estimate an approximation solution of **U**^{h} with *N*_{1} sweeps. The relaxation scheme could be a Jacobi or Gauss–Seidel type.

(b) Calculate **r**^{h}(= **F**^{h} − 𝗔^{h}**U**^{h} = 𝗔^{h}**e**^{h}), which is a residual vector.

*Step 2:*

(a) Calculate **F**^{2h}(= ^{2h}_{h}**r**^{h}). Here, ^{2h}_{h}**r**^{h} at finer grids (subscript) into **F**^{2h} at next coarser grids (superscript). Similar definitions with different subscripts and superscripts are used later.

(b) Relax 𝗔^{2h}**e**^{2h} = **F**^{2h} (prerelaxation). Assign an initial guess 0 to **e**^{2h}. Apply the relaxation scheme to solve the residual equation with *N*_{1} sweeps and get an approximation solution of **e**^{2h}.

(c) Calculate **r**^{2h}(= **F**^{2h} − 𝗔^{2h} **e**^{2h}).

*Step 3:*

(a) Calculate **F**^{4h}(= ^{4h}_{2h}**r**^{2h}).

(b) Solve 𝗔^{4h}**e**^{4h} = **F**^{4h} to get the solution **e**^{4h} at the coarsest grids using direct or iterative methods. The number of the coarsest grid intervals is not required to be a power of 2.

*Step 4:*

(a) Update **e**^{2h}(⇐**e**^{2h} + ^{2h}_{4h}**e**^{4h}) (coarse grid correction). Here, ^{2h}_{4h}**e**^{4h} at coarser grids (subscript) into finer grids (superscript).

(b) Relax 𝗔^{2h}**e**^{2h} = **F**^{2h} (postrelaxation) for *N*_{2} sweeps with the new initial guess **e**^{2h}.

*Step 5:*

(a) Update **U**^{h}(⇐**U**^{h} + ^{h}_{2h}**e**^{2h}) (coarse grid correction).

(b) Relax 𝗔**U**^{h} = **F**^{h} (postrelaxation) for *N*_{2} sweeps with the new initial guess **U**^{h}.

Repeat steps 1–5 until *r*_{max} < tol or until the maximum outer iteration number of V cycle is reached. Here, *r*_{max} is an error measurement, which is defined in section 3, and tol is a tolerance number.

The operator moving a vector from finer grids to coarser grids is called the restriction operator, such as ^{2h}_{h}^{4h}_{2h}^{h}_{2h}^{2h}_{4h}

## APPENDIX B

### The Coefficients of the Elliptic Partial Differential Equation

*r*of Eq. (18): where

Sixteen runs (four groups) with different base functions (*F _{b}*), grid intervals, tolerance numbers, time steps, and relaxation choices are set up for the experiment of linear mountain waves. In group 1, the formula of the hyperbolic tangent base function

*F*(tanh) is the same as the hyperbolic tangent deviation function used in Fig. 3 except

_{b}*C*

_{1}= −2.2 and

*C*

_{2}= 0.1. An exponential function,

*F*(exp) = exp[ln 2 × (1 − σ

_{b}_{f})] − 1, is used in group 2. A linear base function is used in both group 3 and 4. In column 3 “point” and “line” indicate the choices of point-by-point and line-by-line relaxations, respectively. Same domain and the V(1, 1) multigrid cycle are used for all runs

The average iteration numbers in terms of the multigrid V cycles per time step are presented. The root-mean-square errors of the surface pressure perturbation (*p*^{′}_{s}

For the title of each run, *P* indicates point-by-point relaxation, *L* indicates line-by-line relaxation, 1 indicates the tolerance number of 0.1, and 001 indicates the tolerance number of 0.001. The surface pressure perturbation (*p*^{′}_{s}

The sounding, which was collected at 1200 UTC 11 Jan 1972 at Grand Junction, CO, and used for the downslope windstorm experiment