首页 理论教育 Matlab微分方程高效解法

Matlab微分方程高效解法

时间:2023-10-31 理论教育 版权反馈
【摘要】:初值问题是科研、工程技术应用中最常见的一类问题,一阶常微分方程的初值问题表述如下:已知u的起始点以及u的一阶导数表达式为二元函数f(x,u),求在区间[x0,∞)上满足这两个条件的u。在少数特殊情况下,可以直接求出初值问题的解析解。由于计算un+1只需要un的取值,所以上述方法也称为单步法。与之相对,若用于计算un+1的递推公式除包含un外,还包含un-1,un-2,…数值计算中最重要的就是递推公式,计算的精度、运算量都是由递推公式决定的。

Matlab微分方程高效解法

初值问题是科研、工程技术应用中最常见的一类问题,一阶常微分方程的初值问题表述如下:

已知u(x)的起始点(x0,u0)以及u(x)的一阶导数表达式为二元函数f(x,u),求在区间[x0,∞)上满足这两个条件的u(x)。即:

由于起始点(x0,u0)给出了初始状态的条件,所以被称为初始条件。在少数特殊情况下,可以直接求出初值问题的解析解。对于更一般的情况,就只能通过数值解法求出数值解。数值解法的基本思路就是先对xu(x)在区间[x0,∞)上进行离散化,然后构造递推公式,再步进式地得到u(x)在这些位置的近似取值。

这些离散的位置可表为:

x1,x2,…,xn,…

数值解法可得到u(x)在这些位置的近似取值:(www.xing528.com)

u1,u2,…,un,…

显然,u(x)在这些离散点处的精确取值为:

u(x1),u(x2),…,u(xn),…

令相邻两个离散点的间隔为一定值h,则有xn=x0+nh(n=1,2,…),这里h也被称为数值计算的步长。若能构造出这些位置的近似取值un的递推关系,也就是通过un获得un+1的公式,那么就可以依次获得u1,u2,…。由于计算un+1只需要un的取值,所以上述方法也称为单步法。与之相对,若用于计算un+1的递推公式除包含un外,还包含un-1,un-2,…,那么这种数值方法就称为多步法。

数值计算中最重要的就是递推公式,计算的精度、运算量都是由递推公式决定的。下面由浅入深地介绍几种基本的构造递推公式的方法,以引入数值计算的思路和重要概念。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈