How ı plot the piecewise function
이전 댓글 표시
Hi my main problem is i have a function f(t)=A , t1<t<t2
f(t)=0 , otherwise
t1=2 t2=6 A=2 how can ı plot this function
답변 (2개)
Star Strider
2018년 12월 19일
Try this:
A = 2;
f = @(t, t1, t2) A.*((t1 < t) & (t < t2)); % Use ‘Logical Indexing’
t = linspace(0, 10);
t1 = 2;
t2 = 6;
figure
plot(t, f(t, t1, t2))
grid
댓글 수: 4
can evkuran
2018년 12월 19일
Star Strider
2018년 12월 19일
You have apparently written your own script file and saved it as ‘plot.m’.
Re-name it to ‘myPlot.m’, or to something that does not overshadow plot, or any other MATLAB functions.
Then my code should run without error.
madhan ravi
2018년 12월 19일
This answer clearly works but you have defined some file as plot.m please change it or rename it
Star Strider
2018년 12월 19일
As a work-around (until you re-name your script), try this:
A = 2;
f = @(t, t1, t2) A.*((t1 < t) & (t < t2)); % Use ‘Logical Indexing’
t1 = 2;
t2 = 6;
figure
fplot(@(t) f(t, t1, t2), [0 10])
grid
That should run without error.
madhan ravi
2018년 12월 19일
Another possible approach:
A = 2;
t1=2;
t2=6;
syms t
f = piecewise(t>t1 & t<t2,A,0) ;
fplot(f,[0 10]) % 0 to 10 represent the domain of the function
댓글 수: 2
can evkuran
2018년 12월 19일
madhan ravi
2018년 12월 19일
type ver in command window , suspect you don't have symbolic math toolbox
카테고리
도움말 센터 및 File Exchange에서 Spline Postprocessing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
