Попытка использовать 'cyl_bessel_i' из STD C ++ - PullRequest
0 голосов
/ 28 февраля 2020

Я пытаюсь использовать функцию cyl_bessel_i из cmath. Насколько я понимаю, эта функция была добавлена ​​в стандартную библиотеку с C ++ 17 года. Тем не менее, мне говорят, что функция не определена.

Мой код выглядит следующим образом:

#include <cmath>
...
void Kaiser( int order, float b, vector<float>& kaiserWindow)
{
    ...
    float bessel = fabs( cyl_bessel_i( 0, beta) );
    ...
}

Добавление std:: и / или using namespace std не решает проблему. Я работаю в VS 2019.

Есть идеи?

1 Ответ

0 голосов
/ 28 февраля 2020

Поскольку вы не привели ни одного воспроизводимого примера, я попытался использовать функцию std :: cyl_bessel_i с настройками, указанными ниже:

project configuration

#include <iostream>
#include <cmath>

int main()
{

    // spot check for ν == 0
    double x = 1.2345;
    std::cout << "I_0(" << x << ") = " << std::cyl_bessel_i(0, x) << '\n';
    std::getchar();
}

Вывод был такой: I_0 (1.2345) = 1.41886

Я не смог бы выяснить, почему он не работает для вас, так как я не знаю, какую конфигурацию проекта вы используете. Может быть, вы можете попробовать или поделиться более подробной информацией.

Надеюсь, это поможет.

...