Next Article in Journal
Establishment and Optimization of an Aggregate Culture System of Testicular Cells from Marine Medaka, Oryzias dancena
Next Article in Special Issue
Application of Regularized Meshless Method with Error Estimation Technique for Water–Wave Scattering by Multiple Cylinders
Previous Article in Journal
Effects of Low Salinity on Growth, Digestive Enzyme Activity, Antioxidant and Immune Status, and the Microbial Community of Litopenaeus vannamei in Biofloc Technology Aquaculture Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Graphic Processing Unit–High-Order Spectral (GPU-HOS) Numerical Wave Tank for the Simulation of Directional Wave Field Evolution over a Long Time

State Key Laboratory of Coastal and Offshore Engineering, Dalian University of Technology, Dalian 116024, China
*
Authors to whom correspondence should be addressed.
J. Mar. Sci. Eng. 2023, 11(11), 2078; https://doi.org/10.3390/jmse11112078
Submission received: 29 August 2023 / Revised: 4 October 2023 / Accepted: 20 October 2023 / Published: 30 October 2023
(This article belongs to the Special Issue Advances in Marine Computational Fluid Dynamics and Wave Studies)

Abstract

:
Existing numerical models for direct simulations of stochastically directional waves are limited by their computational burden, and only a few of them can be applied to modeling directional waves on account of nonlinear evolutions on large time scales. In response to these drawbacks, this paper proposes a modified rectangular numerical wave tank based on the high-order spectral (HOS) method. Three main arrangements are responsible for the model improvement. Firstly, the relaxation technique is applied on the four sides of the tank for generating and attenuating waves, with an enhancement in the total computational efforts required of less than 5% being achieved. Secondly, for this paper, the HOS method for solving the nonlinear evolution of waves was modified to a GPU-speedup version for the first time, and the speedup increases dramatically (up to 16-fold) when the grid number is O(106). Thirdly, the higher-order Runge–Kutta method with order 8 is adopted for the purpose of suppressing cumulative temporal errors. Furthermore, several numerical results are presented for the validation of the model. With our modified numerical wave tank, the nonlinear evolutions of random directional waves can be efficiently studied over a large time and space scale.

1. Introduction

Random waves are commonly encountered in the oceanic environment. The safety of vessels and structures at sea is frequently threatened by large waves, especially some extraordinary ones, which are referred to as rogue waves or freak waves [1,2,3,4]. Studying nonlinear evolutions of random waves is helpful in comprehending the physical processes of wave dynamics and the possible mechanism of the occurrence of rogue waves. It is also beneficial to predict the changeable statistical properties and energy redistributions of random wave trains at any given space and time. The study of the nonlinear evolutions of random waves is essential but challenging, and this holds true when working with either experimental or numerical methods.
It is routine to treat random waves as the sum of a very large number of small-amplitude independent monochromatic waves with different frequencies and directions of propagation [5], and the surface elevation is described by a Gaussian distribution. In linear theory, energy does not transfer among the wave components. However, irregular waves are unstable in narrow-banded and deep-water conditions [6] due to modulation instability (MI) [7,8,9]. This nonlinear process results in the evolutions of individual wave amplitudes [10] and occurs on a dynamic O(ε−2) time scale [10,11], where ε is the wave steepness (ε = ka, with k being the specific wavenumber and a being the specific wave amplitude). Moreover, on a larger kinetic O(ε−4) time scale, the mechanism of four-wave resonant interactions [12] contributes to the evolutions of wave spectra [10,11].
The wave evolutions affected by MI have been well studied numerically and experimentally. For unidirectional waves, the theoretical analysis by [11] reveals that MI dominates the nonlinear evolutions of random waves, and it is strongly correlated with the formation of rogue waves and the variation in wave statistics (e.g., enhancing the kurtosis of the surface elevation). These conclusions have been confirmed by numerical simulations with the nonlinear Schrödinger (NLS) family [13,14,15,16,17] and the high-order spectral (HOS) method [18,19,20,21,22], as well as experimental studies [17,23,24,25,26]. In general three-dimensional (3D) wave fields, MI might be suppressed by directional spreading, and this has been outlined by the experiments described in [27,28]. This has also been found in numerical simulations based on the NLS family [29,30] and HOS [31,32,33,34] as well. In realistic directional sea states, MI might disappear in intermediate and shallow depths [35,36], and it still has an effect on wave evolutions for narrow spectral conditions in deep water [33].
As for four-wave resonant interactions, the theory is well established, but related experiments are rare [37]. The effects of four-wave resonant interactions on wave evolutions can be measured via discrete interaction approximation [37,38], which is widely used in third-generation wave models [11].
The experimental study of wave evolutions under nonlinear effects requires a large-scale wave tank and sophisticated techniques for wave generation and attenuation (especially for the elimination of re-reflection waves in experiments over a long time). Globally, wave tanks that meet these requirements are fairly rare, pricy, and precious, and only a few experiments of wave evolutions have been reported (for instance, unidirectional wave experiments on the short dynamic O(ε−2) time scale [26] and the long kinetic O(ε−4) time scale [23] and directional wave experiments on the long kinetic O(ε−4) time scale [28]).
Numerical simulations can be a supplement to experimental studies with low costs. Plenty of numerical models (e.g., [39,40,41,42,43,44,45,46]) have been developed for modeling wave evolutions, and among them, the NLS-type and HOS models are the two most popular. However, NLS-type simulations are potentially limited by their inherent assumptions of narrow-band spectra and slowly varying spatial and temporal modulations [32], and NLS-type models lose accuracy near and beyond the dynamic O(ε−2) time scale [32]. Recently, the authors of [47] proposed a new Hamiltonian version of Dysthe’s equation (a kind of NLS-type method), maintaining accuracy on the O(ε−3) time scale. HOS models can produce proper results regarding directional wave evolutions on the dynamic O(ε−2) time scale [32,34], but they require large amounts of computational effort [32], which requires high-performance computing (HPC) devices. Moreover, custom HOS models simulate the evolutions of initial waves at t = 0 and produce temporal results only, which cannot be directly compared with experimental results [31].
Combining the HOS model and the idea of additional potential [48], the numerical wave tank (NWT) of the Research Laboratory in Hydrodynamics, Energetics, and Atmospheric Environment (LHEEA) at Centrale Nantes, shortened as HOS-NWT, achieves wave generation by matching real wavemaker conditions up to second-order nonlinearity [49]. It is then extended to match third-order nonlinear wavemaker conditions [50]. Similar to HOS-NWT, the semi-analytical HOS-like model [51] simulates nonlinear waves in numerical wave flumes by matching wavemaker conditions up to second-order nonlinearity and even arbitrary-order nonlinearity [52]. Nevertheless, the procedure for additional potential takes similar-magnitude computational efforts compared with the HOS kernel [50], which limits the applications of the NWT to modeling waves over large time scales.
To our knowledge, only a few direct numerical simulations have been conducted beyond the O(ε−2) time scale for unidirectional waves [10,22], and there have been no direct numerical simulations of directional waves due to the associated computational burden.
Modeling wave evolutions over a large time scale, taking O(ε−3) and O(ε−4), for instance, is of vital importance. On the one hand, nonlinear wave evolutions are affected not only by the MI on the O(ε−2) time scale but also by the four-wave resonant interactions on the O(ε−4) time scale. On the other hand, the possible recurrence of rogue waves by nonlinear evolutions of random waves should be counted in sufficiently long wave trains [1], such as the O(ε−4) time scale.
As direct numerical models of wave evolution currently cannot simulate directional waves over the large time scales of O(ε−3) and O(ε−4), we were motivated to establish a modified numerical wave tank based on the HOS model to achieve this goal. Firstly, we utilized a lower-computational-cost relaxation technique [53] to replace the additional potential in the NWT-HOS [49,50]. Then, we coded the modified solver in the GPU-speedup version to enable simulations on the large O(ε−3) and O(ε−4) time scales. Furthermore, we applied the eighth-order Runge–Kutta method (RK8) to suppress cumulative temporal errors. Finally, we conducted several numerical tests to validate the modified numerical wave tank.

2. Methods

In this section, a 3D wave field in a standard horizontal rectangular domain D of [0, π] × [0, π] with a finite water depth d is studied. Any rectangular area can be mapped onto this standard domain, and the deep-water condition is the limit of the finite depth. The fluid under consideration is homogeneous, incompressible, and inviscid. We selected a Cartesian coordinate system with the origin O located at one corner of the domain D. The faces x = 0, x = π, y = 0, and y = π represent the four side wall boundaries, respectively. The section z = −d represents the flat bottom, while z = 0 is the fluid surface at rest. Wave motions are governed by Euler’s equations [54], which include the Laplace equation, the bottom conditions, and the free surface boundary conditions.
Building upon the formulations in [45] and the Hamilton conservation in [46], we can rewrite the free surface boundary conditions as:
Φ t + g η = 0.5 ( Φ x 2 + Φ y 2 ) + 0.5 m = 2 M k = 1 m 1 w ( k ) w ( m k ) + 0.5 ( η x 2 + η y 2 ) m = 2 M 2 k = 1 m 1 w ( k ) w ( m k )
η t = ( Φ x η x + Φ y η y ) + m = 1 M w ( m ) + ( η x 2 + η y 2 ) m = 1 M 2 w ( m )
and
ϕ = m = 1 M ϕ ( m )
ϕ ( m ) ( z = 0 ) = R ( m ) ; m = 1 , 2 , , M
R ( 1 ) = Φ
R ( m ) = k = 1 m 1 η k k ! k z k ϕ ( m k ) ( z = 0 ) ; m = 2 , 3 , , M
w ( m ) = k = 0 m 1 η k k ! k + 1 z k + 1 ϕ ( m k ) ( z = 0 ) ; m = 1 , 2 , , M
where ϕ represents the velocity potential, η represents the free surface elevation, and Φ represents the surface velocity potential [8], defined as the velocity potential on the free surface, η. Additionally, ϕ(m) represents the expansion mode of velocity potential for a given nonlinear order m, with ( )(m) denoting a quantity of O(εm). R(m) represents ϕ(m) on the still water surface of z = 0, while w(m) is the vertical velocity expansion on the free surface, η. M represents any given nonlinear order, with M = 1 referring to a linear solution, M = 2 referring to second-order nonlinearities, and M = 3 referring to third-order nonlinearities, including MI and four-wave resonant interactions. Equations (1)–(7) form a closure system about η and Φ only, which can be solved analytically by the spectral method [8] or numerically by the pseudo-spectral method for periodic boundary conditions [45,46] as well as solid boundary conditions [49].
The primary distinction between the custom HOS model [45,46] and the numerical wave tank of [49] lies in the choice of basis functions for implementing the pseudo-spectral method. The former utilizes the discrete Fourier series to satisfy the periodic boundary conditions, while the latter proposes the discrete cosine sequence [cos(nx); n = 0, 1, …] to satisfy the solid boundary conditions. In our study, we opted for the standard cosine sequence [cn(x) = rncos(nx); n = 0, 1, …] as the basis functions.
c n ( x ) = r n cos ( n x ) = { 1 / π n = 0 cos ( n x ) / π / 2 n = 1 , 2 ,
where rn is a constant coefficient which is used to ensure that the integral of the product of two sets, cn(x)cm(x), is equivalent to the Dirac delta function, δmn. The standard cosine sequence is an orthonormal basis function in the Hilbert space [0, π], which is a basic concept in functional analysis (see [55], for instance). To implement this sequence, we selected a set of collocation points (or grid points) in [0, π] × [0, π]. Specifically, the x coordinates are xi = /(P − 1), where i = 0, 1, …, P − 1, and the y coordinates are yj = /(Q − 1), where j = 0, 1, …, Q − 1. P and Q represent the truncation modes (or the number of grid points) in the x and y directions, respectively. By applying the standard cosine sequence within the framework of the pseudo-spectral method [56], we obtain:
ϕ i , j ( t ) = m = 1 M p = 0 P 1 q = 0 Q 1 K p , q ( m ) ( t ) β p , q ( z ) c p ( i π P 1 ) c q ( j π Q 1 )
Φ i , j ( t ) = p = 0 P 1 q = 0 Q 1 A p , q ( t ) c p ( i π P 1 ) c q ( j π Q 1 )
η i , j ( t ) = p = 0 P 1 q = 0 Q 1 B p , q ( t ) c p ( i π P 1 ) c q ( j π Q 1 )
where, Kp,q(m)(t), Ap,q(t), and Bp,q(t) represent the mode amplitudes of ϕ(m), Φ, and η in wavenumber space, respectively. Equations (9)–(11) automatically satisfy the solid boundary condition. Interestingly, Equations (10) and (11) correspond to the discrete cosine transformation (DCT), which can be computed using the fast Fourier transform [57] (FFT). To account for the impermeable constant-bottom boundary in a finite water depth, the kernel function βp,q(z) should be defined as:
β p , q ( z ) = cosh ( k p , q ( z + d ) ) cosh ( k p , q d )
Furthermore, in order to satisfy the Laplace equation, the characteristic wave number kp,q is defined as:
k p , q = p 2 + q 2
At this point, the only remaining conditions to satisfy are the free surface conditions, which have been incorporated into the closure system described by Equations (1)–(7). Taking Equations (10) and (11) into this closure system, it becomes a series of ordinary differential equations in wavenumber space.
d d t A p , q ( t ) = F
d d t B p , q ( t ) = G
F = D C T { g η 0.5 ( Φ x 2 + Φ y 2 ) + 0.5 m = 2 M k = 1 m 1 w ( k ) w ( m k ) + 0.5 ( η x 2 + η y 2 ) m = 2 M 2 k = 1 m 1 w ( k ) w ( m k ) }
G = D C T { ( Φ x η x + Φ y η y ) + m = 1 M w ( m ) + ( η x 2 + η y 2 ) m = 1 M 2 w ( m ) }
where DCT{} represents the discrete cosine transformation of any quantities in the braces.
Next, the Runge–Kutta method can be applied to solve the time marching of Equations (14) and (15), provided that the initial values of A and B (or Φ, and η) are known prior.
In order to achieve the accurate and efficient modeling of progressive waves within Equations (14) and (15), several important aspects need to be addressed in detail, including wave generation and elimination, error control, initial time relaxation, and the basic solver and speedup algorithm.
  • Wave generation and elimination
To generate and eliminate waves, we adopted the relaxation technique, which has been successfully used in solving various models, including a fully nonlinear wave model [58], Euler’s equations [59], and the Reynolds-averaged Navier–Stokes equations [53]. The computation domain is illustrated in Figure 1, with the surface elevation initially set at rest. Waves are generated in the inlet relaxation region oabe, propagate through ebfi, and finally attenuate in the outlet relaxation region ifjk. Each relaxation region has a width of 1.5L, where L represents the dominant wavelength.
Following [53], the surface elevation η at each time step is modified by:
η r e = α η c p + ( 1 α ) η t h
where ηcp represents the computed free surface by the HOS model, ηth represents the theoretical wave profile (which is obtained from linear wave theory, for instance), and ηre represents the relaxed wave surface.
The relaxation coefficient α in the inlet (or outlet) region is denoted by:
α ( x r ) = e exp ( x r p ) e 1
where xr represents the relative distance to the interface be of the inlet region (or fi of the outlet region) along the x-direction. For example, xr = 0 when the points are on the be line, and xr = 1 when the points are on the ao boundary. Therefore, α = 0 at the boundary ao (or jk), and α = 1 at the interface be (or fi). Additionally, α is a smooth function with a deviation of any order lower than p equals 0, taking p = M + 0.5. Due to the property of α, the first term on the right-hand side of Equation (16) acts as a sink, which eliminates the calculated wave energy around the boundary. Conversely, the second term acts as a source, emitting theoretical waves into the calculation domain.
In the inlet region oabe, theoretical waves ηth follow the Longuet–Higgins wave model [5]:
η = n a n cos ( k n x cos θ n + k n y sin θ n 2 π f n t + ε n )
And the two-dimensional (2D) version is:
η = η ( x , t ) = n a n cos ( k n x 2 π f n t + ε n )
The wave amplitude is determined by the wave frequency spectrum:
a n = 2 S J ( f n ) Δ f
where SJ(f) represents the notable JONSWAP spectrum wave forecasting model (ref., e.g., [22]). The direction angle θn of each wave component in Equation (20) is determined through random sampling with a specified directional function, such as the cos-k function [60], used as the weighting distribution. This method of reconstructing directional waves is known as the random directional method (RDM), which is a modified single-summation method. The RDM has been verified and applied for generating directional waves in a physical wave tank [61].
In the outlet region ifjk, the surface elevation is simply set to ηth = 0.
Only when oblique waves or directional waves are desired do the two lateral side regions cbfg and edhi come into effect. This is the primary difference from the original relaxation method [42], which only considers unidirectional waves. In the lateral side regions, the surface elevation η is modified at each time step in the same way as in the inlet region oabe, where ηth follows the RDM. The only difference is that the coefficient α is distributed along the x-direction in the inlet region, whereas in the lateral side regions, α is redistributed along the y-direction as:
α ( y r ) = e exp ( y r p ) e 1
where yr represents the relative distance to the interface cg (or dh) along the y-direction.
By adding conditions in the lateral side regions, the calculated waves are dissipated around the lateral side boundaries bf and ei to prevent the reflection of lateral side waves. Additionally, theoretical waves emerge to supplement the lateral side waves. As a result, directional waves are generated on three sides of the numerical wave tank.
2.
Error control
There are four primary errors in HOS-type models.
Firstly, truncation error is inevitable due to the finite grid number in physical space and the mode number in wavenumber space when using the pseudo-spectral method, i.e., finite P and Q in Equation (9). However, selecting sufficiently large values of P and Q can effectively suppress the truncation error, as the pseudo-spectral method converges at an exponential rate with the increasing mode number [56].
Secondly, accumulated temporal errors may occur when using the Runge–Kutta method to solve Equations (14) and (15). The Runge–Kutta method family is a powerful tool for solving initial value problems [62] and is popular for achieving time marching when solving wave evolutions [32,34,45,49,50]. The classic Runge–Kutta method [62] (RK4), which is notable and preferred, is of order 4, meaning that the local error for each time step can be measured by O(Ch4), where C is a finite constant and h is the time step size. In this study, the RK8 (DOPR853 scheme in [62] without an error estimator) of order 8 was selected as the default Runge–Kutta scheme due to its high accuracy, and the local error is measured by O(Ch8). For the same time step size h, the temporal accumulated errors of RK8 are at a fairly low level compared to those of RK4 as the simulation time increases [62]. The high accuracy and low accumulated temporal errors support the application of RK8 for modeling wave evolutions over a large time scale.
Thirdly, aliasing errors are present when using the pseudo-spectral method. Two main types of aliasing errors exist. The first, called sampling aliasing, is caused by discrete sampling and folding frequency. Fortunately, it has the same magnitude as the truncation error [56]. The second, called nonlinear aliasing, arises from the product of two quantities. The best procedure to eliminate this type of error is zero-padding, as shown in [56]. In the HOS model, the products involve more than two quantities. The study in [45] suggests successively performing multiplication, where each factor is made alias-free before multiplying by the next term. This procedure is known as the iteration de-aliasing strategy. By contrast, [46] proposes the fully de-aliasing strategy, which eliminates aliasing errors in a sufficiently large matrix all at once. This study selected the iteration de-aliasing strategy in [45] for saving of memory and computational efforts. Fourthly, it is important to note that round-off errors can have a significant impact on the accuracy of the highest-wavenumber modes [45]. To mitigate these errors, it is recommended to smooth out quantities in wavenumber space using a low-pass filter [45]. Additionally, a low-pass filter is also useful in capturing the effect of wave breaking, an important physical phenomenon that cannot be ignored. However, the HOS method fails to accurately represent wave profile discontinuities caused by wave breaking. Under moderate-wave-steepness conditions (e.g., ε = 0.1), random waves may undergo wave breaking during long time evolutions [63], which can lead to computational instabilities. Without a special procedure for wave breaking, the HOS method may not be suitable for simulating wave evolutions over a large time scale. Several attempts have been made to address the issue of wave-breaking dissipation in the HOS method [32,63,64,65]. In this study, we opted to use the low-pass filter proposed by [32] to eliminate round-off errors and model the effect of wave-breaking dissipation. The performance of this process has been thoroughly evaluated in [32,63].
3.
Initial time relaxation
Dommermuth [66] has highlighted that when simulating nonlinear progressive waves, spurious high-frequency standing waves are likely to occur, and nonlinear terms must be adjusted for a sufficient initial time Ta such as 10 times the wave period. The time adjustment procedure proposed by Dommermuth [66] is similar to the relaxation method. However, it is important to note that the adjustment coefficient provided by Dommermuth [66] is not equal to 1 at t = Ta, which means that the results are not continuous at that point in time. In this study, we propose an alternative coefficient that has a strong mathematical foundation and is given by:
α n l = e exp ( 1 ( t / T a ) p ) e 1
where parameter p takes the value of p = M + 0.5, and M is the nonlinear order. Notably, the adjustment coefficient αnl in our study retains the deviation property of the coefficient provided by Dommermuth [66], but it equals 1 at t = Ta.
4.
Basic solver and speedup algorithm
Prior to implementing the speedup algorithm, we developed a basic solver for the numerical wave tank using the C++ language, which we named NWS-B. Our approach in this study involves dividing one HOS loop into three distinct processes: wave generation and elimination, wave evolution (the classic HOS process), and wave filtering. At each timestep, the solver modifies the surface elevation η using the relaxation technique and outputs the results in physical space as the first step (the process of wave generation and elimination). Next, η and Φ are transformed into wavenumber space using Equations (10) and (11), which are achieved via FFT. The transformed results A and B are then used in Equations (14) and (15) to solve the time marching by the RK8 module, with the application of the iteration de-aliasing strategy to solve F and G in Equations (16) and (17) (the process of wave evolution). The results of time marching are A and B in the next timestep, and the low-pass filter is applied to A and B (the process of wave filtering). The filtered A and B are then transformed back into physical space as η and Φ in the next timestep, and the next circle begins. Finally, the solver stops when the time marches at the end of the simulation, and the output at each timestep provides a description of the wave evolutions.
Once we established the NWS-B solver, we explored the possibility of speeding up the code using the modern graphic processing unit (GPU) tool CUDA. The foundational idea behind GPU speedup is to separate any n-loop in the code into n tasks and allocate n threads of the GPU to solve the n tasks individually and simultaneously. Using this approach, we modified the NWS-B solver to create the GPU-speedup version, which we named NWS-CU. The two main computational efforts in the code are the DCT and the de-aliasing method. DCT is achieved by applying FFT for fast realization [57], and the computational cost can be measured by O(Nlog2N), where N = PQ is the total truncation modes (or grid points) for the pseudo-spectral method. As for the iteration de-aliasing strategy, the de-aliasing of any two quantities can be treated as DCT with a double size, and then the computational cost is measured by O(2Nlog2(2N)). The GPU speedup of FFT is a standard module in CUDA, but DCT is not currently available (for CUDA 12.0). Therefore, we coded the transfer functions of DCT and FFT in [57] with the GPU speedup in this study, and FFT in CUDA was applied thereafter.

3. Results

3.1. Model Efficiency and Speedup

In order to test the efficiencies of the different models with varying N points, several 3D wave simulations were performed. The wave spectra used in these simulations were based on the JONSWAP model, which associates the cos-k directional function (refer to Equation (26)) with a peak enhanced parameter γ = 3.3, a spectral peak period Tp = 5.0 s, a significant wave height Hs = 0.18 m, a depth d = 100 m, and a directional spreading coefficient ck = 200. The wave steepness ε of this basic wave train was 0.01. The grid points N were varied as 33 × 33, 65 × 65, 129 × 129, 257 × 257, 513 × 513, and 1025 × 1025. All simulations were conducted on a PC with a 13th-Gen Inter® Core™ i5-13400 @ 2.5 GHz CPU and an NVIDIA GeForce RTX 3060 Ti GPU. The results of the CPU time per HOS step with a nonlinear order M = 3 for NWS-B and NWS-CU are shown in Figure 2. The y-axis in Figure 2a represents the CPU time per HOS step, while the y-axis in Figure 2b represents the speedup sp defined as the ratio of the CPU time per HOS step of NWS-B with that of NWS-CU. The simulation scales and wave parameters remained the same for the different solvers, and in order to make the results comparable, the CPU time of NWS-CU dismissed the GPU time because the GPU is an embedded device called by the CPU. Additionally, the number of called threads in the GPU was the same as the grid points, meaning that the total number of N threads were simultaneously called for an N-points discrete cosine transform.
The results depicted in Figure 2 indicate that NWS-CU was slower than NWS-B for lower N values due to the small computational efforts required, which were of the same magnitude as calling the GPU device. However, with increasing N, the speedup of NWS-CU rapidly increased, and it became significantly faster than NWS-B for higher N values. For example, at N = 1025 × 1025, NWS-B required approximately 41.1 s per HOS step, whereas NWS-CU only took 2.55 s per HOS step, resulting in a 16-fold speeding up. Therefore, from this point onwards, the 3D wave simulations were solved solely by the GPU-accelerated version.
The time consumed by the relaxation module was also taken into account. It was found that it took less than 5% of the total CPU time in NWS-B and even less than 1% of the total CPU time in NWS-CU. This demonstrates the high efficiency of the relaxation module for wave making and wave eliminating. The low amount of CPU time consumed by the relaxation module can be attributed to the fact that it mainly takes effect in small regions compared to the whole calculation domain, and the computational efforts of the relaxation module mainly come from the calculation of trigonometric functions. Additionally, partial results of repeated calculations of trigonometric functions can be stored in memory once at the initial state of the solver has been reached and then extracted to the relaxation module during the time loops, saving computational effort for the relaxation module.

3.2. Convergency

To verify the model convergence under different time steps and grid points, several 2D wave simulations were conducted using NWS-B. The basic wave parameters in this section were the JONSWAP spectra with a peak enhanced parameter γ = 3.3, a spectral peak period Tp = 5.0 s, a significant wave height Hs = 2.0 m, and a depth d = 100 m. The wave steepness ε of this basic wave train was 0.161. The simulated length was XL = 4 km (or approximately 100 times the peak wavelength), and the simulated time was TE = 11,000 s (or 2200 times the peak period). The time scale was O(ε−4), and the nonlinear order M was kept constant at 5. Different time steps and grid points were used to ensure model convergence.

3.2.1. Time Steps

We defined the time step index as npt = T/dt, where T is the specific period (e.g., the peak period Tp in this section) and dt is the constant time step for a specific-time-marching RK scheme (e.g., RK8 in this study). The value of npt represents the number of time nodes per specific period. To ensure model convergence, three sets of time steps were used with npt = 20, 30, and 40, while grid points were kept constant 2049. The numerical results are presented in Figure 3. The locations were selected as x/L = 10, 30, and 50, where L is the specific wavelength (e.g., the peak wavelength corresponding to the peak period). Since the total simulated time was fairly long (TE/T = 2200), it was difficult to display the entire time series in one figure. Therefore, three separate time intervals were selected to show the early, middle, and last stages of the time series. The surface elevations were found to be the same for different npt values, indicating that the numerical model was convergent under the condition of npt ≥ 20.
To quantify the differences among the three sets, we used the following error expression:
e r r = i | η i η i r e f | i | η i r e f |
The error expression used in this study is similar to the one adopted in [50]. The surface elevation of npt = 40 was selected as the reference surface elevation ηiref. Therefore, the error between npt = 20 and npt = 40 was calculated by Equation (22) as err1 = 6.9% (taking the average among the locations x/L = 10, 30, and 50), and the error between npt = 30 and npt = 40 was calculated as err2 = 3.2% (taking the average among the locations x/L = 10, 30, and 50). The calculated errors were relatively low, further verifying that the model was convergent when npt ≥ 20.

3.2.2. Grid Number

We defined the grid number index as npL = L/dx, where L is the specific wavelength and dx is the spacing related to grid number N, which takes dx = XL/(N − 1) (where XL is the total simulated length). Three sets of grid numbers were considered with N = 1025, 2049, and 4097, resulting in npL values of 10.0, 20.0, and 40.0, respectively. To ensure comparability, the time steps were kept constant for the different sets of grid numbers with npt = 30, which was found to be a convergent time step condition in Section 3.2.1. The numerical results for the different sets of grid numbers are presented in Figure 4. Three separate time intervals were selected to show the early, middle, and last stages of the time series due to the lengthy simulated time. The surface elevations for the sets of npL = 10.0 and 20.0 were found to be evidently different. However, the surface elevations for the sets of npL = 20.0 and 40.0 were fairly similar, indicating that the convergent condition was npL ≥ 20.0.
Selecting npL = 40.0 as the reference surface elevation ηiref and averaging the values at x/L = 10, 30, and 50, the error between npL = 10 and npL = 40 was determined to be err3 = 43.6%, and the error between npL = 20 and npL = 40 was calculated as err4 = 4.1%. Therefore, the numerical model was considered convergent when npL ≥ 20.0.

3.3. Stokes Waves

Two-dimensional wave trains with varying steepness were simulated in the spatial domain [0, XL] using NWS-B, where XL = 16 m. The key parameters of the carrier waves included a period T = 1 s, a water depth d = 10 m, and varying wave heights of H = 0.005, 0.05, 0.10, and 0.15 m. The wave steepness was then calculated as ε = ka = 0.01, 0.1, 0.2, and 0.3, respectively. The Stokes wave tests lasted for 30 s (30 times of the period T) and were conducted with M = 5, npt = 32, and npL = 50.0 (i.e., the grid number was 513). Figure 5 shows a comparison between the numerical results and the fifth-order solution of the Stokes waves [67], while the first-order, second-order, and third-order solutions of the Stokes waves are included for reference.
In Figure 5, the x-coordinate has been truncated to show only one wave profile, although dozens of waves were simulated. The y-coordinate represents the nondimensional η/H, allowing for comparisons among the simulations of different carrier waves. As depicted in Figure 5, the numerical results were closely consistent with the fifth-order Stokes solution for ε ≤ 0.2, but slightly different for ε = 0.3. The errors of the numerical results, when compared to the fifth-order Stokes solution, were 2.6% (for ε = 0.01), 3.7% (for ε = 0.1), 4.1% (for ε = 0.2), and 12.3% (for ε = 0.3). Therefore, the solver used in this study simulated qualified Stokes waves for small and moderate wave steepness (ε ≤ 0.2).

3.4. Oblique Waves

Three-dimensional wave trains with oblique angles of θ = 15° and 30° were simulated in a square domain [0, XL] × [0, XL] using NWS-CU, where XL = 5 km. The key parameters of the carrier wave included a period T = 8 s, a water depth d = 100 m, and a wave height H = 2 m (wave steepness ε = 0.063, close to linear wave trains). The oblique wave tests were conducted for 8000 s, which was 1000 times the period T, with M = 5, npt = 30, and npL = 20.5. The time scale ranged between O(ε−2) and O(ε−3).
The numerical results for t/T = 500.0 are presented in Figure 6, where the wavelength L = 100 m and the relative coordinates were x/L ≤ 50 and y/L ≤ 50. Due to the enormous size of the waves in the calculation domain at any given timestep, the wave profiles are shown in discontinuous coordinates. Notably, the wave profiles remained stable (due to linearity), and there was no wave reflection on any of the four side boundaries. By extracting surface elevations of the grid points on the central line y/L = 25, the errors of the numerical oblique waves on these central line grid points, when compared to the sinusoidal waves, were below 4% along the x-direction. These qualified results from simulating linear oblique waves demonstrate the effectiveness of the relaxation technique in wave-making and wave attenuation.

3.5. Unidirectional Irregular Waves

Unidirectional irregular waves with varying wave steepness were simulated in the spatial domain [0, XL] using NWS-B and XL = 4000 m. The input wave spectra followed the JONSWAP formulation with a peak period Tp = 5 s, a peak enhancement factor γ = 3.3, and varying significant wave heights Hs = 0.5, 1.0, and 1.5 m. The water depth was d = 100 m, and the significant wave steepness was calculated as ε = kpHs/2 = 0.04, 0.08, and 0.12, respectively. The model parameters included npt = 30 and npL = 20.0 (with a constant time step of 0.1667 s and grid points of 2049). The nonlinear order was M = 5, and five realizations with initial random phases were performed, with each realization producing a 750 s wave time series. The time scales were approximately O(ε−2). Similar simulations were also conducted using HOS-NWT [50], with all parameters remaining the same as described above. Additional necessary setups of the HOS-NWT included the vertical grid points Nz = 129 (for wave generation) and the time tolerance tol = 1 × 10−5.
The numerical results of NWS-B and HOS-NWT were extracted and compared at x/L = 10. The time series of one realization for different significant wave steepness are shown in Figure 7. Due to the different strategies used for picking random phases in NWS-B and HOS-NWT, the scattered waves simulated by these two tools could not be directly compared. However, the magnitude and amplification of wave surfaces modeled by NWS-B and HOS-NWT were similar for varying values of the significant wave steepness ε, as presented in Figure 7.
The significant wave heights were calculated and averaged across all five realizations for each ε at x/L = 10. As shown in Figure 8a, the significant wave heights for NWS-B were slightly smaller than the input values, while the significant wave heights for HOS-NWT were slightly bigger than the input values. The absolute deviations were no more than 5%. Similarly, the wave spectra were estimated using Goda’s method [68] and averaged across all five realizations for each ε at x/L = 10. The results are shown in Figure 8b. The wave spectra for NWS-B and HOS-NWT were closely approximate, with similar spectral areas and peak frequencies. These results validated the effectiveness of NWS-B in modeling irregular waves at moderate steepness, as it produced similar results to the validated HOS-NWT [50].

3.6. Directionally Spread Waves on a Large Time Scale

Directionally spread wave simulations were conducted with NWS-CU. The input wave spectra followed the JONSWAP formulation with a peak period Tp = 1 s, a Phillips parameter α = 0.016, and a peak enhancement factor γ = 6.0. The water depth was d = 3 m, with the corresponding significant wave height Hs = 0.08 m and the dominant wave steepness ε = 0.16. Directional spreading was considered using the cos-k function as follows:
D ( θ ) = { Γ ( N + 1 ) 2 c k Γ 2 ( ( N + 1 ) / 2 ) cos c k ( θ θ 1 ) , | θ θ 1 | π 2 0 , o t h e r w i s e
where ck represents the directional spreading coefficient, which was considered with different values of ck = ∞ (indicating unidirectional waves), 200, and 24. The wave parameters in this case precisely matched the partial conditions of Experiment B in [28].
The calculation domain covered the area of [0, XL] × [0, XL], where XL = 70 m. The model parameters included npt = 32 and npL = 22.8 (with a constant time step of 0.03125 s and a grid of 1025 × 1025 points). The nonlinear order M was set to 3, which is sufficient for studying the wave evolutions caused by the third-order wave nonlinearity [32]. To follow the experimental study in [28], four realizations with initial random phases were performed for each spreading coefficient ck. Each realization produced a 1200 s wave time series and took up approximately 28 h of CPU time (about 2.63 s per HOS step). The time scale was O(ε−4).
Figure 9 displays the wave profiles at t/T = 512.5 for ck = 200 and 24. Due to the large number of waves, it was difficult to show the entire calculation domain, so the wave profiles are presented in discontinuous coordinates. As the value of ck decreased, the wave trains became more directional.
The exceedance distribution functions of the wave height from our numerical results were compared with those of the experiment in [32] at x/L = 3.1, 15.9, and 28.7, as shown in Figure 10. The numerical results showed a high degree of consistency with the experimental results in [32], which highlights the feasibility of using 3D directional wave simulations over a large time scale O(ε−4).
In order to quantitatively compare the numerical results of the exceedance distribution functions (marked as rn) with the experimental results in [28] (marked as re), we defined the deviation ratio as (rnre)/re. Since the numerical data were denser than the experimental data and the x-coordinates of these two datasets were not equal, we linearly interpolated the numerical results to match the x-coordinates of the experimental data. The deviation ratio is presented in Figure 11. It was observed that when H/Hs ≤ 1.0, the numerical results were highly consistent with the experimental results. However, as H/Hs increased, the deviation began to broaden and became significant after H/Hs = 1.5.

4. Discussion and Conclusions

This study presents a highly efficient numerical wave tank solver, which is the result of the collective efforts of [45,46,49,50] on the HOS method, the relaxation idea introduced by [53], and the modern CUDA toolkit for GPU speedup. The GPU-accelerated version of our solver, NWS-CU, reduced the CPU time consumption by up to 16-fold compared to the non-speedup version, NWS-B. This remarkable improvement in efficiency demonstrates the power of our solver in modeling 3D stochastic oceanic waves. Additionally, our solver is well suited for direct simulations of directional waves on large scales, thanks to the inclusion of the RK8 scheme, which significantly reduces temporal accumulation errors. After interpreting the numerical results in Section 3, we will now proceed to discuss some aspects of our study.
Firstly, in [32], the speedup of the HOS method was achieved through MPI, which requires massively parallel HPC platforms and is limited to short time scales of O(ε−2). In contrast, our trial of GPU speedup for the HOS method in this study only requires NVIDIA GPUs with moderate or high performance, making it a more cost-effective solution for parallel processing. The impressive performance of the GPU speedup in our study was also confirmed by a recent study on nonlinear wave simulations [69]. Furthermore, the relaxation module in our solver consumed less than 5% of the total CPU time in NWS-B and less than 1% of the total CPU time in NWS-CU. Therefore, the wave generations and eliminations by the relaxation module have a negligible impact on computational efforts. Compared to the additional potential method, which doubles the magnitude of computational efforts [50], the relaxation method is a lower-cost computational method.
Secondly, the previous literature on HOS-type models has discussed convergence in terms of absolute values of the grid number, such as in [32,50]. In this study, we defined the grid number index npL to replace the absolute values of the grid number, which associate the modal convergence with both the grid number and wave parameters. The convergence condition is npL ≥ 20 and can be referenced by other HOS-type models.
Thirdly, while automated step size control is possible in embedded Runge–Kutta formulas [62], we did not use this process in our numerical model. This is because wave profiles are modified on each timestep by the relaxation technique for wave generation and elimination, which breaks the continuality of solving Equations (14) and (15). As a result, automatic step size control fails to output results efficiently. Instead, we defined the timestep index npt for a constant step size, and the convergence condition is npt ≥ 20.
Fourthly, the accuracy of the modeling of wave nonlinearities was validated by the qualified results of the Stokes waves for ε ≤ 0.2. Meanwhile, the qualified results of the linear oblique waves demonstrate the effectiveness and stability of our solver in simulating 3D wave events over a large time scale O(ε−4). The results of the unidirectional irregular waves were closely approximate to those produced by HOS-NWT, which has been validated in [50] at a moderate steepness, demonstrating the accuracy of our model in modeling irregular waves. Furthermore, the numerical results of the exceedance distribution functions of wave heights from directional wave simulations over the large time scale of O(ε−4) were fairly consistent with the experimental results in [28]. This indicates that our solver has potential value in modeling directional wave evolutions over a large time scale. Specifically, the numerical results were highly consistent with the experimental results when H/Hs ≤ 1.0, but significant deviations between the numerical and experimental results emerged after H/Hs = 1.5. The deviation may be due to the linear mechanism of wave generation in the relaxation regions, which will be improved in our future work.
To the best of our knowledge, this is the first attempt to simulate directional waves directly over such a large time scale. In our modified numerical wave tank, we will conduct further research on the nonlinear evolution of directional waves over large time scales.

Author Contributions

Conceptualization, N.Z.; Methodology, Z.Z.; Software, Z.Z.; Supervision, N.Z.; Validation, Z.Z.; Writing—original draft, Z.Z.; Writing—review and editing, Z.Z. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Kharif, C.; Pelinovsky, E. Physical mechanisms of the rogue wave phenomenon. Eur. J. Mech. B-Fluids 2003, 22, 603–634. [Google Scholar] [CrossRef]
  2. Dysthe, K.; Krogstad, H.E.; Müller, P. Oceanic rogue waves. Annu. Rev. Fluid Mech. 2008, 40, 287–310. [Google Scholar] [CrossRef]
  3. Slunyaev, A.; Didenkulova, I.; Pelinovsky, E. Rogue waters. Contemp. Phys. 2011, 52, 571–590. [Google Scholar] [CrossRef]
  4. Onorato, M.; Residori, S.; Bortolozzo, U.; Montina, A.; Arecchi, F.T. Rogue waves and their generating mechanisms in different physical contexts. Phys. Rep.-Rev. Sec. Phys. Lett. 2013, 528, 47–89. [Google Scholar] [CrossRef]
  5. Longuet-Higgins, M.S. The Statistical Analysis of a Random, Moving Surface. Philos. Trans. R. Soc. Lond. Ser. A-Math. Phys. Sci. 1957, 249, 321–387. [Google Scholar]
  6. Alber, I.E. Effects of randomness on stability of 2-dimensional surface wavetrains. Proc. R. Soc. Lond. Ser. A-Math. Phys. Sci. 1978, 363, 525–546. [Google Scholar]
  7. Benjamin, T.B.; Feir, J.E. The disintegration of wave trains on deep water Part 1. Theory. J. Fluid Mech. 1967, 27, 417–430. [Google Scholar] [CrossRef]
  8. Zakharov, V.E. Stability of periodic waves of finite amplitude on the surface of a deep fluid. J. Appl. Mech. Tech. Phys. 1968, 9, 190–194. [Google Scholar] [CrossRef]
  9. Zakharov, V.E.; Ostrovsky, L.A. Modulation instability: The beginning. Phys. D-Nonlinear Phenom. 2009, 238, 540–548. [Google Scholar] [CrossRef]
  10. Annenkov, S.Y.; Shrira, V.I. “Fast” Nonlinear Evolution in Wave Turbulence. Phys. Rev. Lett. 2009, 102, 024502. [Google Scholar] [CrossRef]
  11. Janssen, P.A.E.M. Nonlinear four-wave interactions and freak waves. J. Phys. Oceanogr. 2003, 33, 863–884. [Google Scholar] [CrossRef]
  12. Hasselmann, K. On the non-linear energy transfer in a gravity-wave spectrum Part 1. General theory. J. Fluid Mech. 1962, 12, 481–500. [Google Scholar] [CrossRef]
  13. Onorato, M.; Osborne, A.R.; Serio, M.; Bertone, S. Freak waves in random oceanic sea states. Phys. Rev. Lett. 2001, 86, 5831–5834. [Google Scholar] [CrossRef]
  14. Islas, A.L.; Schober, C.M. Predicting rogue waves in random oceanic sea states. Phys. Fluids 2005, 17, 031701. [Google Scholar] [CrossRef]
  15. Zakharov, V.E.; Dyachenko, A.I.; Prokofiev, A.O. Freak waves as nonlinear stage of Stokes wave modulation instability. Eur. J. Mech. B-Fluids 2006, 25, 677–692. [Google Scholar] [CrossRef]
  16. Fedele, F.; Cherneva, Z.; Tayfun, M.A.; Guedes Soares, C. Nonlinear Schrödinger invariants and wave statistics. Phys. Fluids 2010, 22, 036601. [Google Scholar] [CrossRef]
  17. Shemer, L.; Sergeeva, A.; Slunyaev, A. Applicability of envelope model equations for simulation of narrow-spectrum unidirectional random wave field evolution: Experimental validation. Phys. Fluids 2010, 22, 016601. [Google Scholar] [CrossRef]
  18. Mori, N.; Yasuda, T. Effects of high-order nonlinear interactions on unidirectional wave trains. Ocean Eng. 2002, 29, 1233–1245. [Google Scholar] [CrossRef]
  19. Clamond, D.; Francius, M.; Grue, J.; Kharif, C. Long time interaction of envelope solitons and freak wave formations. Eur. J. Mech. B-Fluids 2006, 25, 536–553. [Google Scholar] [CrossRef]
  20. Toffoli, A.; Onorato, M.; Bitner-Gregersen, E.; Osborne, A.R.; Babanin, A.V. Surface gravity waves from direct numerical simulations of the Euler equations: A comparison with second-order theory. Ocean Eng. 2008, 35, 367–379. [Google Scholar] [CrossRef]
  21. Toffoli, A.; Benoit, M.; Onorato, M.; Bitner-Gregersen, E.M. The effect of third-order nonlinearity on statistical properties of random directional waves in finite depth. Nonlinear Process. Geophys. 2009, 16, 131–139. [Google Scholar] [CrossRef]
  22. Zhou, Z.; Zhang, N.; Huang, G. A Numerical Study on the Evolution of Random Seas With the Occurrence of Rogue Waves. J. Offshore Mech. Arct. Eng. 2021, 143, 051203. [Google Scholar] [CrossRef]
  23. Onorato, M.; Osborne, A.R.; Serio, M.; Cavaleri, L.; Brandini, C.; Stansberg, C.T. Extreme waves, modulational instability and second order theory: Wave flume experiments on irregular waves. Eur. J. Mech. B-Fluids 2006, 25, 586–601. [Google Scholar] [CrossRef]
  24. Mori, N.; Onorato, M.; Janssen, P.; Osborne, A.R.; Serio, M. On the extreme statistics of long-crested deep water waves: Theory and experiments. J. Geophys. Res.-Ocean. 2007, 112, C09011. [Google Scholar] [CrossRef]
  25. Cherneva, Z.; Tayfun, M.A.; Soares, C.G. Statistics of nonlinear waves generated in an offshore wave basin. J. Geophys. Res.-Ocean. 2009, 114, C08005. [Google Scholar] [CrossRef]
  26. Shemer, L.; Sergeeva, A.; Liberzon, D. Effect of the initial spectrum on the spatial evolution of statistics of unidirectional nonlinear random waves. J. Geophys. Res.-Ocean. 2010, 115, C12039. [Google Scholar] [CrossRef]
  27. Waseda, T.; Kinoshita, T.; Tamura, H. Evolution of a Random Directional Wave and Freak Wave Occurrence. J. Phys. Oceanogr. 2009, 39, 621–639. [Google Scholar] [CrossRef]
  28. Onorato, M.; Cavaleri, L.; Fouques, S.; Gramstad, O.; Janssen, P.A.E.M.; Monbaliu, J.; Osborne, A.R.; Pakozdi, C.; Serio, M.; Stansberg, C.T.; et al. Statistical properties of mechanically generated surface gravity waves: A laboratory experiment in a three-dimensional wave basin. J. Fluid Mech. 2009, 627, 235–257. [Google Scholar] [CrossRef]
  29. Onorato, M.; Osborne, A.R.; Serio, M. Extreme wave events in directional, random oceanic sea states. Phys. Fluids 2002, 14, L25–L28. [Google Scholar] [CrossRef]
  30. Socquet-Juglard, H.; Dysthe, K.; Trulsen, K.; Krogstad, H.E.; Liu, J.D. Probability distributions of surface gravity waves during spectral changes. J. Fluid Mech. 2005, 542, 195–216. [Google Scholar] [CrossRef]
  31. Toffoli, A.; Gramstad, O.; Trulsen, K.; Monbaliu, J.; Bitner-Gregersen, E.; Onorato, M. Evolution of weakly nonlinear random directional waves: Laboratory experiments and numerical simulations. J. Fluid Mech. 2010, 664, 313–336. [Google Scholar] [CrossRef]
  32. Xiao, W.T.; Liu, Y.M.; Wu, G.Y.; Yue, D.K.P. Rogue wave occurrence and dynamics by direct simulations of nonlinear wave-field evolution. J. Fluid Mech. 2013, 720, 357–392. [Google Scholar] [CrossRef]
  33. Fujimoto, W.; Waseda, T.; Webb, A. Impact of the four-wave quasi-resonance on freak wave shapes in the ocean. Ocean Dyn. 2019, 69, 101–121. [Google Scholar] [CrossRef]
  34. Slunyaev, A.; Kokorina, A. Numerical Simulation of the Sea Surface Rogue Waves within the Framework of the Potential Euler Equations. Izv. Atmos. Ocean. Phys. 2020, 56, 179–190. [Google Scholar] [CrossRef]
  35. Benetazzo, A.; Barbariol, F.; Bergamasco, F.; Torsello, A.; Carniel, S.; Sclavo, M. Observation of Extreme Sea Waves in a Space-Time Ensemble. J. Phys. Oceanogr. 2015, 45, 2261–2275. [Google Scholar] [CrossRef]
  36. Fedele, F.; Brennan, J.; de Leon, S.P.; Dudley, J.; Dias, F. Real world ocean rogue waves explained without the modulational instability. Sci. Rep. 2016, 6, 27715. [Google Scholar] [CrossRef]
  37. Hammack, J.L.; Henderson, D.M. Resonant Interactions Among Surface Water Waves. Annu. Rev. Fluid Mech. 1993, 25, 55–97. [Google Scholar] [CrossRef]
  38. Hasselmann, S.; Hasselmann, K. Computations and parameterizations of the nonlinear energy transfer in a gravity-wave spectrum. Part 1: A new method for efficient computations of the exact nonlinear transfer integral. J. Phys. Oceanogr. 1985, 15, 1369–1377. [Google Scholar] [CrossRef]
  39. Craig, W.; Sulem, C. Numerical simulation of gravity waves. J. Comput. Phys. 1993, 108, 73–83. [Google Scholar] [CrossRef]
  40. Bateman, W.J.D.; Swan, C.; Taylor, P.H. On the efficient numerical simulation of directionally spread surface water waves. J. Comput. Phys. 2001, 174, 277–305. [Google Scholar] [CrossRef]
  41. Gibbs, R.H.; Taylor, P.H. Formation of walls of water in ‘fully’ nonlinear simulations. Appl. Ocean Res. 2005, 27, 142–157. [Google Scholar] [CrossRef]
  42. Xu, L.; Guyenne, P. Numerical simulation of three-dimensional nonlinear water waves. J. Comput. Phys. 2009, 228, 8446–8466. [Google Scholar] [CrossRef]
  43. Zakharov, V.E.; Dyachenko, A.I.; Vasilyev, O.A. New method for numerical simulation of a nonstationary potential flow of incompressible fluid with a free surface. Eur. J. Mech.-B/Fluids 2002, 21, 283–291. [Google Scholar] [CrossRef]
  44. Dysthe, K.B.; Trulsen, K.; Krogstad, H.E.; Socquet-Juglard, H. Evolution of a narrow-band spectrum of random surface gravity waves. J. Fluid Mech. 2003, 478, 1–10. [Google Scholar] [CrossRef]
  45. Dommermuth, D.G.; Yue, D.K.P. A high-order spectral method for the study of nonlinear gravity waves. J. Fluid Mech. 1987, 184, 267–288. [Google Scholar] [CrossRef]
  46. West, B.J.; Brueckner, K.A.; Janda, R.S.; Milder, D.M.; Milton, R.L. A new numerical method for surface hydrodynamics. J. Geophys. Res.-Ocean. 1987, 92, 11803–11824. [Google Scholar] [CrossRef]
  47. Guyenne, P.; Kairzhan, A.; Sulem, C. Hamiltonian Dysthe Equation for Three-Dimensional Deep-Water Gravity Waves. Multiscale Model. Simul. 2022, 20, 349–378. [Google Scholar] [CrossRef]
  48. Agnon, Y.; Bingham, H.B. A non-periodic spectral method with application to nonlinear water waves. Eur. J. Mech.-B/Fluids 1999, 18, 527–534. [Google Scholar] [CrossRef]
  49. Bonnefoy, F.; Le Touze, D.; Ferrant, P. A fully-spectral 3D time-domain model for second-order simulation of wavetank experiments. Part A: Formulation, implementation and numerical properties. Appl. Ocean Res. 2006, 28, 33–43. [Google Scholar] [CrossRef]
  50. Ducrozet, G.; Bonnefoy, F.; Le Touze, D.; Ferrant, P. A modified High-Order Spectral method for wavemaker modeling in a numerical wave tank. Eur. J. Mech. B-Fluids 2012, 34, 19–34. [Google Scholar] [CrossRef]
  51. Sulisz, W.; Paprota, M. Generation and propagation of transient nonlinear waves in a wave flume. Coast. Eng. 2008, 55, 277–287. [Google Scholar] [CrossRef]
  52. Paprota, M.; Sulisz, W. Particle trajectories and mass transport under mechanically generated nonlinear water waves. Phys. Fluids 2018, 30, 102101. [Google Scholar] [CrossRef]
  53. Jacobsen, N.G.; Fuhrman, D.R.; Fredsoe, J. A wave generation toolbox for the open-source CFD library: OpenFoam (R). Int. J. Numer. Methods Fluids 2012, 70, 1073–1088. [Google Scholar] [CrossRef]
  54. Mei, C.C.; Stiassnie, M.; Yue, D.K.P. Theory and Applications Of Ocean Surface Waves; World Scientific Publishing: Singapore, 2005; Volume 23, p. 1071. [Google Scholar]
  55. Eidelman, Y.; Milman, V.; Tsolomitis, A. Functional Analysis: An Introduction; American Mathematical Society: Providence, RI, USA, 2004; Volume 66, p. 322. [Google Scholar]
  56. Canuto, C.; Hussaini, M.Y.; Quarteroni, A.; Zang, T.A. Spectral Methods: Fundamentals in Single Domains; Springer: Berlin/Heidelberg, Germany, 2006; p. 563. [Google Scholar]
  57. Press, W.H.; Teukolsky, S.A.; Vetterling, W.T.; Flannery, B.P. Numerical Recipes: The Art of Scientific Computing, 3rd ed.; Cambridge University Press: New York, NY, USA, 2007; p. 1235. [Google Scholar]
  58. Guyenne, P.; Nicholls, D.P. A High-Order Spectral Method for Nonlinear Water Waves over Moving Bottom Topography. SIAM J. Sci. Comput. 2008, 30, 81–101. [Google Scholar] [CrossRef]
  59. Mayer, S.; Garapon, A.; Sørensen, L.S. A fractional step method for unsteady free-surface flow with applications to non-linear wave dynamics. Int. J. Numer. Methods Fluids 1998, 28, 293–315. [Google Scholar] [CrossRef]
  60. Barstow, S.F.; Bidlot, J.R.; Caires, S.; Donelan, M.A.; Drennan, W.M.; Dupuis, H.; Graber, H.C.; Green, J.J.; Gronlie, O.; Guérin, C.; et al. Measuring and Analysing the Directional Spectra of Ocean Waves; Hauser, D., Kahma, K., Krogstad, H.E., Lehner, S., Monbaliu, J.A.J., Wyatt, L.R., Eds.; COST Action 714, EUR 21367; Office for Official Publications of the European Communities: Luxembourg, 2005; p. 465. [Google Scholar]
  61. Latheef, M.; Swan, C.; Spinneken, J. A laboratory study of nonlinear changes in the directionality of extreme seas. Proc. R. Soc. A-Math. Phys. Eng. Sci. 2017, 473, 20160290. [Google Scholar] [CrossRef]
  62. Hairer, E.; Nørsett, S.P.; Wanner, G. Solving Ordinary Differential Equations I: Nonstiff Problems, 2nd ed.; Springer: Berlin/Heidelberg, Germany, 1993; p. 528. [Google Scholar]
  63. Slunyaev, A.; Kokorina, A. Account of Occasional Wave Breaking in Numerical Simulations of Irregular Water Waves in the Focus of the Rogue Wave Problem. Water Waves 2020, 2, 243–262. [Google Scholar] [CrossRef]
  64. Seiffert, B.R.; Ducrozet, G.; Bonnefoy, F. Simulation of breaking waves using the high-order spectral method with laboratory experiments: Wave-breaking onset. Ocean Model. 2017, 119, 94–104. [Google Scholar] [CrossRef]
  65. Seiffert, B.R.; Ducrozet, G. Simulation of breaking waves using the high-order spectral method with laboratory experiments: Wave-breaking energy dissipation. Ocean Dyn. 2018, 68, 65–89. [Google Scholar] [CrossRef]
  66. Dommermuth, D. The initialization of nonlinear waves using an adjustment scheme. Wave Motion 2000, 32, 307–317. [Google Scholar] [CrossRef]
  67. Fenton, J.D. A fifth-order Stokes theory for steady waves. J. Waterw. Port Coast. Ocean Eng. 1985, 111, 216–234. [Google Scholar] [CrossRef]
  68. Goda, Y. Random Seas and Design of Maritime Structures; World Scientific Publishing: Singapore, 2000; p. 461. [Google Scholar]
  69. Paprota, M.; Sulisz, W. Improving performance of a semi-analytical model for nonlinear water waves. J. Hydro-Environ. Res. 2019, 22, 38–49. [Google Scholar] [CrossRef]
Figure 1. Sketch of the computation domain, which includes the inlet relaxation region oabe, the outlet relaxation region ifjk, and the lateral relaxation regions cbfg and edhi (only effective for oblique or directional waves).
Figure 1. Sketch of the computation domain, which includes the inlet relaxation region oabe, the outlet relaxation region ifjk, and the lateral relaxation regions cbfg and edhi (only effective for oblique or directional waves).
Jmse 11 02078 g001
Figure 2. Comparison of NWS-B (square) and NWS-CU (triangle) in model efficiency: (a) CPU time per HOS step for varied grid number N; (b) speedup of NWS-CU compared with NWS-B.
Figure 2. Comparison of NWS-B (square) and NWS-CU (triangle) in model efficiency: (a) CPU time per HOS step for varied grid number N; (b) speedup of NWS-CU compared with NWS-B.
Jmse 11 02078 g002
Figure 3. Surface elevations for npt = 20 (solid circle), 30 (hollow circle), and 40 (solid triangle) at different locations.
Figure 3. Surface elevations for npt = 20 (solid circle), 30 (hollow circle), and 40 (solid triangle) at different locations.
Jmse 11 02078 g003
Figure 4. Surface elevations for npL = 10 (dot line), 20 (dash-dot line), and 40 (solid line) at different locations.
Figure 4. Surface elevations for npL = 10 (dot line), 20 (dash-dot line), and 40 (solid line) at different locations.
Jmse 11 02078 g004
Figure 5. Numerical results (purple point) compared with the Stokes 5th solution (dot line) where Stokes 1st solution (solid line), Stokes 2nd solution (dash line), and Stokes 3rd (short dash line) are listed for reference.
Figure 5. Numerical results (purple point) compared with the Stokes 5th solution (dot line) where Stokes 1st solution (solid line), Stokes 2nd solution (dash line), and Stokes 3rd (short dash line) are listed for reference.
Jmse 11 02078 g005
Figure 6. Numerical results of linear oblique wave profiles at t/T = 500.0 for different oblique angles.
Figure 6. Numerical results of linear oblique wave profiles at t/T = 500.0 for different oblique angles.
Jmse 11 02078 g006
Figure 7. Time series of wave surfaces modeled by HOS-NWT (black line) and NWS-B (red line) for different significant wave steepness.
Figure 7. Time series of wave surfaces modeled by HOS-NWT (black line) and NWS-B (red line) for different significant wave steepness.
Jmse 11 02078 g007
Figure 8. (a) Averaged significant wave heights for NWS-B (red bar) and HOS-NWT (blue bar) along varied significant wave steepness ε; (b) wave spectra for HOS-NWT with ε = 0.04 (black line), HOS-NWT with ε = 0.08 (red line), HOS-NWT with ε = 0.12 (blue line), NWS-B with ε = 0.04 (black dot–dash line), NWS-B with ε = 0.08 (red dot–dash line), and NWS-B with ε = 0.12 (blue dot–dash line).
Figure 8. (a) Averaged significant wave heights for NWS-B (red bar) and HOS-NWT (blue bar) along varied significant wave steepness ε; (b) wave spectra for HOS-NWT with ε = 0.04 (black line), HOS-NWT with ε = 0.08 (red line), HOS-NWT with ε = 0.12 (blue line), NWS-B with ε = 0.04 (black dot–dash line), NWS-B with ε = 0.08 (red dot–dash line), and NWS-B with ε = 0.12 (blue dot–dash line).
Jmse 11 02078 g008
Figure 9. Numerical results of directional wave profiles at t/T = 512.5 for different directional spreading coefficients.
Figure 9. Numerical results of directional wave profiles at t/T = 512.5 for different directional spreading coefficients.
Jmse 11 02078 g009
Figure 10. Exceedance distribution function (EDF) of the wave height of numerical results compared with experiments in [28], wherein Rayleigh expectation (solid line), numerical results at x/L = 3.1 (solid square), numerical results at x/L = 15.9 (solid circle), numerical results at x/L = 28.7 (solid triangle), experimental results at x/L = 3.1 (hollow square), experimental results at x/L = 15.9 (hollow circle), and experimental results at x/L = 28.7 (hollow triangle) are shown.
Figure 10. Exceedance distribution function (EDF) of the wave height of numerical results compared with experiments in [28], wherein Rayleigh expectation (solid line), numerical results at x/L = 3.1 (solid square), numerical results at x/L = 15.9 (solid circle), numerical results at x/L = 28.7 (solid triangle), experimental results at x/L = 3.1 (hollow square), experimental results at x/L = 15.9 (hollow circle), and experimental results at x/L = 28.7 (hollow triangle) are shown.
Jmse 11 02078 g010
Figure 11. The deviation ratio between the numerical results and experimental results [28].
Figure 11. The deviation ratio between the numerical results and experimental results [28].
Jmse 11 02078 g011
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zhou, Z.; Zhang, N. A Graphic Processing Unit–High-Order Spectral (GPU-HOS) Numerical Wave Tank for the Simulation of Directional Wave Field Evolution over a Long Time. J. Mar. Sci. Eng. 2023, 11, 2078. https://doi.org/10.3390/jmse11112078

AMA Style

Zhou Z, Zhang N. A Graphic Processing Unit–High-Order Spectral (GPU-HOS) Numerical Wave Tank for the Simulation of Directional Wave Field Evolution over a Long Time. Journal of Marine Science and Engineering. 2023; 11(11):2078. https://doi.org/10.3390/jmse11112078

Chicago/Turabian Style

Zhou, Zhuowei, and Ningchuan Zhang. 2023. "A Graphic Processing Unit–High-Order Spectral (GPU-HOS) Numerical Wave Tank for the Simulation of Directional Wave Field Evolution over a Long Time" Journal of Marine Science and Engineering 11, no. 11: 2078. https://doi.org/10.3390/jmse11112078

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop