Closed ki-ljl closed 2 years ago
Specifically, the order of magnitude of the 'residue' in method 1 is large, while the order of magnitude of the 'residue' in method 2 is small.
Hello :) I have checked the problem both in versions 0.2.10 and 1.2.3. And the conclusions are as follows:
ceemdan.get_imfs_and_residue()
is defined as S * scale_s - np.sum(self.C_IMF, axis=0)
(line 255), which means the difference between the original signal and the sum of all IMF components. Such difference is regarded as the reconstruction error which evaluates the completeness and ability to reduce the added noise of the method, as mentioned in the paper titled “A complete ensemble empirical mode decomposition with adaptive noise”(doi:10.1109/ICASSP.2011.5947265)(The last paragraph of the third section and figure 5).ceemdan.get_imfs_and_residue()
actually gets the final IMFs and the reconstruction error rather than the residue. And the ceemdan[-1]
is the correct way to get the residue.
Hope this can help you :).Thank you for your answer sincerely.
I am trying to CEEMDAN the load data, the code is written in the following two ways:
and
I found that the results obtained by the two ways of writing are inconsistent, so which way of writing is better?