The development of CFD code was started at the author's laboratory in 1979 when the author noticed the existence of the nonlinear ship wave called free-surface shock wave . The typical codes developed in the past 17 years are listed in Table 1. The series of TUMMAC code is based on the finite-difference method in the rectangular grids and those of WISDAM code is based on the finite-volume method in the curvilinear, boundary-fitted grids [ 2], but they all follow the same solution algorithm of the MAC-type . The MAC-type solution algorithm is based on the LU decomposition and explicit time-differencing and it is most suitable to the time-marching solution.
The velocity and pressure field are separately solved in the time-marching process. The velocity field is updated by the following Navier-Stokes equation modified by the explicit time-differencing.
Here, two-dimensional equation is used and the terms ξ and ζ contain previous velocity, convection terms and diffusion terms. Pressure devided by the density of fluid is denoted ϕ. The pressure field is determined by the following Poisson equation of which implementation means conservation of mass.
With these two equations the flow-field is sequentially updated in the time-marching procedure under the boundary conditions on the body-surface, free-surface and open boundary.
The block-diagram is shown in Fig.1 for the case of two-layer flow solution making use of the density-function for the implementation of the free-surface conditions. From the velocity field and their boundary conditions the source term for the Poisson equation of the pressure is given. Then the pressure fields of the two layers are solved with the source term under appropriate boundary conditions. The updated pressure gives new velocity field through the relation of the Navier-Stokes equation. This is repeated with the time-dependent boundary configuration and conditions imposed on it. In the open flow problems the disturbance of the flow takes place by the interaction between fluid and body and the disturbance may be artificially given by the generation of the waves at the inflow boundary or by the movement of the body.
In the past 30 years the technique of solving the Navier-Stokes equation has made remarkable progress and the gradient of improvement has recently been decreased. The CFD technology is now putting more stress on customizing, for which the grid generation technique plays an important role. Since we have reliable solution method for the Navier-Stokes equation, the success of the CFD simulation rely on the grid generation to a larger extent than before. Actually a large part of the efforts is devoted to the grid generation when a three-dimensional body of complex geometry is deal with. Although the gridless technique is continuously investigated, it still has some substantial difficulties, such as poor implementation of the conservation laws. Presently we must work within the framework of the method with grid system.
Since the unstructured grids like those for the finite element method (FEM) still have difficulties in developing into three-dimensional (3D) cases, we can choose either the rectangular grids of the boundary-fitted, curvilinear grids (structured grids). When we employ the rectangular grids both the body-boundary and the free-surface cannot be fitted to the grid lines, while the body-boundary-fitted grids can be either fitted to the free-surface or not. In general the structured grids find difficulties in the representation of the boundary of extreme complexity, such as the automobile shape or free-surface shape of breaking wave. In this context the choice and design of the grid system is of significant importance for the appropriateness, convergence, robustness and accuracy of the CFD simulation.
The cross-sectional grids of the TUMMAC-IV and WISDAM-V  methods are shown in Fig.2. Apparently the degree of accuracy for the implementation of the body-boundary condition is deteriorated in the TUMMAC-IV method. However the purpose of the TUMMAC-IV method is to simulate free-surface waves and the advantage of the shorter CPU time due to the larger spacing and of the needless efforts of grid generation made this code very popular. The boundary-fitted grids are