semeng 发表于 2008-4-26 09:15

关于离散微分方程的求解问题

大家看看下面的代码
就是将 速度在每个时间间隔内的积分然后+原来的位移=新的位移。
方程表示为
x (Tk+1)=| (Tk->Tk+1) v(T) dT + x (Tk)
代码如下:
      t=; % Time
      v=; % velocity
      x(1)=0; % To determine the positon
      for k=
            x(k+1)=trapz(t(k:k+1),v(k:k+1))+x(k);
      end
      x
总是有错误

[ 本帖最后由 eight 于 2008-4-28 17:18 编辑 ]

sogooda 发表于 2008-4-26 09:20

贴个错误提示来看看

semeng 发表于 2008-4-26 09:23

??? Index exceeds matrix dimensions.
Error in ==> chapter8 at 74
            x(k+1)=trapz(t(k:k+1),v(k:k+1))+x(k);

ch_j1985 发表于 2008-4-26 09:34

原帖由 semeng 于 2008-4-26 09:15 发表 http://www.chinavib.com/forum/images/common/back.gif
大家看看下面的代码
就是将 速度在每个时间间隔内的积分然后+原来的位移=新的位移。
方程表示为
x (Tk+1)=| (Tk->Tk+1) v(T) dT + x (Tk)
代码如下:
      t=; % Time
      v=

速度和时间的维数不同
这段代码怎么样?

clc
t=1:1:9; % Time
v=; % velocity
x(1)=0; % To determine the positon
for k=1:8
    x(k+1)=trapz(t(1:k),v(1:k))+x(k);
end
x

semeng 发表于 2008-4-26 10:15

Thank you, I got it

eight 发表于 2008-4-28 17:19

原帖由 semeng 于 2008-4-26 09:15 发表 http://www.chinavib.com/forum/images/common/back.gif
大家看看下面的代码
就是将 速度在每个时间间隔内的积分然后+原来的位移=新的位移。
方程表示为
x (Tk+1)=| (Tk->Tk+1) v(T) dT + x (Tk)
代码如下:
      t=; % Time
      v=下次发帖前,先看置顶的会员守则,把问题描述清楚。另外,你的错误信息在置顶帖也有收录,你完全可据此自行解决,不要浪费我们的心血
页: [1]
查看完整版本: 关于离散微分方程的求解问题