plot error

2 次查看(过去 30 天)
hagai bar
hagai bar 2011-6-17
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

采纳的回答

Sean de Wolski
Sean de Wolski 2011-6-17
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 '*'

更多回答(4 个)

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

Daniel Shub
Daniel Shub 2011-6-17
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 2011-6-17
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 2011-6-17
thanks everyone

类别

Help CenterFile Exchange 中查找有关 Arithmetic Operations 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by