Lawic solves large amplitude steady periodic water waves traveling on rotational flow. At present, it is distrbuted as an executable program with input parameters that can be changed.
![]() |
![]() |
---|---|
u<c | u>c |
Simply find the excutable file in the folder lawic-1.0.0-macos64/ for Apple user or in the folder lawic-1.0.0-win64/ for windows user and run lawic along with the input file params.dat. Parameters in the input file are self-explanatory. Note that two types of problems are solved respectively by setting:
- negative relative mass flux p0, and
- positive relative mass flux p0.
For the first case, nonzero vorticity is valid while for the second case the value of the vorticity will be taken as zero no matter what is provided in the input file. When solving the first type of problems, an output file named "fix_p0.txt" will be generated; when solving the second type of problems, a file named "large_u.txt" will be generated.
The output files can then be loaded and processed using the tools in the folder postproc/. There are two files in the folder:
- flow.py which is a class file with all the functions for postprocessing.
- fix_p0.py which is an example for using flow.py to load the data and use the functions for generating figures.
Under consideration is two-dimensional steady periodic traveling surface waves propagating over water of a finite depth. Flat bed is assumed. Both irrotational and rotational flows can be considered. In this version, only rotational flow with constant vorticity is solved. The motion of inviscid fluids under gravity is governed by Euler's equation with kinematic surface and dynamic boundary conditions at the surface and the kinematic boundary condition at the bed which is assumed to be impenetrable. For more on the mathematics and the proof of the existence of large amplitude wave solutions to this problem, refer to Ref. [5].
For solving large amplitude waves, the free surface problem is first transformed to a fixed boundary problem by using the Dubreril-Jacotin (DJ)transformation. Secondly, the rectangular domain is discretized and the equation is discretized using the finite difference method. Center difference is used at intermediate grid points and backward/forward finite difference is used at boundary points. The nonlinear algebriac equations are then solved using continuation method from the laminar flow solution to large amplitude waves close to waves with stagnation points. See Refs. [2-5] for details of the numerical methods.
Most of the relevant studies focus on the case of u<c and hence p0<0, while Ref. [6] has proved the existence of the water waves with u>c (p0>0) for irrotational flow. The solution of the latter problem is therefore also included.
The dataset for Ref. [1] is provided in the folder examples/largeu/, and the Figs. 3-8 in the paper can be generated using the script examples/fix_p0_largeu.py. The figures are saved in the folder examples/figs/.
- Chen, L. & Basu, B. (2019). Numerical investigations of two-dimensional irrotational water waves over finite-depth with uniform current. Applicable Analysis.
- Ko, J. & Strauss, W. (2008). Large-amplitude steady rotational water waves. European Journal of Mechanics / B Fluids, 27(2), 96-109.
- Amann, D. & Kalimeris, K. (2018). A numerical continuation approach for computing water waves of large wave height. European Journal of Mechanics / B Fluids, 67, 314-328.
- Constantin, A. & Strauss, W. (2004). Exact steady periodic water waves with vorticity. Communications on Pure Applied Mathematics, 57(4), 481-527.
- Constantin, A. (2011). Nonlinear water waves with applications to wave-current interactions and tsunamis, Vol. 81 of CMBS-NSF Reg. Conf. Ser. Appl. Math., SIAM Philadelphia.
- Basu, B. (2018). On the existence of two-dimensional irrotational water waves over finite depth with uniform current. Applicable Analysis, 97(14), 2523-2532.
This software is made public for research use only. It may be modified and redistributed under the terms of the GNU General Public License.
Dr. Lin Chen
Prof. Biswajit Basu