|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Max Alekseyev 2:5015/128 02 Jul 2001 13:51:16 To : Ivan Mak Subject : log 0.99999 -------------------------------------------------------------------------------- Replying to a message of Ivan Mak to Sergei Frolov: SF>> Решил попробовать вычислить логарифм по методу Cordic. Все было бы SF>> хорошо, но вот при значениях от 0.9 до 0.999999999 чем больше SF>> девяток, тем меньше точность вычисления. Hельзя ли как-нибудь SF>> преобразовать log (x) во что-нибудь типа log(1-x)? IM> Открываешь справочник и находишь: IM> ln(1+x)=-1+x-x^2/2+x^3/3-x^4/4+... Правильно без "-1": ln(1+x) = x-x^2/2+x^3/3-x^4/4+... IM> При малых x этот ряд сходится почти моментально точнее при x<1. IM> (при больших расходится!) При больших x используют представление x=(1+t)/(1-t), где t=(x-1)/(x+1), и формулу ln((1+t)/(1-t)) = 2*(x + x^3/3 + x^5/5 + ...) Regards, ш.ш Max ~ --- FleetStreet 1.27.3.6 * Origin: А ну от винта! Все, все от винта! (2:5015/128) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/22983b408b4f.html, оценка из 5, голосов 30
|