plot error

2 views (last 30 days)
hagai bar
hagai bar on 17 Jun 2011
I am trying to do
t=0:0.001:10;
plot(0.25*exp(-t)*sin(2*t),t)
and it says:
??? Error using ==> mtimes
Inner matrix dimensions must agree.
When I tried to divide by exp(t) instead it gave me crap. any ideas? thanks

Accepted Answer

Sean de Wolski
Sean de Wolski on 17 Jun 2011
t=0:0.001:10;
plot(0.25*exp(-t).*sin(2*t),t)
You want an element by element multiplication so you need the '.' in front of the '*'
  1 Comment
Arnaud Miege
Arnaud Miege on 17 Jun 2011
You typed quicker than me :-)

Sign in to comment.

More Answers (4)

Arnaud Miege
Arnaud Miege on 17 Jun 2011
You need to use element-wise operating rather matrix opertaions. Read about Arithmetic Operators in the MATLAB documentation.
HTH,
Arnaud

Daniel Shub
Daniel Shub on 17 Jun 2011
size(exp(-t))
size(sin(2*t))
You are trying to multiple a 1x1001 matrix with a 1x1001 matrix. The inner dimension (1001 and 1) do not match. Try .*
plot(0.25*exp(-t).*sin(2*t),t)

Anthony Smith
Anthony Smith on 17 Jun 2011
Matlab is always thinking in terms of matrices. Therefore you would want to use element-by-element multiplication (.* instead of *) to generate your simple function in this case.
Try:
t=0:0.001:10; plot(t,0.25*exp(-t).*sin(2*t))

hagai bar
hagai bar on 17 Jun 2011
thanks everyone

Categories

Find more on Arithmetic Operations 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!