MATLAB教程六:数值微积分与方程求解

6.1 数值微分与数值积分

数值微分:

  • dx=diff(x):计算向量 x 的向前差分,dx(i)=x(i+1)-x(i),i=1,2,…,n-1。
  • dx=diff(x,n):计算向量 x 的 n 阶向前差分。例如,diff(x,2)=diff(diff(x))。
  • dx=diff(A,n,dim):计算矩阵 A 的 n 阶差分,dim=1时(默认状态),按列计算差分;dim=2,按行计算差分。

数值积分:

  • I=integral(filename,a,b) :基于全局自适应积分方法。其中,I 是计算得到的积分;filename 是被积函数;a 和 b 分别是定积分的下限和上限,积分限可以为无穷大。

例:求定积分
I = ∫ 1 e 1 x 1 − l n 2 x d x I=\int_1^e \frac{1}{x\sqrt{1-ln^2x}}dx I=1ex1ln2x 1dx

>> f=@(x)1./(x.*sqrt(1-log(x).^2));   % 使用函数句柄定义函数
>> I=integral(f,1,exp(1))
I =
    1.5708

多重积分:

  • I=integral2(filename,a,b,c,d) :求二重积分的数值解 ∫ c d ∫ a b f ( x , y ) d x d y \int_c^d\int_a^bf(x,y)dxdy cdabf(x,y)dxdy
  • I=integral3(filename,a,b,c,d,e,f):求三重积分的数值解 ∫ e f ∫ c d ∫ a b f ( x , y , z ) d x d y d z \int_e^f\int_c^d\int_a^bf(x,y,z)dxdydz efcdabf(x,y,z)dxdydz

例:分别求二重积分和三重积分。
∫ − 1 1 ∫ − 2 2 e − x 2 / 2 s i n ( x 2 + y ) d x d y ∫ 0 1 ∫ 0 π ∫ 0 π 4 x z e − z 2 y − x 2 d x d y d z \int_{-1}^1\int_{-2}^2e^{-x^2/2}sin(x^2+y)dxdy \\ \int_0^1\int_0^\pi\int_0^\pi4xze^{-z^2y-x^2}dxdydz 1122ex2/2sin(x2+y)dxdy010π0π4xzez2yx2dxdydz

>> f1=@(x,y) exp(-x.^2/2).*sin(x.^2+y); 
>> I1=integral2(f1,-2,2,-1,1)
I1 =
    1.5745
>> f2=@(x,y,z) 4*x.*z.*exp(-z.*z.*y-x.*x); 
>> I2=integral3(f2,0,pi,0,pi,0,1)
I2 =
    1.7328

6.2 线性方程组求解与函数极值计算

线性方程组求解:

直接法:以矩阵初等变换为基础,可以求得方程组的精确解;占用的内存空间大、程序实现较为复杂;一般适合求解低阶稠密线性方程组。

迭代法:从给定初始值逐步逼近精确解的过程,求解过程占用存储空间小,程序设计简单;适用于求解大型稀疏矩阵线性方程组;要考虑算法的收敛性。

直接解法:

利用左除运算符的直接解法:MATLAB 提供了一个左除运算符 “\” 用于求解线性方程组,它使用列主元消去法,使用起来十分方便。对于线性方程组Ax=b,可以利用左除运算符反斜杠求解,b左除以A可获得线性方程组的数值解x(Ax=b -----> x=A\b)。

例:用左除运算符求解下列线性方程组。
{ 2 x 1 + x 2 − 5 x 3 + x 4 = 13 x 1 − 5 x 2 + 7 x 4 = − 9 2 x 2 + x 3 − x 4 = 6 x 1 + 6 x 2 − x 3 − 4 x 4 = 0 \begin{cases} 2x_1+x_2-5x_3+x_4=13 \\ x_1-5x_2+7x_4=-9 \\ 2x_2+x_3-x_4=6 \\ x_1+6x_2-x_3-4x_4=0 \end{cases} 2x1+x25x3+x4=13x15x2+7x4=92x2+x3x4=6x1+6x2x34x4=0

>> A=[2 1 -5 1;1 -5 0 7;0 2 1 -1;1 6 -1 -4];
>> b=[13;-9;6;0];
>> x=A\b
x =
  -66.5556
   25.6667
  -18.7778
   26.5556

函数极值的计算:

函数极值:包括极大值和极小值,或者叫最大值和最小值。MATLAB 只考虑最小值问题的计算,如果要求 f(x) 的最大值,可以通过求 -f(x) 的最小值来解决。

  • [xmin,fmin]=fminbnd(filename,x1,x2,option):求最小值的函数,其中,xmin 表示极小值点,fmin 表示最小值,filename是定义的目标函数。第一个函数的输入变量 xl、x2 分别表示被研究区间的左、右边界。option 为优化参数,可以通过 optimset 函数来设置。

例:求函数 f ( x ) = x − 1 x + 5 f(x)=x-\frac{1}{x}+5 f(x)=xx1+5在区间 (-10,-1) 和 (1,10) 上的最小值点。

>> f=@(x) x-1./x+5;
[xmin,fmin]=fminbnd(f,-10,-1)
xmin =
   -9.9999
fmin =
   -4.8999
>> [xmin,fmin]=fminbnd(f,1,10)
xmin =
    1.0001
fmin =
    5.0001
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Matlab数值微积分方程数值数值微积分数值计算方法的一种,是对函数在某一区间内的近似积分方程数值是利用数值计算方法来方程,包括线性方程组,非线性方程组和微分方程等。在Matlab中,可以使用一些特定的函数和工具箱来进行数值微积分方程数值。 ### 回答2: MATLAB是一个广泛使用的数学软件,其内置了许多数值微积分方程数值的工具。数值微积分是数学中的一个分支,主要研究如何利用计算机对连续函数进行计算。方程数值是数学中的另一个分支,主要研究如何使用计算机求方程。 对于数值微积分而言,MATLAB提供了许多工具,如积分函数、微分函数、定积分函数等。利用MATLAB的这些工具,可以很方便地计算一些复杂的函数的积分和导数,为科研工作者和工程师提供了非常实用的工具。 对于方程数值而言,MATLAB同样提供了许多工具,如求根函数、ODE求器等。利用MATLAB的这些工具,可以求一些困难的方程组,同时也可以对一些常微分方程进行数值。这些工具非常实用,为科学研究和工程应用提供了非常快捷的法。 除了上述的工具,MATLAB还提供了一些非常实用的工具箱,如优化工具箱、信号处理工具箱等。这些工具箱可以帮助用户进行更高级的数值计算和分析,同时也可以应用到各种不同的领域,如机器学习、图像处理等。 综上所述,MATLAB是一款非常强大的数学软件,其数值微积分方程数值工具在科研和工程实践中有着广泛的应用。同时,MATLAB还提供了许多工具箱和应用,在许多领域都有着广泛的应用。 ### 回答3: Matlab是一款强大的数学软件工具,其中包括了数值微积分方程数值的功能。数值微积分是指对函数进行数值积分、微分及求导的过程,而方程数值则是指求一般的数学方程,包括线性方程组、非线性方程、微分方程等。在Matlab中,数值微积分方程数值可以方便地通过内置函数或辅助工具箱实现。 首先,数值微积分是我们计算与建模中常常需要用到的过程。Matlab中可以使用诸如quad、dblquad、triplequad、quad2d、quad3d等函数进行积分计算。这些函数使用的是数值积分法,将其所需积分区间分成若干子区间,并对每个子区间进行数值积分,从而最后得到整个区间的积分估算值。此外,Matlab中还有比如diff、gradient等函数可以用于求函数的微分和梯度,方便地为我们提供了数学分析的工具。 对于方程数值Matlab提供了非常丰富的内置函数和工具箱,包括ODE工具箱、PDE工具箱等。ODE工具箱可用于求各种常微分方程的初值问题和边值问题,PDE工具箱可用于求偏微分方程的初值问题和边值问题。同时,Matlab中还有其他非线性方程、线性方程组等常见问题的求函数,如roots、fsolve、linsolve等等。这些函数除了可以求方程本身之外,还可以提供方程求解的收敛性、的稳定性、数值误差等信息,有时还能给出方程。 总的来说,数值微积分方程数值Matlab中非常重要的部分,也是工程师和科学家常用的分析方法。Matlab提供了丰富的函数和工具箱,方便我们进行求,而且也带有较高的准确性和精度。因此,学习Matlab中的数值微积分方程数值不仅是科学和工程计算的必要部分,也是日常分析中必不可少的工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值