将包mpfr应用于R中的函数

时间:2014-01-09 23:19:25

标签: r mpfr

我想对函数应用包mpfr,如下所示:

     f1  =function(x) exp(x)

例如x = c(-1500, -2000, -6400, -7200)

     > x = c(-1500, -2000, -6400, -7200)
     >  mpfr(f1(x), precBits=64)
     4 'mpfr' numbers of precision  64   bits 
     [1] 0 0 0 0

我想得到函数f1的值,即使它很小,我怎样才能在R中得到它?

1 个答案:

答案 0 :(得分:0)

64位不是很多。但主要是,我们很多人都犯了一个错误:f1(x)的值已经为零,因为它是在转换为bignum之前计算的

以这种方式尝试:

> exp(mpfr(c(-1000,-5000),200))
2 'mpfr' numbers of precision  200   bits 
[1]  5.0759588975494567652918094795743369193055992828928373618323948e-435
[2] 3.3696941483089175144500323238132201679550979027292655581078801e-2172