How to make a ramp function that start in point a and finish in point b. [a,b]. And with value 0 outside the interval

14 ビュー (過去 30 日間)
I want to build a ramp function that start from point a
and finish in point b. [a,b]
I have constructed a code of a ramp functon that starts from 0 and finish in point b.[0,b].
this is the code:
hold on
b =2 % time in wich the ramp finish
a=1 %time in which the ramp start
t = [0:0.01:15]'; %timespan of the ramp function
for impAmp = [3 5 10] . %height of the ramp
function
rampOn = @(t) t<=b;
ramp =@(t) t.*impAmp.*rampOn(t);
plot(t,ramp(t))
end
But I want to define a new code of the ramp function defined in the interval [a,b]. And a value of 0 outside the interval.
I have tried this code. But it modified all the ramp function.
hold on
b =2 % time in wich the ramp finish
a=1 %time in which the ramp start
t = [0:0.01:15]';%timespan of the ramp function
for impAmp = [3 5 10]%height of the ramp function
rampOn = @(t) a<t<=b;
ramp =@(t) t.*impAmp.*rampOn(t);
plot(t,ramp(t))
end

回答 (1 件)

Siriniharika Katukam
Siriniharika Katukam 2019 年 10 月 10 日
Hi
A small modification in the code you defined for the interval [a,b].
Using this line would yield you the expected result.
rampOn = @(t) t>=a & t<=b;

カテゴリ

Help Center および File ExchangeGet Started with MATLAB についてさらに検索

製品


リリース

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by