Как векторизировать пошаговую функцию с помощью Matlab

#function #vectorization #step

Вопрос:

Я реализовал параметрическую пошаговую функцию, используя код ориентации объекта и векторизации, но в некоторых результатах есть непостоянство. Код выглядит следующим образом:

 classdef A6
   properties
      eps
   end
   
   methods
      function Y = value(obj,X)
         Y=double(X>=0 amp; X<=0.3)...
              double(X>0.3 amp; X<0.4)*obj.eps...
              double(X>=0.4 amp; X<=0.6)...
              double(X>0.6 amp; X<0.7)*obj.eps...
              double(X>=0.7 amp; X<=1);
      end
   end
end
 

Я протестировал функцию, используя, eps=0,8, dx=1/20 и X=(dx:dx:1-dx). При расчете Y=значение(a,X), X(6)=0,3, но Y(6)=0,8, когда я должен ожидать, что результат будет равен единице в соответствии с предыдущими неравенствами. Любая помощь будет оценена по достоинству.