where am i going wrong? i get errors when i multiply the functions

3 次查看(过去 30 天)
Plot the following function from t=1 to t=2, sin(2*pi*3*t)*sin(2*pi*15*t). Label both axes, and give the plot a title. so this is the code i wrote but i keep get error. i am new at using matlab. I would like to know what i am doing wrong.
t= (1:1.1,2); x= sin(2*pi*3*t) y= sin(2*pi*15*t) c= (x*y)

回答(2 个)

nl2605
nl2605 2014-3-13
for t = 1:2
x(t) = sin(2*pi*3*t);
y(t) = sin(2*pi*15*t);
c(t) = x(t).* y(t);
end
This should work
  3 个评论
Chris C
Chris C 2014-3-13
The difference is the ".*" part when you multiply the two variables. The period tells matlab that you want to multiply each array element by the corresponding element in the other array instead of performing matrix multiplication.
Emmanuel
Emmanuel 2014-3-13
thanks. that was quite helpful the coresponding plot matches my manually generated graph.

请先登录,再进行评论。


Joseph Cheng
Joseph Cheng 2014-3-13
couple of things with your line.
  1. for the t=1:1.1:2 are you attempting to get t=1 to 2 with increments of .1?if so it should look more like t=1:.1:2;
  2. you should have a ";" after each function execution or atleast a "," to separate what you are doing. if you don't it will try to execute
t= (1:.1:2); x= sin(2*pi*3*t);y= sin(2*pi*15*t);c= (x.*y) as one single command.
3. the c = (x*y) will also give an error when it gets that far due to the matrix multiplication dimension mismatch. you'll have to use the element-by-element multiplication ".*". See element-by-element multiplication finally your line should look like
t= (1:.1:2); x= sin(2*pi*3*t);y= sin(2*pi*15*t);c= (x.*y)

类别

Help CenterFile Exchange 中查找有关 Signal Generation and Preprocessing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by