swiift.api.spectra

Consistant implementations of usual spectral formulations.

Spectra are defined as function of the frequency. Definitions are taken from [1].

References

Classes

PiersonMoskowitz

Class encapsulating the Pierson--Moskowitz spectrum.

Bretschneider

Class encapsulating the Bretschneider spectrum.

JONSWAP

Class encapsulating the JONSWAP spectrum.

Module Contents

class swiift.api.spectra.PiersonMoskowitz

Bases: _PMFamily

Class encapsulating the Pierson–Moskowitz spectrum.

classmethod from_swh(swh, gravity)

Build a spectrum parameterised by the SWH.

Parameters:
  • swh (float) – Significant wave height, in m.

  • gravity (float) – Acceleration of gravity, in m s**-2.

Returns:

Initialised spectrum object.

Return type:

PiersonMoskowitz

classmethod from_peak_frequency(peak_frequency, gravity)

Build a spectrum parameterised by the peak frequency.

Parameters:
  • peak_frequency (float) – Peak frequency, in Hz.

  • gravity (float) – Acceleration of gravity, in m s^-2.

Returns:

Initialised spectrum object.

Return type:

PiersonMoskowitz

class swiift.api.spectra.Bretschneider

Bases: _PMFamily

Class encapsulating the Bretschneider spectrum.

classmethod from_peak_frequency_swh(peak_frequency, swh)

Build a spectrum parameterised by peak frequency and SWH.

Parameters:
  • peak_frequency (float) – Peak frequency, in Hz.

  • swh (float) – Significant wave height, in m.

Returns:

Initialised spectrum.

Return type:

Bretschneider

class swiift.api.spectra.JONSWAP

Bases: _UnimodalSpectrum

Class encapsulating the JONSWAP spectrum.

The JONSWAP spectrum modifies the PM spectrum by introducing a peak enhancement factor.

peakedness
Type:

float

_base_spectrum
Type:

PiersonMoskowitz

property peak_frequency: float

Peak frequency.

Returns:

Peak frequency, in Hz.

Return type:

float

swh()

Significant wave height.

The SWH is computed with a cubic approximation.

Returns:

Significant wave height, in m.

Return type:

float

classmethod from_parameters(peak_frequency, peakedness, gravity)

Build a spectrum.

Peak frequency and gravity are used to instantiate the underlying Pierson–Moskowitz spectrum, while peakedness is specific to the JONSWAP formulation.

Parameters:
  • peak_frequency (float) – Peak frequency, in Hz.

  • peakedness (float) – Peakedness (base of the peak enhancement factor).

  • gravity (float) – Acceleration of gravity, in m s^-2.

Returns:

Initialised spectrum.

Return type:

JONSWAP

density(frequency)

Spectral density as a function of frequency.

Parameters:

frequency (array_like) – Frequency at which to evaluate the density.

Returns:

density – The density in m^2 s.

Return type:

float or np.ndarray