Глубокий зум функции, такой как функции Вейерштрасса - рабочий пример, библиотека или начальный код для математики с плавающей точкой с очень высокой точностью? - PullRequest
2 голосов
/ 04 декабря 2011

Эта ссылка показывает информацию, включая «увеличение» детали подраздела функции Вейерштрасса. Он останавливается, и в примечаниях говорится, что ограничения программного обеспечения, используемого для анализа значений для f (x), выходят за пределы (я предполагаю) самого точного типа с плавающей запятой в системе.

Мой вопрос: существует ли какой-либо код Python, который может создать график функции с «глубоким увеличением» и выйти за пределы ограничений типа с плавающей запятой (даже если он очень очень медленный)? Что бы я использовал? BigNum? Что-то другое? Я надеюсь, что кто-то уже создал «инструмент для построения графика», который мог бы анализировать функцию Вейерштрасса с более высоким разрешением, чем математика с плавающей запятой.

enter image description here

Поскольку функция представляет собой бесконечную серию, ее нужно будет вычислить с точностью до X слагаемых выражения, и чем глубже вы увеличиваете масштаб, тем больше термов нужно будет оценить. Во-вторых, если можно (путем некоторой тщательной работы) создать особый случай вычислителя, который отображает показанную выше функцию Вейерштрасса с любой произвольной точностью, не требуя специализированных типов данных (то есть работающих в пределах с плавающей запятой), тогда это также быть довольно великим.

Ответы [ 2 ]

3 голосов
/ 04 декабря 2011

Попробуйте gmpy , то есть привязки Python к универсальной библиотеке GNU . Он может обрабатывать диапазон «примерно от 2 ^ -68719476768 до 2 ^ 68719476736» в 32-разрядной системе.

1 голос
/ 04 декабря 2011

Тип Python Decimal даст вам произвольные значения с плавающей точкой. matplotlib позволит вам создавать графики.

...