Info

此问题已关闭。 请重新打开它进行编辑或回答。

Why aren't my cases working correctly

1 次查看(过去 30 天)
Caprice Corlew
Caprice Corlew 2014-10-3
关闭: MATLAB Answer Bot 2021-8-20
I made an if esleif else statement and a switch menu to plot the graphs but I cannot get the graphs to plot correctly. could someon hep me fix it? Its alot, sorry
switch answer case 1
period=1/frequency;
t=0:period*cycles:100;
y=amplitude*square(2*pi*frequency*t);
plot(t,y);
xlabel('Amplitude(v)')
ylabel('Time (s)')
title('Square wave')
case 2
period=1/frequency;
t=0:period*cycles:100;
y=amplitude*sin(2*pi*frequency*t);
plot(t,y);
xlabel('Time(s)');
ylabel('Amplitude');
title('Sine wave');
case 3
period=1/frequency;
t=0:period*cycles:100;
y=amplitude*cos(2*pi*frequency*t);
plot(t,y);
xlabel('Amplitude');
ylabel('Time (s)');
title('Cosine wave');
case 4
period=1/frequency;
t=0:period*cycles:100;
y=tan(pi*frequency*t);
ylim([-1.5*amplitude,1.5*amplitude]);
xlabel('Amplitude');
ylabel('Time (s)');
title('Tangent Curve');
case 5
t=0:.0001:5*tau;
dec= exp(-t/tau);
plot(t,tau);
xlabel('Amplitude (v)');
ylabel('Time (s)');
title ('Exponential Decay');
end
  2 个评论
the cyclist
the cyclist 2014-10-3
You say "I cannot get the graphs to plot correctly". What do you mean, specifically? Are you getting an error message? If so, what is the full content of that message. If not, then tell us in detail what is not correct.
Caprice Corlew
Caprice Corlew 2014-10-3
I am not getting any error messages, but my graphs do not look how they should. For example, my exponential decay graph looks like a straight line, and my tangent graph just looks like a big block.

回答(1 个)

Matz Johansson Bergström
I would put period and t calculation outside of the switch and I think you want
t = linspace(0,period*cycles,100);
  2 个评论
Caprice Corlew
Caprice Corlew 2014-10-3
I tried that and they are still not plotting correctly.
Matz Johansson Bergström
编辑:Matz Johansson Bergström 2014-10-3
Ok, I only tried the sine wave and cosine wave. If you changed them you will get a correct answer for all cases but case 5 in which you use another mapping.
As for case 5 I have to assume that tau is a constant. In that case you want to have 'dec' as the amplitude. So case 5 becomes:
t = 0:.0001:5*tau;
dec = exp(t*tau);
plot(-t, dec);

此问题已关闭。

Community Treasure Hunt

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

Start Hunting!

Translated by