Matlab 积分微分方程
我有一组微分方程的形式:Matlab 积分微分方程,matlab,differential-equations,Matlab,Differential Equations,我有一组微分方程的形式: x1dot = x3; x2dot = x2; x3dot = x1; x4dot = x2 + integral(x1,t,tend) 我有x1,x2在tstart和x3,x4在tend的边界条件。没有积分项,它是使用BVP4C的直接实现 我想知道是否有可能从BVP解算器中获得状态的先前解,该解可用于积分 一种可能性是将ode45和fsolve结合用于边值问题,在这里我可以得到先前的解决方案,但这种方法不如BVP设置快 我还觉得,当我使用前面的积分解决方案时,x1,
x1dot = x3;
x2dot = x2;
x3dot = x1;
x4dot = x2 + integral(x1,t,tend)
我有x1
,x2
在tstart
和x3
,x4
在tend
的边界条件。没有积分项,它是使用BVP4C
的直接实现
我想知道是否有可能从BVP解算器中获得状态的先前解,该解可用于积分
一种可能性是将ode45
和fsolve
结合用于边值问题,在这里我可以得到先前的解决方案,但这种方法不如BVP设置快
我还觉得,当我使用前面的积分解决方案时,x1
,收敛可能会有一些困难
有没有更好/更快或更简单的方法来解决这个问题?Set
x5 = integral(x1,t,tend)
然后
由于x5dot+x3dot=0
,因此x5+x3=C=const
。因此,您可以使用替换x5→ C-x3
常数C只是
C=x3(倾向)+x5(倾向)=x3(倾向)
(因为x5(倾向)=0
)。欢迎这样做(无论如何,提问方),并对结构良好的问题表示赞誉。+1:大多数傻瓜很容易被虚假的复杂性蒙蔽;通常需要天才才能看到内在的简单性……显然,我是个傻瓜,因为我正在努力理解为什么会有减号(x5dot=-x1
),以及为什么x5(tender)=0
…你能详细说明一下吗?使用基本定理和x1
作为x1
的反导数之一,你就有了x5(t) =X1(tend)-X1(t)
。对其进行微分并应用X1'(t)=X1(t)
得到微分方程dotx5=-X1
。对于t=tend
来说,积分域是一个点,因此积分为零,x5(tend)=0
。好的,我想我需要更多的咖啡:)
x5dot = -x1 with x5(tend) = 0