Как эффективно применять полиномы в C++ без цикла?C++

Программы на C++. Форум разработчиков
Anonymous
Как эффективно применять полиномы в C++ без цикла?

Сообщение Anonymous »


Я хочу получить точные аппроксимации некоторых сложных функций (pow, exp, log, log2. ..) быстрее, чем те, которые предоставляются cmath в стандартной библиотеке C++.

Для этого я хочу использовать способ кодирования чисел с плавающей запятой и получить экспоненту и мантиссу с помощью битовых манипуляций, а затем выполнить полиномиальные аппроксимации. Мантисса находится в диапазоне от 1 до 2, поэтому я использую полином n-го порядка для аппроксимации целевой функции в области x в [1, 2], а также выполняю битовые манипуляции и простые математические операции с выражением с плавающей запятой, чтобы вычисления работали.

Я использовал np.polyfit для генерации полиномов. В качестве примера ниже приведен полином 7-го порядка, который я использую для аппроксимации log2 на 1

Вернуться в «C++»