EDA365电子论坛网

标题: 用matlab实现牛顿迭代法,怎么确定有效数字? [打印本页]

作者: ssduck    时间: 2022-2-18 09:11
标题: 用matlab实现牛顿迭代法,怎么确定有效数字?
在迭代过程中
7 m, u! x7 g: G. M: B) M- z& z. `. \8 G( i1 Q) X
只是限制了 x(k+1)-x(k)不超过设置好的误差限(比如0.000001)
, `  z) ^0 }+ v+ {: J+ F4 c+ G  u" H+ B
但怎么保证有效数字的位数呢?9 A! o3 m; F  ?6 Y# z: a

作者: DuBois_1wwe    时间: 2022-2-18 09:41
可以啊。
1 B( l) F0 X  f你可以根据log10(x)估计一下x的第一位有效数位,然后再加上你的有效数值
* A  A: c0 _8 o# U) t1 o
( [' ^8 w! g. F5 F( k; b' n8 j同样用上面的误差限:
* z+ N, D2 x1 ?$ \: u10^(floor(log10(x))-位数+1)
: x  j  `/ R, V% P- Y& N当然,碰到刚好是x=10的幂的话,只能说运气不好。
2 t. V9 z* g+ \( M/ T$ d+ K当然也可以通过x+eps进行微调改进
作者: wewwqqee    时间: 2022-2-18 09:51
那完全是级数的问题 只有通过计算啊




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2