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

2 ビュー (過去 30 日間)
Emmanuel
Emmanuel 2014 年 3 月 13 日
コメント済み: Emmanuel 2014 年 3 月 13 日
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 Center および File ExchangeHistorical Contests についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by