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

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

Сообщение Гость »


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

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

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

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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