Problem with running eemd function

Dear experts,
I face issue when implementing the eemd function on a power quality signal (y). It is a bit hard to me to realize the errors. I appreciate if anyone could help me solving this issue.

 Accepted Answer

That code requires y to be a row vector but it is a column vector.

5 Comments

Thanks dear Walter.
Now I get this error, while the code for eemd.m Line: 2 is: function [modes] = eemd(y, aim, NR, Nstd)
Error: File: eemd.m Line: 2 Column: 20
Local function name must be different from the script name.
I still don't know what the "Local function name must be different from the script name." means.
Thanks & regards,
Remove (or comment out) whatever line it was that you added as the first line of eemd.m
Again when I run the function I get the error. I run this: IMF1=eemd(s,5,10,0.3);
and get:
Ensemble number #1
Error using emd
Expected X to be a vector.
Error in emd>parseAndValidateInputs (line 171)
validateattributes(x, {'single','double','timetable'},{'vector'},'emd','X');
Error in emd (line 134)
[x,t,td,isTT,opt] = parseAndValidateInputs(x, varargin{:});
Error in eemd (line 14)
modes = modes + emd(y1,'MaxNumIMF',aim);
Error in eemd1 (line 8)
The code requires that the s you pass in must be a row vector. You do not show us what you are passing in, but we can tell it is not a row vector.
Thanks so much Walter. I really appreciate it.
I already checked the "Genetic Algorithm for parameter estimation in EEMD" while I was getting the error.
Now the (s) signal is 1000x1 double. Meanwhile, for plotting the IMFs, in emd it is simple and as integrated function emd(y), but in case of eemd, should we plot/subplot each IMF individually ( plot(IMF(:,1)) ) or there is some integrated fun as emd(s) to plot all IMFs at once?
Wish you have a great weekend ahead.

Sign in to comment.

More Answers (0)

Tags

Asked:

on 13 Mar 2021

Commented:

on 14 Mar 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!