Хороший алгоритм для вычисления ln (1-x) для малых (и иногда больших) x - PullRequest
4 голосов
/ 23 сентября 2010

Я ищу алгоритм для вычисления ln (1-x).х часто маленький (<0,01), но иногда он может быть больше.Алгоритм должен быть точным и не слишком медленным.Я бы предпочел не использовать библиотеку для ln (x), потому что я могу потерять точность.</p>

Ответы [ 2 ]

3 голосов
/ 23 сентября 2010

В зависимости от требуемой точности, -x является хорошим приближением к малому ln(1-x).Начиная с здесь .

Редактировать : Если причиной необходимости алгоритма является точность best , то существует много специализированных библиотек.для log(1+x).Например, в Python используйте log1p .То же самое в C и C ++ .

0 голосов
/ 28 сентября 2014

Если вы используете MATLAB, функция log1p () была разработана специально для вычисления ln (1 + x) для малых значений x.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...