Числа MathNet - Фурье - "Указанный метод не поддерживается"

У меня есть приложение C#, я установил MathNet.Numerics 3.17.0 через Nuget.

Я пытаюсь использовать функции Фурье. Когда я запускаю эту строку кода:

Fourier.Forward2D(n);

Выдает исключение "Указанный метод не поддерживается".

Console.WriteLine(MathNet.Numerics.Control.LinearAlgebraProvider.ToString());

Возвращает "Управляемый".

Клянусь, это работало, но теперь оно сломано.

Любые идеи о том, как сделать эту работу?

К вашему сведению, я использовал пакет MKL в течение минуты, которая, кажется, работает. Я хочу использовать нативный пакет "Managed", потому что я распространяю приложение через clickonce....

Любые идеи приветствуются!

2 ответа

Решение

К сожалению, поддержка 2D и многомерного FFT действительно была добавлена ​​в v3.15 с поддержкой только MKL-провайдера, но не управляемого провайдера. Смотрите заметки о выпуске. Это исключительная ситуация, поскольку основной целью Math.NET Numerics является обеспечение полной функциональности управляемого провайдера. Мы определенно хотим восполнить этот пробел, но, к сожалению, я не могу дать какие-либо временные оценки того, когда мы будем там.

Поскольку управляемая поддержка Fourier2D все еще отсутствует, вот как использовать собственный пакет, если он жизнеспособен:

      MathNet.Numerics.Control.UseNativeMKL();

Также необходимо импортировать пакет «MathNet.Numerics.MKL.Win» (или другой для вашей платформы), чтобы добавить поддержку Intel MKL в MathNet.

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