Библиотека MathNet.Numerics.LinearAlgebra работает в Visual Studio 2019?
Есть ли у кого-нибудь проблемы с некоторыми методами расширения в пространстве имен с использованием MathNet.Numerics.LinearAlgebra; Math.NET Numerics dll 4.8.1 при использовании этой DLL с Visual Studio Professional 2019 NET framework ver 4.8.03752?
Причина, по которой я спрашиваю, заключается в том, что некоторые методы кажутся работающими, а другие нет (но не выдают никаких ошибок или исключений во время выполнения, они просто ничего не делают).
Я мог бы опубликовать код, но не уверен, это я или версия. Я не очень хорошо знаком с классом Matrix в MathNet, но думаю, что у меня получилось. Например, я могу читать элементы из матрицы MathNet, могу обнулить столбец или строку, могу инициализировать матрицу, но я не могу умножить матрицу на скаляр, и я не могу их ни сложить, ни взять Холецкий декомпозиции, эти методы ничего не делают, даже не имеют никаких исключений, они просто не работают, кажется.
Это я или MathNet? Их документация подразумевает, что, возможно, версия действительно не должна работать с VS19, а с более ранней версией VS?
C# Windows 10 VS 2019, пробовал разные тесты в консольном режиме. Если кто-нибудь спросит, я могу разместить код здесь. Просто пытаюсь выяснить, есть ли у кого-нибудь проблемы в этой среде.
Обновление: я предполагаю, что мой более широкий вопрос заключается в том, что можно ли использовать методы расширения и / или библиотеку и не иметь исключений компиляции и времени выполнения? Например, я заметил, что пока IntelliSense подбирает методы и позволяет мне взглянуть на определение, я не уверен, что они работают, возможно ли это? Также некоторые учебные часто задаваемые вопросы на веб-сайте MathNet показывают функции, которые IntelliSense не показывает в последней библиотеке (возможно, они были удалены).
Пример кода, который "работает" (но.Inverse не работает, как и другие сложные расширения Matrix)
*void ShowMatrixElements(Matrix<double> mm, int RowMax, int ColMax)
{
for (int j = 0; j < ColMax; j++)
{
for (int i = 0; i < RowMax; i++)
{
double d_ = mm[i,j];
Debug.WriteLine("the value of Matrix is at Row {0}, Col {1}, {2:0.00}", i,j, mm[i,j]);
}
}
}
// отлично работает для отображения m, n элементов в матрице после инициализации mm, например: Matrix m1 = Matrix.Build.Random(2, 2); // создаем плотную матрицу с 2 строками и 2 столбцами случайных чисел this.ShowMatrixElements(m1,2,2); // работает, чтобы показать материал *