Info
이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.
Why aren't my cases working correctly
조회 수: 1 (최근 30일)
이전 댓글 표시
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
답변 (1개)
Matz Johansson Bergström
2014년 10월 3일
I would put period and t calculation outside of the switch and I think you want
t = linspace(0,period*cycles,100);
댓글 수: 2
Matz Johansson Bergström
2014년 10월 3일
편집: 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!