主要内容

高精度数值计算

这个例子展示了如何使用可变精度运算使用symbol Math Toolbox™获得高精度计算。

搜索表示近整数的公式。一个经典的例子如下:compute 经验值 1 6 3. π 30位。结果显示为带有舍入误差的整数。

数字(30);f = exp (sqrt(信谊(163))*符号(π));vpa (f)
ans =
                
                 
                  
                   262537412640768743.999999999999
                 
                

将相同的值计算为40位。结果这不是整数。

数字(40);vpa (f)
ans =
                
                 
                  
                   262537412640768743.9999999999992500725972
                 
                

进一步研究这个现象。下面是数字 经验值 1 0 0 0 发生,并且调查需要在小数点后一些正确的数字。计算所需的工作精度:

d = log10 (exp (vpa (1000)))
d =
                
                 
                  
                   434.2944819032518276511289189166050822944
                 
                

在第一次调用依赖于它的函数之前设置所需的精度。其中,vpa,这样的功能。

数字(装天花板(d) + 50);

寻找类似的例子 经验值 n π .当然,你可以通过将163乘以一个平方得到更多这样的数。但除此之外,这种形式的很多数都接近于某个整数。你可以从它们的小数部分的直方图中看到这一点:

一个= exp(π* sqrt (vpa (1:1000)));B =一个圆(一个);柱状图(双(B), 50)

图中包含一个轴对象。坐标轴对象包含一个直方图类型的对象。

计算是否有这种形式的近整数 经验值 n

一个= exp (vpa (1:1000));B =一个圆(一个);找到(abs (B) < 1/1000)
Ans = 1x0空双行向量

结果是,这次是元素的小数部分一个分布相当均匀。

柱状图(双(B), 50)

图中包含一个轴对象。坐标轴对象包含一个直方图类型的对象。