Wave-maker specification¶
SPECIFICATION OF WAVEMAKER
For theory about the wavemaker, see Internal Wavemaker (traditional)
WAVEMAKER
: wavemaker type.WAVEMAKER = INI_REC
: initial rectangular humpneed
Xc,Yc
andWID
WAVEMAKER = LEF_SOL
: left boundary solitaryneed
AMP, DEP
, andLAGTIME
WAVEMAKER = INI_SOL
: initial solitary wave propagate in +x direction, WKN B solutionneed
AMP, DEP
, andXWAVEMAKER
WAVEMAKER = INI_OTH
: other initial distribution specified in the code by usersWAVEMAKER = WK_REG
: Wei and Kirby 1999 internal wave makerneed
Xc_WK, Yc_WK, Ywidth_WK, Tperiod, AMP_WK, DEP_WK, Theta_WK, and Time_ramp
(factor of period)
WAVEMAKER = WK_IRR
: Wei and Kirby 1999 TMA spectrum wavemaker (internal)need
Xc_WK, Yc_WK, Ywidth_WK, DEP_WK, Time_ramp, Delta_WK, FreqPeak, FreqMin,FreqMax, Hmo, GammaTMA
(default: 3.3 ),ThetaPeak
(default: 0.0),Nfreq
(default: 45),Ntheta
(default: 24),EqualEnergy
(ifTRUE
, this means that the frequency splitting is based on Equal-Energy, otherwise, based on Equal-Frequency space)
WAVEMAKER = JON_2D
: JONSWAP spectrum wavemaker (internal)need
Xc_WK, Yc_WK, Ywidth_WK, DEP_WK, Time_ramp, Delta_WK, FreqPeak, FreqMin,FreqMax, Hmo, GammaTMA
(default: 3.3 ),ThetaPeak
(default: 0.0),Nfreq
(default: 45),Ntheta
(default: 24)
WAVEMAKER = JON_1D
: JONSWAP 1D spectrum wavemaker (internal)need
Xc_WK, Yc_WK, Ywidth_WK, DEP_WK, Time_ramp, Delta_WK, FreqPeak, FreqMin, FreqMax, Hmo, GammaTMA
(default: 3.3 ),Nfreq
(default: 45)
WAVEMAKER = TMA_1D
: TMA 1D spectrum wavemaker (internal)need
Xc_WK, Yc_WK, Ywidth_WK, DEP_WK, Time_ramp, Delta_WK, FreqPeak, FreqMin, FreqMax, Hmo, GammaTMA
(Note, still use TMA Gamma, default: 3.3 ),Nfreq
(default: 45)
WAVEMAKER = WK_TIME_SERIES
:provide an fft of a time series to get each wave component, and then use Wei and Kirby’s (1999) wavemaker. For this internal wavemaker, the wave angle is zero (x direction) for all wave components. Need input
WaveCompFile
(including 3 columns:per, amp, pha
) andNumWaveComp, PeakPeriod, DEP_WK, Xc_WK, Ywidth_WK
WAVEMAKER = WK_DATA2D
: 2D directional spectrum data specified inWaveCompFile
. Internal wavemaker. NeedXc_WK, Yc_WK, DEP_WK, Delta_WK
.Format of
WaveCompFile
:62 35 - NumFreq NumDir 0.0925000011921 - PeakPeriod 0.0400 - Freq 0.0475 - Freq ... -0.05 - Dir (degree) 0.0 - Dir (degree) ... 0.01133044 0.00973217 ... (amplitude,m)
An example for preparing WaveCompFile can be found in /simple_cases/beach_2d/spectral_data/. It is a case which converts wave data from FRF to the model input. Run the matlab script mk_2d_1d_spec_frf.m to generate a file called wave2d_frf.txt. In input.txt, specify
WaveCompFile = ../spectral_data/MATLAB/wave2d_frf.txt
The read format in fortran:
OPEN(1,FILE=TRIM(WaveCompFile)) READ(1,*)NumFreq,NumDir ALLOCATE (Amp_Ser(NumFreq,NumDir), & Per_Ser(NumFreq),Theta_Ser(NumDir)) READ(1,*)PeakPeriod DO J=1,NumFreq READ(1,*)Per_Ser(J) ENDDO DO I=1,NumDir READ(1,*)Theta_Ser(I) ENDDO DO I=1,NumDir READ(1,*)(Amp_Ser(J,I),J=1,NumFreq) ENDDO ! you dont have to input phase info. The program will skip the phase info ! if there is no more data below Amp_Ser DO I=1,NumDir READ(1,*,END=110)(Phase_2D(J,I),J=1,NumFreq) ENDDO CLOSE(1)
WAVEMAKER = LEFT_BC_IRR
: Wavemaker at the left boundary (ghost cells). This type of wavemaker reflects waves at the left boundary. NeedWAVE_DATA_TYPE (DATA, TMA2D, JON2D, JON1D)
and other parameters as the same as in the internal wavemaker. Although it is an irregular wavemaker, it can generate regular waves usingWAVE_DATA_TYPE = DATA
by specifying a single wave component.WAVEMAKER = INI_GAUSSIAN or INI_GAU
: initial Gaussian hump. NeedAMP, Xc, Yc, and WID
.
Definitions:
WAVE_DATA_TYPE
: Type of wave data needed forLEFT_BC_IRR
WaveMaker. It can be DATA or other types used for internal wavemakers
AMP
: amplitude (m) of initial \(\eta\), ifWAVEMAKER = INI_REC, WAVEMAKER = INI_SOL, WAVEMAKER = LEF_SOL
.
DEP
: water depth at wavemaker location, ifWAVEMAKER = INI_SOL, WAVEMAKER = LEF_SOL
.
LAGTIME
, time lag (s) for the solitary wave generated on the left boundary, e.g.,WAVEMAKER = LEF_SOL
.
XWAVEMAKER
: x (m) coordinate forWAVEMAKER = INI_SOL
.
Xc
: x (m) coordinate of the center of a rectangular hump ifWAVEMAKER = INI_REC
.
Yc
: y (m) coordinate of the center of a rectangular hump ifWAVEMAKER = INI_REC
.
WID
: width (m) of a rectangular hump ifWAVEMAKER = INI_REC, or INI_GAU
.
Time_ramp
: time ramp (s) for Wei and Kirby (1999) wavemaker. Default: 0.0.
Delta_WK
: width parameter \(\delta\) for Wei and Kirby (1999) wavemaker. Need trial and error, usually, \(\delta\) = \(1.0 \sim 3.0\).
DEP_WK
: water depth (m) for Wei and Kirby (1999) wavemaker.
Xc_WK
: x coordinate (m) for Wei and Kirby (1999) wavemaker.
Yc_WK
: y coordinate (m) for Wei and Kirby (1999) wavemaker.
Ywidth_WK
: width (m) in y direction for Wei and Kirby (1999) wavemaker. Default: LARGE (999999.0).
Tperiod
: period (s) of regular wave for Wei and Kirby (1999) wavemaker.
AMP_WK
: amplitude (m) of regular wave for Wei and Kirby (1999) wavemaker.
Theta_WK
: direction (degrees) of regular wave for Wei and Kirby (1999) wavemaker. Note: it may be adjusted if a periodic boundary condition is used. A warning will be given if adjustment is made.
Nfreq
: number of frequency components. Default: 45.
Ntheta
: number of direction components. Default: 24.
FreqPeak
: peak frequency (1/s) for Wei and Kirby (1999) irregular wavemaker.
FreqMin
: low frequency cutoff (1/s) for Wei and Kirby (1999) irregular wavemaker.
FreqMax
: high frequency cutoff (1/s) for Wei and Kirby (1999) irregular wavemaker.
Hmo
: Hmo (m) for Wei and Kirby (1999) irregular wavemaker.
GammaTMA
: TMA parameter \(\gamma\) for Wei and Kirby (1999) irregular wavemaker.GammaTMA = 3.3
if JONSWAP is used.
ThetaPeak
: peak direction (degrees) for Wei and Kirby (1999) irregular wavemaker.
Sigma_Theta
: parameter of directional spectrum for Wei and Kirby (1999) irregular wavemaker.