Мне нужно решить недоопределенную систему линейных уравнений в c#. Например,
Недоопределенная система линейных уравнений: x + 3 = y + z x + w = 2
Результат: х = г1 y = -r2 + r1 + 3 z = r2 w = 2 - r1 и теперь я инициализирую r1 и r2 с 3 и 4, чтобы получить одно из моих повторений.
Я пытаюсь использовать Math. Net в c#, как это
using MathNet.Numerics.LinearAlgebra;
namespace SolveLinearEquations
{
class Program
{
static void Main(string[] args)
{
var A = Matrix<double>.Build.DenseOfArray(new double[,] {
{ 1, -1, -1, 0 },
{ 1, 0, 0, 1 }
});
var B = Vector<double>.Build.Dense(new double[] { -3, 2 });
var X = A.Solve(B);
}
}
}
, но я возьми такое исключение
System.ArgumentException: 'Matrix dimensions must agree: 2x4.'
Не могу ли математика. Net решить недоопределенную систему линейных уравнений или ...? Каково лучшее решение для этого?