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
Hashimoto, N. (1997). “Analysis of the directional wave spectra from field data.” Advances in Coastal and Ocean Engineering, Vol.3., pp.103-143.
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.
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)