Clear Filters
Clear Filters

Why this message appears?

1 view (last 30 days)
taher zaouali
taher zaouali on 1 May 2019
Commented: Star Strider on 4 May 2019
clear all;
f1=200;
f2=250;
a1=1;
a2=1.5;
fe=10e3;
temps=0:1/fe:0.02-1/fe;
m1=a1*sin(2*pi*f1*temps);
m2=a2*sin(2*pi*f2*temps);
mt=m1*m2;
Error using *
Inner matrix dimensions must agree.

Accepted Answer

Star Strider
Star Strider on 1 May 2019
It appears because you are multiplying two row vector using matrix mulktiplication.
You need to use element-wise array multiplication (using .* instead of *):
mt = m1 .* m2;
  10 Comments
taher zaouali
taher zaouali on 4 May 2019
I've figured it out:
spec_mt=fft(mt,n);
plot(freqs,abs(spec_mt));grid;
the comma is between 2 parts of the fft not of the abs.
Thanks for the help.
Star Strider
Star Strider on 4 May 2019
As always, my pleasure.
I took the ‘n’ out of the fft call entirely. I was not certain where you wanted to put the ‘n’, or what you wanted to do with it. If ‘n’ is the same as the size as the time-domain vector, using it as the size of the fft does not change anything, because the length of the time-domain vector is the default length of the fft for that vector.

Sign in to comment.

More Answers (0)

Categories

Find more on Measurements and Spatial Audio in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!