NMath矩阵分解的两种方式
NMath矩阵分解的两种方式
愤怒的小吉 发表于3年前
NMath矩阵分解的两种方式
  • 发表于 3年前
  • 阅读 85
  • 收藏 2
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

摘要: NMath矩阵分解的两种方式

概述:本教程为您介绍.Net唯一的数学与统计学运算库NMath,实现矩阵分解的两种方法。

  Nmath中包括用于构造和操作矩阵QR和奇异值分解的分解类。QR分解如下表示:

1
AP=QR

  其中P是一个可置换矩阵,Q是正交的,且R为上梯形。矩阵A的奇异值分解(SVD)的形式表示为:

1
A=USV*

  其中U和V是正交的,S是对角的,和V *表示一个真正的矩阵V或一个复杂的矩阵V的条目沿对角线S的共轭转置的奇异值。

  接下来带来一个矩阵分解类的实例,下面代码示例为从FloatMatrix创建FloatQRDecomp这个分解类:

1
2
3
FloatMatrix A =
   new FloatMatrix(  "5x3 [ 1 2 3  4 5 6  7 8 9  0 1 2  3 4 5 ]" );
FloatQRDecomp qr =  new FloatQRDecomp( A );

  还有一种比较复杂的分解类的实例代码为:

1
2
3
4
5
6
7
DoubleComplexQRDecompServer qrs =  new
   DoubleComplexQRDecompServer();
qrs.Pivoting =  false ;
int rows = 10, cols = 3;
DoubleComplexMatrix A =  new DoubleComplexMatrix( rows, cols,
   new RandGenUniform( -1, 1 ) );
DoubleComplexQRDecomp qr = qrs.GetDecomp( A );

共有 人打赏支持
粉丝 0
博文 16
码字总数 2474
×
愤怒的小吉
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: