Function on separate intervals

23 Ansichten (letzte 30 Tage)
Nader Mohamed
Nader Mohamed am 30 Okt. 2021
Bearbeitet: David Hill am 30 Okt. 2021
I'm trying to write a function that has different values on different intervals:
from t0 to t1 needs to be 0
from t1to t2 needs to be a segment that goes linearly from 0 to t1
from t2 to tf needs to be t2
But when I try the code below I get a totally different plot and can't find the error(s).
t0 = 0;
t1 = 1;
t2 = 1.5;
tf = 3;
function z = funz(t,t0,t1,t2,tf)
zz = @(t) ((t2-t1)/(t2-t1))*t;
if (t<t1 & t>t0)
z = zz(0);
elseif (t<t2 & t>t1)
z = zz(t);
else
z = t1;
end
end

Akzeptierte Antwort

David Hill
David Hill am 30 Okt. 2021
Bearbeitet: David Hill am 30 Okt. 2021
t=0:.01:3;%the start and stop of t defines t0 and tf
t1 = 1;
t2 = 1.5;
z=funz(t,t1,t2);
plot(t,z);
function z = funz(t,t1,t2)
z=zeros(size(t));
z(t>t1&t<t2)=(t(t>t1&t<t2)-t1)*t1/(t2-t1);
z(t>=t2)=t1;
end

Weitere Antworten (0)

Kategorien

Mehr zu App Building finden Sie in Help Center und File Exchange

Produkte


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by