После статей и исходного кода для двойной арифметики в течение некоторого времени я до сих пор не могу выяснить, как именно число dd_real (определенное как struct dd_real { double x[2];...}
) делится на два двойных.Скажите, если я инициализирую его строкой, dd_real pi = "3.14159265358979323846264338327950";
, что будет pi.x[0]
и pi.xi[1]
?Мне нужно понять это, а затем написать, надеюсь, небольшую функцию Python, которая делает это.
Причина, по которой я не хочу просто вызывать библиотеку QD, заключается в том, что я предпочел бы переопределить правильное разбиение в Pythonтак что я отправляю свои константы точности из 35 цифр (заданные в виде строк) как double2
в код CUDA, где он будет обрабатываться как 1012 * GQD библиотека - единственная библиотека, кажется, единственная библиотека, чтобы иметь дело с расширенными вычислениями точности в CUDA.К сожалению, это также исключает mpmath на стороне Python.