spkit
.PeriodStrength¶
- spkit.PeriodStrength(x, Pmax, method='Ramanujan', lambd=1, L=1, cvxsol=False)¶
Computing strength of periods
Computing strength of periods
for given signal x, using method and respective loss fun (e.g. l1, l2)
Warning
NOTE: Use
regularised_period_estimation
instead. That is most updated version.PeriodStrength
will be removed in future release.- Parameters:
- xone dimentional sequence (signal)
- Pmax: largest expected period in the signal
- method: type of dictionary used to create transform matrix A
: ‘Ramanujan’, ‘NaturalBasis’, ‘random’ or Farray (DFT)
- lambd: for penalty vector, to force towards lower (usually) or higher periods
: if 0, then penalty vector is 1, means no penalization : if >0, then lambd is multiplied to penalty vector
- Lregularazation: L=1, minimize ||s||_1, L=2, ||s||_2
- cvxsol: bool, wether to use cvxpy solver of matrix decomposition approach
: matrix decomposition approach works only for L=2 : for L=1, use cvxpy as solver
- Returns:
- period_energy: vecotor shape: (Pmax,): strength of each period
- Reference:
- [1] S.V. Tenneti and P. P. Vaidyanathan, “Nested Periodic Matrices and Dictionaries:
New Signal Representations for Period Estimation”, IEEE Transactions on Signal Processing, vol.63, no.14, pp.3736-50, July, 2015.
- Python impletation is done by using matlab code version from