六、数值微积分与方程求解
6.1 数值微分与数值积分★
高等数学是解析解,MATLAB求数值解。
6.1.1 数值差分与差商:

6.1.2 数值微分的实现:
向前差分函数diff(),计算向量元素间差分。调用方法:
diff(x,n):计算向量x的n阶向前差分。(一阶:dx(i)=x(i+1)-x(i))diff(A,n,dim):计算矩阵A的n阶差分,(默认)dim=1,按列计算。
6.1.3 数值积分
可用牛顿-莱布尼茨公式计算。若无法求原函数,可用MATLAB实现:
- 基于自适应的辛普森方法:
[l,n]=quad(filename,a,b,tol,trace) - 基于自适应Gauss-Labatto方法:
[l,n]=quadl(filename,a,b,tol,trace) - 基于全局自适应积分方法:
I=intergral(filename,a,b)(可求无穷积分) - 基于高斯-克朗罗德方法:
[l,err]=quadgk(filename,a,b)(求震荡函数积分,上下限可为无穷,可复数)
其中filename为被积函数名,被积函数可用函数句柄形式,a,b为定积分上下限,tol控制积分精度默认为e-6。trace控制是否展现积分过程,默认trace-0不展现。返回参数I为定

本文是MATLAB学习笔记,重点介绍了数值微积分与方程求解。内容涵盖数值微分与积分(包括向前差分、牛顿-莱布尼茨公式)、线性方程组求解(直接法与迭代法)、非线性方程求解、常微分方程数值解法(如ode45)及其在生物学中的应用——Lotka-Volterra模型。
6万+

被折叠的 条评论
为什么被折叠?



