Re: Как вычисляют e^x в современных процессорах?
От: kfmn Россия  
Дата: 22.10.07 06:01
Оценка: 33 (2) +1
Здравствуйте, Аноним, Вы писали:

А>Тейлор?

А>По таблицам?
А>Желательно подробное описание. Хотелось бы получить ссылки на статьи.

Из литературы — была старая статья классиков
Moler C., Van Loan C. Nineteen dubious ways to compute the exponential of a мatrix // The Auerbach Annual, 1979: Best Compute Papers. New-York; Oxford, 1979. pp. 237-281.

Насколько мне известно, наиболее точной и экономичной на данный момент считается аппроксимация Паде или какая-то похожая дробно-рациональная аппроксимация.

И есть еще один популярный алгоритм, основанный на таком представлении.
exp(X)=(exp(X/2^M))^(2^M)
Внутреннюю экспоненту можно вычислить отрезком ряда Тейлора длины N (если M достаточно большое, то будет быстрая сходимость), а потом M раз возвести в квадрат. Сложность — O(M+N). Можно оптимизировать погрешность относительно M и N при заданной сложности или наоборот.

Если интересно — пиши в личку, попробую найти статью по поводу этой оптимизации.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.