步函数/ Heaviside函数MATLAB错误

时间:2014-04-04 01:22:38

标签: matlab function inline piecewise

所以我试图在MATLAB中使用heavyiside和ezplot函数绘制f(t),这是一个分段函数。现在我根本不熟悉MATLAB。如果有人知道为什么我会收到此错误,那将会有所帮助。

  

f = '12 +( - 2t + 8)*重质(t-2)+(2t-12)*重质(t-6)'

     

f = 12 +( - 2t + 8)*重质(t-2)+(2t-12)*重质(t-6)

     

ezplot(F)

使用inlineeval时出错(第15行)内联表达式错误==> 12 +( - 2t + 8)。* heavyiside(t-2)+(2t-12)。* heavyiside(t-6)错误:意外的MATLAB表达式。

内联/ feval错误(第34行)         INLINE_OUT_ = inlineeval(INLINE_INPUTS_,INLINE_OBJ_.inputExpr,INLINE_OBJ_.expr);

ezplotfeval出错(第52行)     z = feval(f,x(1));

ezplot中的错误> ezplot1(第469行)     [y,f,loopflag] = ezplotfeval(f,x);

ezplot中的错误(第145行)                 [hp,cax] = ezplot1(cax,f {1},vars,labels,args {:});

1 个答案:

答案 0 :(得分:1)

你需要告诉Matlab明确地乘法,使用2 * t而不是2t。

syms t real
f = 12+(-2*t+8)*heaviside(t-2)+(2*t-12)*heaviside(t-6)
ezplot(f,[0 10])