Библиотека 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); // работает, чтобы показать материал *

0 ответов

Другие вопросы по тегам