Существует ли стандартный матричный класс .Net? Я не могу найти его, если есть.
Если нет, почему бы и нет? Похоже, что людям нужно очень часто. Есть ли нестандартные библиотеки, которые вы могли бы порекомендовать?
Существует ли стандартный матричный класс .Net? Я не могу найти его, если есть.
Если нет, почему бы и нет? Похоже, что людям нужно очень часто. Есть ли нестандартные библиотеки, которые вы могли бы порекомендовать?
XNA Framework имеет структуру Matrix. Я не знаю ни одной части основной структуры, которая имеет класс Matrix.
http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.matrix.aspx
Я не верю, что есть, частично потому, что любой массив можно технически назвать "матрицей", если он представляет собой единый размерный массив длины n, это матрица n x 1. Существует также вопрос о том, хотите ли вы, чтобы матрица сохраняла целые числа, двойные числа или другие числовые значения, которые могут играть роль в некоторых функциях Matrix.
Существуют различные места, такие как здесь и здесь, который может связывать некоторые классы Матрицы с другими функциями линейной алгебры.
Вы можете найти класс Matrix в библиотеке Lydos.MatLab (документация), которая распространяется как проект с открытым исходным кодом в zlib/libpng license.
Пример использования в С#:
using Lydos.Matlab;
using System;
public class Example
{
static void Main()
{
Engine e = new Engine();
Matrix m = new Matrix(2, 2), n;
m[0, 0] = 0;
m[0, 1] = 1;
m[1, 0] = 2;
m[1, 1] = 3;
e.SetMatrix("m", m);
e.Evaluate("m = m + 1");
n = e.GetMatrix("m");
Console.WriteLine(m); // [0 1; 2 3]
Console.WriteLine(n); // [1 2; 3 4]
m.Dispose();
n.Dispose();
e.Close();
}
}