A Python implementation of nonlinear regular wave theories (Stokes 2nd to 5th order and Fenton stream function waves).
pip install raschii==1.0.4
Raschii is a Python library for constructing non-linear regular waves and is named after Thysanoessa raschii, the Arctic Krill.
Supported wave models are currently:
Raschii includes a command line program to plot regular waves from the suported wave models and C++ code generation for using the results in other programs, such as in FEniCS expressions for initial and boundary conditions in a FEM solver. There is also a limited Dart port which is used in the online demo.
Raschii can be installed by running:
python3 -m pip install raschii
This will also install dependencies like numpy.
An example of using Raschii from Python:
import raschii fwave = raschii.FentonWave(height=0.25, depth=0.5, length=2.0, N=20) print(fwave.surface_elevation(x=0)) print(fwave.surface_elevation(x=[0, 0.1, 0.2, 0.3])) print(fwave.velocity(x=0, z=0.2))
This will output:
[0.67352456] [0.67352456 0.61795882 0.57230232 0.53352878] [[0.27263788 0. ]]
The documentation can be found on Raschii's Read-the-Docs pages.
Raschii is developed in Python on Bitbucket by use of the Git version control system. If you are reading this on github, please be aware that you are seeing a mirror that could potentially be months out of date. All pull requests and issues should go to the Bitbucket repository.
Raschii is automatically tested on CircleCI and the current CI build status is .
Unreleased development version
Small bugfix release
The initial release of Raschii
Raschii is copyright Tormod Landet, 2018. Raschii is licensed under the Apache
2.0 license, a permissive free software license compatible with version 3 of
the GNU GPL. See the file LICENSE
for the details.