Global functions callable from C++ code.
More...
|
| subroutine | initwavefuncfromfile (fName, nWave, rSeed, rfunc, ierr) |
| | Initializes parameters for a wave function from given file. More...
|
| |
| subroutine | initwavefuncspectrum (iopW, nWave, nDir, sprExp, rSeed, rfunc, ierr) |
| | Initializes parameters for a wave function from a wave spectrum. More...
|
| |
| subroutine | initnonlinwavefunc (iopW, g, D, RFUNC, stat) |
| | Initializes parameters for a non-linear wave function. More...
|
| |
| subroutine | initembeddedwave (iopW, nWave, rSeed, g, D, ifunc, rfunc, ierr) |
| | Initializes parameters for an embedded non-linear wave function. More...
|
| |
| real(dp) function | waveprofile (iopW, ldi, ldr, nWave, nDir, ifunc, rfunc, g, d, x, t) |
| | Evaluates a wave profile function. More...
|
| |
| subroutine | evalwave (iopW, ldi, ldr, nWave, nDir, ifunc, rfunc, g, d, x, t, h, v, a) |
| | Evaluates a wave profile. More...
|
| |
Global functions callable from C++ code.
This file contains global function wrappers of subroutines in wavefunctionsmodule, such that they can be invoked from C++ or python.
◆ evalwave()
| subroutine evalwave |
( |
integer, intent(in) |
iopW, |
|
|
integer, intent(in) |
ldi, |
|
|
integer, intent(in) |
ldr, |
|
|
integer, intent(in) |
nWave, |
|
|
|
nDir, |
|
|
integer, dimension(ldi), intent(in) |
ifunc, |
|
|
real(dp), dimension(ldr,nwave,ndir), intent(in) |
rfunc, |
|
|
real(dp), intent(in) |
g, |
|
|
real(dp), intent(in) |
d, |
|
|
real(dp), dimension(3), intent(in) |
x, |
|
|
real(dp), intent(in) |
t, |
|
|
real(dp), intent(out) |
h, |
|
|
real(dp), dimension(3), intent(out) |
v, |
|
|
real(dp), dimension(3), intent(out) |
a |
|
) |
| |
Evaluates a wave profile.
- Parameters
-
| [in] | iopW | Wave model option |
| [in] | ldi | Number of integer parameters |
| [in] | ldr | Number of real parameters per wave component |
| [in] | nWave | Number of wave components |
| [in] | nDir | Number of wave directions |
| [in] | ifunc | Integer wave function parameters |
| [in] | rfunc | Real wave function parameters |
| [in] | g | Gravity constant |
| [in] | d | Water depth |
| [in] | x | Position to evaluate wave profile at |
| [in] | t | Time to evaluate wave profile at |
| [out] | h | Wave elevation |
| [out] | v | Water particle velocity |
| [out] | a | Water particle acceleration |
◆ initembeddedwave()
| subroutine initembeddedwave |
( |
integer, intent(in) |
iopW, |
|
|
integer, intent(in) |
nWave, |
|
|
integer, intent(in) |
rSeed, |
|
|
real(dp), intent(in) |
g, |
|
|
real(dp), intent(in) |
D, |
|
|
integer, dimension(*), intent(inout) |
ifunc, |
|
|
real(dp), dimension(*), intent(inout) |
rfunc, |
|
|
integer, intent(out) |
ierr |
|
) |
| |
Initializes parameters for an embedded non-linear wave function.
- Parameters
-
| [in] | iopW | Wave model option |
| [in] | nWave | Number of wave components |
| [in] | rSeed | Seed for (pseudo-)random phase shift |
| [in] | g | Gravity constant |
| [in] | D | Water depth |
| ifunc | Integer wave function parameters |
| rfunc | Real wave function parameters |
| [out] | ierr | Error flag |
◆ initnonlinwavefunc()
| subroutine initnonlinwavefunc |
( |
integer, intent(in) |
iopW, |
|
|
real(dp), intent(in) |
g, |
|
|
real(dp), intent(in) |
D, |
|
|
real(dp), dimension(*), intent(inout) |
RFUNC, |
|
|
integer, intent(out) |
stat |
|
) |
| |
Initializes parameters for a non-linear wave function.
- Parameters
-
| [in] | iopW | Wave model option |
| [in] | g | Gravity constant |
| [in] | D | Water depth |
| RFUNC | Wave function parameters |
| [out] | stat | Error flag |
◆ initwavefuncfromfile()
| subroutine initwavefuncfromfile |
( |
character(len=*), intent(in) |
fName, |
|
|
integer, intent(in) |
nWave, |
|
|
integer, intent(in) |
rSeed, |
|
|
real(dp), dimension(3,nwave), intent(out) |
rfunc, |
|
|
integer, intent(out) |
ierr |
|
) |
| |
Initializes parameters for a wave function from given file.
- Parameters
-
| [in] | fName | Name of file to read parameters from |
| [in] | nWave | Number of wave components to read |
| [in] | rSeed | Seed for (pseudo-)random phase shift |
| [out] | rfunc | Wave function parameters (amplitude, frequency, ...) |
| [out] | ierr | Error flag |
◆ initwavefuncspectrum()
| subroutine initwavefuncspectrum |
( |
integer, intent(in) |
iopW, |
|
|
integer, intent(in) |
nWave, |
|
|
integer, intent(in) |
nDir, |
|
|
integer, intent(in) |
sprExp, |
|
|
integer, intent(in) |
rSeed, |
|
|
real(dp), dimension(3,nwave*ndir), intent(inout) |
rfunc, |
|
|
integer, intent(out) |
ierr |
|
) |
| |
Initializes parameters for a wave function from a wave spectrum.
- Parameters
-
| [in] | iopW | Wave spectrum model |
| [in] | nWave | Number of wave components to generate |
| [in] | nDir | Number of wave directions (for iopW > 4 only) |
| [in] | sprExp | Wave spreading exponent (for iopW > 4 and nDir > 1) |
| [in] | rSeed | Seed for (pseudo-)random phase shift |
| [out] | rfunc | Wave function parameters (amplitude, frequency, ...) |
| [out] | ierr | Error flag |
◆ waveprofile()
| real(dp) function waveprofile |
( |
integer, intent(in) |
iopW, |
|
|
integer, intent(in) |
ldi, |
|
|
integer, intent(in) |
ldr, |
|
|
integer, intent(in) |
nWave, |
|
|
|
nDir, |
|
|
integer, dimension(ldi), intent(in) |
ifunc, |
|
|
real(dp), dimension(ldr,nwave,ndir), intent(in) |
rfunc, |
|
|
real(dp), intent(in) |
g, |
|
|
real(dp), intent(in) |
d, |
|
|
real(dp), dimension(3), intent(in) |
x, |
|
|
real(dp), intent(in) |
t |
|
) |
| |
Evaluates a wave profile function.
- Parameters
-
| [in] | iopW | Wave model option |
| [in] | ldi | Number of integer parameters |
| [in] | ldr | Number of real parameters per wave component |
| [in] | nWave | Number of wave components |
| [in] | nDir | Number of wave directions |
| [in] | ifunc | Integer wave function parameters |
| [in] | rfunc | Real wave function parameters |
| [in] | g | Gravity constant |
| [in] | d | Water depth |
| [in] | x | Position to evaluate wave profile at |
| [in] | t | Time to evaluate wave profile at |
- Returns
- Wave elevation