swiift.lib.dr

Find the root of dispersion relations.

Classes

FreeSurfaceSolver

Solve the dispersion relation of free surface waves.

Module Contents

class swiift.lib.dr.FreeSurfaceSolver

Solve the dispersion relation of free surface waves.

For a know wave frequency and constant water depth, solves for the wavenumbers.

alphas

Squared angular frequency scaled by gravity.

Type:

array_like

depth

Water depth, in m.

Type:

float

classmethod from_ocean(ocean, spectrum, gravity)

Build a solver from existing objects.

Parameters:
Return type:

FreeSurfaceSolver

compute_wavenumbers(real=True, n=None)

Compute wavenumbers.

Parameters:
  • real (bool) – Whether to look for real or complex wavenumbers. Only the former is implemented at the moment.

  • n (int | None) – Number of complex wavenumbers to solve for. Has no effect at the moment.

Returns:

Computed wavenumbers, in m^-1.

Return type:

np.ndarray

Raises:

NotImplementedError – If the parameter real is set to False.