Error using * (Inner matrix dimensions must agree)

1 Ansicht (letzte 30 Tage)
Dan
Dan am 25 Nov. 2013
Kommentiert: dpb am 26 Nov. 2013
This is what I have so far
if true
clear all;
clc;
close all;
t=(-.5:1*exp(-6):2);
f=6*exp(-1.5*t)*cos(8*3.14*t);
F=input('Enter a particular value for f(t): ');
Figure 1;
Plot (f,t,'r',F,t,'g');
grid on;
hold on;
end
I know my problem is at the f= line, what am I doing wrong with the *? Thanks

Akzeptierte Antwort

dpb
dpb am 25 Nov. 2013
doc times % or '.*'
will answer all...

Weitere Antworten (3)

Dan
Dan am 25 Nov. 2013
Thanks guys, for the same code I need to determine the number of times f(t) crosses the line y(t)=F using a while- end statement.
f(t) being f=6*exp(-1.5*t).*cos(8*3.14*t); and F being the input from the user.
I am not really sure how to write this? Pretty sure I am over thinking it.

Matt J
Matt J am 25 Nov. 2013
f=6*exp(-1.5*t).*cos(8*3.14*t);

Dan
Dan am 25 Nov. 2013
Can I do something like
if true%
x = f;
while x >= F
disp(x)
x = x + 1;
end
  1 Kommentar
dpb
dpb am 26 Nov. 2013
Not quite...the initialization sets x to the full vector of f so the while will be a vector and if F is > any value at all in f the condition will never evaluate to T.
Is it mandatory to use while? If not, consider what
diff(x>=F)
yields and how one might use something of that nature.
Note that in your sample loop, even if you set
x=f(1);
as the initialization the while doesn't work as you need and even if it did it doesn't find the crossing points.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by