主要内容

线性代数与最小二乘

线性代数块

矩阵和线性代数库提供了三个包含线性代数块的大型子库;线性系统解算器、矩阵分解和矩阵逆。第四个库“矩阵运算”提供了处理矩阵的其他基本块。

线性系统解算器

线性系统解算器库提供以下用于解算线性方程组A的块X=B:

有些模块为某些类别的问题提供了特殊的优势。例如,Cholesky解算器块适用于平方厄米正定矩阵a,而反向替代块适用于上三角矩阵A。

使用LU解算器块解算AX=B

在下面特鲁索尔弗图特酒店模型中,LU解算器块求解方程Ax=b,其中

A. = [ 1. 2. 3. 4. 0 6. 2. 1. 3. ] B = [ 1. 2. 1. ]

发现x作为向量[-2 0 1]'.

您可以通过使用矩阵乘法块执行乘法A来验证解决方案x,如下图所示ex_matrixmultiply_tut1模型

矩阵分解

矩阵分解库提供以下用于分解各种矩阵的块:

有些模块为某些类型的问题提供了特殊的强度。例如,Cholesky分解块适用于将厄米正定矩阵分解成三角分量,而QR分解块适用于将矩形矩阵分解成酉和上三角分量。

使用LU分解块将矩阵分解为上下子矩阵

在下面因子分解模型中,LU分解块因子a矩阵aP分为上下三角子矩阵U和L,其中AP行是否等效于输入矩阵A,其中

LU因子分解的较低输出,P,是置换索引向量,表示分解矩阵A.P通过交换第一行和第二行从生成。

A. P = [ 4. 0 6. 1. 2. 3. 2. 1. 3. ]

LU因子分解的上限输出,,是包含两个子矩阵因子U和L的复合矩阵,其乘积LU等于aP.

U = [ 4. 0 6. 0 2. 1.5 0 0 0.75 ] L = [ 1. 0 0 0.25 1. 0 0.5 0.5 1. ]

你可以查一下=A.P使用矩阵乘法块,如下所示ex_matrixmultiply_tut2模型

矩阵逆

矩阵反转库提供以下用于反转各种矩阵的块:

使用LU逆块查找矩阵的逆

在下面前吕恩弗斯图模型,LU逆块计算输入矩阵A的逆,其中

A. = [ 1. 2. 3. 4. 0 6. 2. 1. 3. ]

然后形成产品A.-1A、 这将产生3阶的单位矩阵,正如预期的那样。

如上所示,计算出的逆是

A. 1. = [ 1. 0.5 2. 0 0.5 1. 0.6667 0.5 1.333 ]