matlab微分比如i C du dt,其中u,t已知

2021-03-10 22:15:10 字数 1011 阅读 5202

1楼:

设前两点为bai0 再在最后du补上一点即可zhii2(1)=0;i2(2)=0;%在开始的两dao个点用的是最简单的使回之为零答的方法。

for j=3:1000

i2(j)=(vu2(j+1)-vu2(j))*12*150e-8/(23*5e-7)+16*i2(j-1)/23-5*i2(j-2)/23;

endi2(1001)=(vu2(1001)-vu2(1000))*150e-8/5e-7;

2楼:匿名用户

你的问题bai数值计算: i(2)=[u(2)-u(1)]/dt, u2(3)=r*i(3)+i*/dt

没有i(1),u2(1),u2(2)值, 因此duu2少2点.

可用zhi matlab polyfit(x,y,n) 得到通过20个u的点的dao函数 , 用这函数加二回u点设为u(1),u(2) 。

u(3)=原u(1),u(4)=原u(2).... 22个u点可答得到20个u2的点值

取决于问题,

在一般情况下,初始条件给导数值.

或周期性条件,u(21)=u(1),u(22)=u(2), i(1)=[u(1)-u(20)],u2(1)=r*i(1)+i*/dt

matlab 2012a或更新版本。可以使用符号计算(symbolic)得到20个u2的点与u一一对应, 添加第一行

syms y(x),y2(y)

3楼:匿名用户

u2=r * du/dt +lc * d(du/dt)/dt常系数线性copy齐次二阶微分方程bai

已知离散的u,求解u2,由于已du知u,实际抽取任意两zhi个u的值dao作为边界条件可以求出解析解如果要用数值方法求解近似解,必然要损失信息,不可能解出所有点代表哪个点的则是自己规定的.

通常按taylor认为f(x)=f(x0)+dx*f'(x0) 即f'(x0)=(f(x)-f(x0))/dx

即差商代表左端点的导数

20个u2需要22个离散的u进行求解