Last updated on Sep 04, 2024.

netsse.analys.emep.emep#

netsse.analys.emep.emep(Sxyn, Hn, theta, fi, k, opt=None)#

Applies the Extended Maximum Entropy Principle (EMEP) method to reconstruct the directional spreading function based on the cross-power spectra of measured wave-induced responses.

Note

This implementation is based on the functions EMEP in the DIWASP toolbox and EMEM in the WAFO toolbox.

Parameters:
  • Sxyn (ndarray of shape (nf,m*m), where nf is the number of frequencies and m is the number of sensors) –

    Real and imaginary parts of the normalised cross-power spectral density:

    Sxyn(f,i) = Re(Smn(f)/(Szeta(f)*Wmn(f))) or the imaginary (Im(.)) counterpart.

  • Hn (ndarray of shape (nt,nf,m*m), where nt is the number of theta values) –

    Matrix of the real and imaginary parts of the normalised RAO products, in the same order of response pairs as for Sxyn:

    Hn(theta,f,i) = Re(Phi_m(theta,f)*conj(Phi_n(theta,f))/Wmn(f)) or the imaginary (Im(.)) counterpart.

  • theta (ndarray of shape (nt,)) –

    Vector of wave headings.

    Warning

    The wave heading must be in a wrapped format, corresponding to [0,360] deg. For ship responses, those headings must be the relative wave headings.

  • fi (ndarray of shape (nf,)) – Frequency vector.

  • k (array_like) – List of indices corresponding to frequencies where the wave power spectral density is substantially greater than zero.

  • opt (dict, optional) –

    Optional parameters controlling the EMEM calculation. Available options are:

    • ’errortol’float, default 0.0005

      Error tolerance for convergence.

    • ’maxiter’int, default 25

      Maximum number of iterations for the Newton-Raphson method.

    • ’relax’float, default 1

      Relaxation parameter for controlling step shape in optimization.

    • ’maxcoef’float, default 10000

      Maximum value for coefficients to prevent divergence.

    • ’coefabstol’float, default 0.01

      Coefficient absolute tolerance for convergence.

    • ’minmodelorder’int, default 1

      Minimum model order for AIC evaluation.

    • ’maxmodelorder’int, default M/2 + 1

      Maximum model order for AIC evaluation.

    • ’diradjust’float, default 0

      Deviation term to adjust the wave directions to other direction conventions.

      Warning

      For ship responses, a value of \(-\pi/2\) was necessary to use: opt = {'diradjust': numpy.pi/2}.

    • ’message’{0,1}

      Display messages during the calculation.

Returns:

D – Estimated directional spreading distribution matrix of shape (nt, nf).

Return type:

ndarray

See also

norm_resp

Normalizes the response spectra and transfer functions.

norm_DSF

Normalizes the directional spreading function.

netsse.analys.buoy.Shannon_MEMII_Newton

Reconstructs the directional spreading function based on the first four Fourier coefficients of a directional wave spectrum.

References

  1. Hashimoto, N. (1997). “Analysis of the directional wave spectra from field data.” Advances in Coastal and Ocean Engineering, Vol.3., pp.103-143.

  2. DIWASP, a directional wave spectra toolbox for MATLAB: User Manual. Research Report WP-1601-DJ (V1.1), Centre for Water Research, University of Western Australia.

  3. Brodtkorb, P.A., Johannesson, P., Lindgren, G., Rychlik, I., Rydén, J. and Sö, E. (2000). “WAFO - a Matlab toolbox for analysis of random waves and loads”, Proc. 10th Int. Offshore and Polar Eng. Conf., Seattle, USA, Vol III, pp. 343-350.

Example

>>> D = emep(Sxyn, Hn, theta, fi, k, opt=None)