See the BigFloat section http://julia.readthedocs.org/en/latest/manual/integers-and-floating-point-numbers/.
On Sunday, January 11, 2015 at 9:16:53 AM UTC-5, Hans W Borchers wrote: > > The following function computes Euler's constant e = exp(1.0) to n > digits *exactly* (returning it as string): > > function dropletE(n::Int) > a = fill(1, n+2) > E = "2." > for i in 1:n > a = 10 * a > for j in (n+2):-1:2 > a[j-1] = a[j-1] + div(a[j], j+1) > a[j] = mod(a[j], j+1) > end > E = E * string(div(a[1], 2)) > a[1] = mod(a[1], 2) > end > return E > end > > Comparing it with e calculated in Julia with the Big number class shows > that the computation in Julia is only correct up to the 76th digit (of 78 > digits shown). > > julia> dropletE(100) > "2.71828182845904523536028747135266249775724709369995 > 95749669676277240766303535475945713821785251664274" > > julia> exp(big(1.0)) # or simply: > big(e) > 2.71828182845904523536028747135266249775724709369995 > 9574966967627724076630353555e+00 with 256 bits of precision > > This corresponds well to the fact that Julia is utilizing the MPFR library > (?) "with 256 bits of precision" only. > > Question: How can I change this behavior and force Julia to apply more > digits, e.g. 4096 bits, to get about 1200 correct decimal digits. Is there > a parameter one can set, or do I need to recompile Julia with a certain > option? > > [In R, with the MPFR package, one can set the number of digits with every > single number defined as 'big', i.e. as MPFR number.] >
