24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1170  |  回复: 15

月只蓝

主管区长 (职业作家)

引用回帖:
7楼: Originally posted by 309065816 at 2013-07-11 09:22:05
=CombineTraprl('sqrt(4-x^2)',0,2,1.0e-4)
这是第一个程序里面最后的命令,而且按照编的程序可以看出,默认精度就是小数点后4位的,为什么出来的结果是这样的:
q =

   3.138365760415841


s =

    51...

“默认精度就是小数点后4位的”,这指的是计算精度,或者说实际上能达到的精度;
而q =3.138365760415841,这是显示精度,这很可能是format long命令引起的。
用下面一个例子来解释,计算精度和显示精度的区别:
实验数据得到a=1,b=1;a*b=1,有效数字只有1位,但是把1显示成1.000000000000000,这样显示看起来是有很高的精度,但是没有实际意义的。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
11楼2013-07-11 09:30:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

引用回帖:
9楼: Originally posted by 309065816 at 2013-07-11 09:23:43
第二个程序是要怎么写才能控制精度呢?
>> trapm(10000,0,2)

ans =

   3.141591477611321...

answer=trapm(10000,0,2);
vpa(answer,5)    %显示5位有效数字
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
12楼2013-07-11 09:33:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

309065816

木虫 (正式写手)

引用回帖:
12楼: Originally posted by 月只蓝 at 2013-07-11 09:33:18
answer=trapm(10000,0,2);
vpa(answer,5)    %显示5位有效数字...

嗯嗯,出来了,太强大了你。你学这个花了多久时间呀?
13楼2013-07-11 09:38:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

309065816

木虫 (正式写手)

引用回帖:
11楼: Originally posted by 月只蓝 at 2013-07-11 09:30:31
“默认精度就是小数点后4位的”,这指的是计算精度,或者说实际上能达到的精度;
而q =3.138365760415841,这是显示精度,这很可能是format long命令引起的。
用下面一个例子来解释,计算精度和显示精度的区别: ...

嗯嗯,明白了。对了,2个程序运行出来的结果有点不一样,这个没多大影响吧?
answer=trapm(10000,0,2);
vpa(answer,5)    %显示5位有效数字

ans =

3.1416

>> [q,s]=CombineTraprl('sqrt(4-x^2)',0,2)

q =

   3.138365760415841
14楼2013-07-11 09:40:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

月只蓝

主管区长 (职业作家)

引用回帖:
14楼: Originally posted by 309065816 at 2013-07-11 09:40:05
嗯嗯,明白了。对了,2个程序运行出来的结果有点不一样,这个没多大影响吧?
answer=trapm(10000,0,2);
vpa(answer,5)    %显示5位有效数字

ans =

3.1416

>> =CombineTraprl('sqrt(4-x^2)',0,2 ...

两个程序结果不会一样的,本身两种程序涉及的算法就不一样。
被求函数存在原函数的,你可以把积分端点代入原函数,得出精确解,然后用两个程序的结果来比较。
MATLAB、MS小问题、普通问题请发帖求助!时间精力有限,恕不接受无偿私信求助。
15楼2013-07-11 09:59:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

309065816

木虫 (正式写手)

引用回帖:
15楼: Originally posted by 月只蓝 at 2013-07-11 09:59:55
两个程序结果不会一样的,本身两种程序涉及的算法就不一样。
被求函数存在原函数的,你可以把积分端点代入原函数,得出精确解,然后用两个程序的结果来比较。...

嗯嗯,好的。太谢谢你了
16楼2013-07-11 10:14:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 309065816 的主题更新
信息提示
请填处理意见