MATLAB方程求解与函数极值计算方法.pdfVIP

  • 0
  • 0
  • 约1.98万字
  • 约 17页
  • 2026-01-08 发布于北京
  • 举报

第7章MATLAB解方程与函数极值

7.1线性方程组求解

7.2非线性方程数值求解

7.3常微分方程初值问题的数值解法

7.4函数极值

7.1线性方程组求解

7.1.1直接解法

1.利用左除运算符的直接解法

对于线性方程组=,可以利用左除运算符“∖”求解:

=∖

例7-1用直接解法求解下列线性方程组。

命令如下:

=[2,1,−5,1;1,−5,0,7;0,2,1,−1;1,6,−1,−4];

=[13,−9,6,0];

=∖

2.利用矩阵的分解求解线性方程组

矩阵分解是指根据一定的原理用某种算法将一个矩阵分解成若干个矩阵的乘积。常

见的矩阵分解有LU分解、QR分解、Choky分解,以及Schur分解、Hessenberg

分解、奇异分解等。

(1)LU分解

矩阵的LU分解就是将一个矩阵表示为一个交换下三角矩阵和一个上三角矩阵的乘

积形式。线性代数中已经证明,只要方阵A是非奇异的,LU分解总是可以进行的。

MATLAB的lu函数用于对矩阵进行LU分解,其调用格式为:

[L,U]=lu(X):产生一个上三角阵和一个变换形式的下三角阵(行交换),使之

满足=。注意,这里的矩阵必须是方阵。

[L,U,P]=lu(X):产生一个上三角阵U和一个下三角阵L以及一个置换矩阵P,使

之满足=。当然矩阵X同样必须是方阵。

实现LU分解后,线性方程组=的解=∖(∖或=∖(∖),这

样可以大大提高运算速度。

第7章MATLAB解方程与函数极值

7.1线性方程组求解

7.2非线性方程数值求解

7.3常微分方程初值问题的数值解法

7.4函数极值

7.1线性方程组求解

7.1.1直接解法

1.利用左除运算符的直接解法

对于线性方程组=,可以利用左除运算符“∖”求解:

=∖

例7-1用直接解法求解下列线性方程组。

命令如下:

=[2,1,−5,1;1,−5,0,7;0,2,1,−1;1,6,−1,−4];

=[13,−9,6,0];

=∖

2.利用矩阵的分解求解线性方程组

矩阵分解是指根据一定的原理用某种算法将一个矩阵分解成若干个矩阵的乘积。常

见的矩阵分解有LU分解、QR分解、Choky分解,以及Schur分解、Hessenberg

分解、奇异分解等。

(1)LU分解

矩阵的LU分解就是将一个矩阵表示为一个交换下三角矩阵和一个上三角矩阵的乘

积形式。线性代数中已经证明,只要方阵A是非奇异的,LU分解总是可以进行的。

MATLAB的lu函数用于对矩阵进行LU分解,其调用格式为:

[L,U]=lu(X):产生一个上三角阵和一个变换形式的下三角阵(行交换),使之

满足=。注意,这里的矩阵必须是方阵。

[L,U,P]=lu(X):产生一个上三角阵U和一个下三角阵L以及一个置换矩阵P,使

之满足=。当然矩阵X同样必须是方阵。

实现LU分解后,线性方程组=的解=∖(∖或=∖(∖),这

样可以大大提高运算速度。

例7-2用LU分解求解例7-1中的线性方程组。

命令如下:

=[2,1,−5,1;1,−5,0,7;0,2,1,−1;1,6,−1,−4];

文档评论(0)

1亿VIP精品文档

相关文档