簡體   English   中英

如何在MathNet庫中將矩陣乘以矢量?

[英]How can I multiply a matrix by a vector in MathNet Library?

我正在一個需要在其中使用線性代數方法的項目。 我決定使用MathNet Numerics庫,並且想將矩陣乘以向量。 我在MathNetMathNet可以做到這一點的函數。 如何將矩陣乘以向量?

一種這樣的:

Matrix<double> M = Matrix<double>.Build.DenseOfArray(new double[,]
{
    { 1, 2 },
    { 3, 6 }
});

Vector<double> V = Vector<double>.Build.DenseOfArray(new double[] { 3, 4 });

Vector<double> MV = M * V;
Vector<double> VM = V * M;

Console.WriteLine($"M {M}");
Console.WriteLine($"V {V}");
Console.WriteLine($"M*V {MV}");
Console.WriteLine($"V*M {VM}");

它給:

M DenseMatrix 2x2-Double
1  2
3  6

V DenseVector 2-Double
3
4

M*V DenseVector 2-Double
11
33

V*M DenseVector 2-Double
15
30

但是請確保它們具有相同的高度,否則您會得到

System.ArgumentException:矩陣尺寸必須一致。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM