why i'm getting this error?
1 view (last 30 days)
Show older comments
why i'm getting this error: Error using * Inner matrix dimensions must agree.
thanks
2 Comments
David Fletcher
on 25 Mar 2018
Edited: David Fletcher
on 25 Mar 2018
Sounds like you're trying to do inner matrix multiplication rather than element by element multiplication
possibly here: (a line number where the error occurred might be handy)
*an*cos*(2*pi*f0*n.'*t) + *bn*sin*(2*pi*f0*n.'*t
instead of
an.*cos(2*pi*f0*n.'*t) + bn.*sin(2*pi*f0*n.'*t
Accepted Answer
Star Strider
on 25 Mar 2018
Your ‘an’ and ‘bn’ are (1x4) vectors, and ‘t’ is (1x500).
One way to avoid it is to transpose ‘an’ and ‘bn’ to column vectors:
s = s + a0 + an'*cos(2*pi*f0*n.'*t) + bn'*sin(2*pi*f0*n.'*t);
I do not know what you want for a final result. If you want a single row vector for each ‘n’, sum them:
s = s + a0 + sum(an'*cos(2*pi*f0*n.'*t) + bn'*sin(2*pi*f0*n.'*t));
0 Comments
More Answers (0)
See Also
Categories
Find more on Time-Frequency Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!