関数 | |
template<class T > | |
bool | mist::hilbert (const array< T > &in, array< std::complex< T > > &out, bool mirror=false) |
ヒルベルト変換 | |
template<class T1 , class T2 > | |
size_t | mist::emd (const array< T1 > &in, array< T2 > &imf, double sd=0.3) |
経験的モード分解 |
size_t mist::emd | ( | const array< T1 > & | in, |
array< T2 > & | imf, | ||
double | sd = 0.3 |
||
) |
経験的モード分解
入力系列に経験的モード分解を適用し,固有モード関数を出力する
imf[ 0 ] -> 1st IMF imf[ 1 ] -> 2nd IMF imf[ 2 ] -> 3rd IMF : : imf( imf.size( ) - 1 ) -> residual
[in] | in | … 入力系列 |
[out] | imf | … 固有モード関数の配列 |
[in] | sd | … シフト処理の終了基準の値 (デフォルトは0.3) |
参照先 mist::array< T, Allocator >::begin(), mist::array< T, Allocator >::end(), mist::array< T, Allocator >::resize(), と mist::array< T, Allocator >::size().
bool mist::hilbert | ( | const array< T > & | in, |
array< std::complex< T > > & | out, | ||
bool | mirror = false |
||
) |
ヒルベルト変換
解析信号(複素数)の系列を出力する
[in] | in | … 入力系列 |
[out] | out | … 出力系列 |
[in] | mirror | … 端がなめらかになるように折り返し処理をするかどうか (デフォルトはfalse) |