Mathematica 计算精度怎么设置啊,比如要求整个计算过程中所有数值都保留6位有效数字

用workprecision吗?查了一下不太会啊,求大神解决... 用workprecision吗?查了一下不太会啊,求大神解决 展开
 我来答
xzcyr
2013-06-28 · TA获得超过3396个赞
知道大有可为答主
回答量:1400
采纳率:100%
帮助的人:649万
展开全部
这要看情况的啊……可以用N[ ],也可以用SetPrecision[ ]。WorkingPrecision只是部分函数的选项,比如Plot,比如NDSolve。
追问
用$MinPrecision=$MaxPrecision=n的作用是不是类似于某些函数中用WorkingPrecision=n?
还有,N[]或者SetPrecision[],会影响程序计算精度吗?我主要是想让计算过程中精度低一些,从而速度快一些。p.s.关于精度这一块查了帮助和书,感觉很费解,尤其不懂如何设置计算精度(让机器不要考虑更高位的情况)
追答
精度问题确实是有些麻烦,老实说很多细节我也不是那么清楚,例如你说的$MinPrecision和$MaxPrecision(其实还有一个$MaxExtraPrecision)我就没怎么研究过,但是,这里需要指出的是, 如果真要(真只是)追求速度的话,那就别在精度这问题上纠结了,因为,默认的MachinePrecision(注意不是$MachinePrecision)是最快的,它是一种浮点运算,使用的舍入规则与你上面所提的明确设定精度的运算有所区别,所以在少数极端情况下会得到不合理的结果,但它,至少按帮助的说法,是最快的。
————
你若想深入,不妨去Stackexchange问问:
mathematica.stackexchange.com
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式