我写了一个斜坡函数,但在某些情况下它的工作有误

时间:2014-03-19 01:17:13

标签: matlab

我是Matlab的新手,我遇到了这个问题: 我写了一个斜坡函数,如果我绘制斜坡(t-1),斜坡(t-2),斜坡(t-3)......它可以正常工作.... 但是当我尝试绘制斜坡(t),斜坡(t + 1),斜坡(t + 2)......时,它不起作用。

这是我的代码:

    function [ y ] = ramp(x)
    y(x<0)=0;
    s = (abs(x(length(x)))+abs(x(1)))/length(x);% x(2)-x(1) or x(i)-x(i-1), EX:{1,1.2,1.4}s=0.2
    y(x>=0)= 0:s:x(length(x));

    end

1 个答案:

答案 0 :(得分:2)

我看不到使用您的代码重现任何错误,但这是做同样事情的另一种方式。

function [ y ] = ramp(x)
    y=zeros(size(x));
    y(x>=0)=linspace(0,x(end),length(x(x>=0)))
end