Я использую Aparapi для обработки чисел в моей программе Java на графическом процессоре. Из того, что я понимаю, Апарапи отлично играет с плавающими массивами.Вычисление Pi с использованием массивов Float или Integer
Я хочу вычислить Pi до N-го десятичного числа, используя Aparapi. Я думаю об использовании метода Лейбница, но я не уверен, как бы я работал с представлением и хранением длинных десятичных знаков в форме float или integer.
Будет ли массив целых чисел работать с размером массива, являющимся нулевым числом десятичных знаков?
int[] digits = new int[N];
Если бы я использовать это с методом Лейбница, я должен был бы вычислить массив N целых чисел для точки М я найти (Liebniz говорит пи/4 = 1 - 1/3 + 1/5 - 1/7 + 1/9 ....), а затем добавьте их вместе и умножьте полученное число на 4. Но это будет означать, что мне нужно будет выделить M целых чисел для КАЖДОГО термина, который я вычислил, что бы добавить и действительно сказывается на памяти.
tl; dr: Как я могу вычислить Pi с использованием циклов операций поплавка, чтобы я мог сделать это с помощью Aparapi?
Спасибо!
Это * действительно * медленный способ вычислить пи , – Blender
Вот почему я надеюсь, что у кого-то есть лучший способ сделать это, все еще используя меньшие типы данных. –
Вы все равно будете хранить номера, независимо от вашего алгоритма. Вот гораздо более быстрый алгоритм: http://stackoverflow.com/questions/14065929/calculating-pi-using-float-or-integer-arrays#comment19442832_14065929 – Blender