初学MATLAB,有个函数于SIGMA的导数有关系,但我定义完DIFF,出现了??? Error using ==> diffDifference order N must be a positive integer scalar.是哪里出了错呢,多谢解答
程序如下:for t=0:0.1:2 i=i+1; tt(i)=t; eps(i)=eps0*t; % trial values ep_tr=epn; a_tr=an; sig_tr=E*(eps(i)-ep_tr); b_tr=-H*a_tr; d(sig_tr)=diff(sig_tr); f_tr=sign(d(sig_tr))*abs(sig_tr-b_tr)*sign(sig_tr-sign(sig_tr)*b_tr)-Y_0;对sig_tr求一阶导数,错误在哪呢? =================================================================================谢谢inplaygo的答案,其实那些参数E,H什么的我都有定义他的直只是没有全部复制上来,为什么要定义dsig_tr(i)=dsig_tr(i-1)呢?多谢帮忙 ===============================================================================修改之后出现??? Attempted to access dsig_tr(0); index must be a positive integer or logical.又是什么问题呢?
|