Solitary Water Wave

Solitary gravity wave solution of the free surface Euler equations
1,3K téléchargements
Mise à jour 5 mars 2014

Afficher la licence

Computes the steady irrotational surface solitary gravity wave solution of the Euler equations (homogeneous, incompressible and perfect fluids). The wave is defined by its Froude number Fr and the result is about fifteen digits accurate. The method works for all but the highest waves, i.e. for all amplitude/depth ratio less than 0.796.
SYNOPSIS:
SolitaryGravityWave(Fr,[],1); % plot results only
[zs,ws,fs,SWP] = SolitaryGravityWave(Fr); % output results at the surface and parameters
[zs,ws,fs,SWP,W,F,P,A] = SolitaryGravityWave(Fr,Z); % surface and bulk output
[zs,ws,fs,SWP,W,F,P,A] = SolitaryGravityWave(Fr,Z,1);

INPUT:
Fr : Froude number (must be a scalar).
Z : Complex abscissa where fields are desired inside the fluid (default Z = []).
Z should be strictly below the surface, i.e., -1 <= imag(Z) < eta(real(Z))
y = eta(x) being the equation of the free surface.
PF : Plot Flag. If PF=1 the final results are plotted, if PF~=1 nothing is plotted (default).

OUTPUT (dimensionless quantities):
zs : Complex abscissa at the surface, i.e., x + i*eta.
ws : Complex velocity at the surface, i.e., u - i*v.
fs : Complex potential at the surface, i.e., phi + i*psi.
SWP : Solitary Wave Parameters, i.e.
SWP(1) = wave amplitude, max(eta)
SWP(2) = wave mass
SWP(3) = circulation
SWP(4) = impulse
SWP(5) = kinetic energy
SWP(6) = potential energy
W : Complex velocity in the bulk at abscissas Z.
F : Complex potential in the bulk at abscissas Z.
P : Pressure in the bulk at abscissas Z.
A : Complex acceleration in the bulk at abscissas Z (A = dW / dt).

EXAMPLE:
zs=SolitaryGravityWave(1.25);
plot(real(zs),imag(zs))

Edit the m-file for more details and
look at the reprint:
http://hal.archives-ouvertes.fr/hal-00786077/

Citation pour cette source

Didier Clamond (2024). Solitary Water Wave (https://www.mathworks.com/matlabcentral/fileexchange/39189-solitary-water-wave), MATLAB Central File Exchange. Récupéré le .

Compatibilité avec les versions de MATLAB
Créé avec R2012a
Compatible avec toutes les versions
Plateformes compatibles
Windows macOS Linux
Catégories
En savoir plus sur Earth, Ocean, and Atmospheric Sciences dans Help Center et MATLAB Answers
Remerciements

A inspiré : Solitary capillary-gravity wave

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Publié le Notes de version
1.3.0.0

Added the file SolitaryGravityAmplitude.m for waves defined by amplitude instead of Froude number.

1.2.0.0

Corrected link to the reference

1.1.0.0

Added reference.

1.0.0.0