wecopttool.core.derivative_mat

derivative_mat(f1, nfreq, zero_freq=True)[source]

Assemble the derivative matrix that converts the state vector of a response to the state vector of its derivative.

For a state \(x\) consisting of the mean (DC) component followed by the real and imaginary components of the Fourier coefficients (excluding the imaginary component of the 2-point wave) as \(x=[X0, Re(X1), Im(X1), ..., Re(Xn)]\), the state of its derivative is given as \(Dx\), where \(D\) is the derivative matrix.

The time matrix has size (nfreq*2, nfreq*2).

If zero_freq = False (not default), the mean (DC) component X0 is excluded, and the matrix/vector length is reduced by 1.

Parameters:
  • f1 (float) – Fundamental frequency f1 [\(Hz\)].

  • nfreq (int) – Number of frequencies.

  • zero_freq (bool | None) – Whether the first frequency should be zero.

Return type:

ndarray