楼主: mnemosyne
2073 6

[问答] 求教matla精度: 8.194012623990515e-040+1=? [推广有奖]

  • 0关注
  • 0粉丝

已卖:11份资源

本科生

50%

还不是VIP/贵宾

-

威望
0
论坛币
5 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
823 点
帖子
36
精华
0
在线时间
149 小时
注册时间
2008-9-16
最后登录
2016-11-2

楼主
mnemosyne 发表于 2011-7-26 16:22:45 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
请问大家,我在计算8.194012623990515e-040+1时,得到的结果是1,请问如何才能得到准确的答案?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:matla Atl Mat 求教 精度 matla

沙发
mnemosyne 发表于 2011-7-26 16:23:43
补充:我已经设置了 format long

藤椅
ywh19860616 发表于 2011-7-26 16:40:43
你这样计算的结果几乎就是1了,前面是一个常数乘以10的-40次方哦
已有 1 人评分经验 热心指数 收起 理由
liuzhenzhu + 20 + 3 热心帮助其他会员

总评分: 经验 + 20  热心指数 + 3   查看全部评分

一份耕耘,一份收获。

板凳
mnemosyne 发表于 2011-7-26 16:54:24
补充:目的是求-1/namda*log(1+(exp(-namda*u)-1)*(exp(-namda*v)-1)/(exp(-namda)-1)))
其中namda约为90,namda*u,namda*v约为80,这样最后的分母近似为0
当u=v=1时,算式恒等于1,但算出来却变成Inf了

报纸
mnemosyne 发表于 2011-7-26 17:02:58
对啊,比如我想算exp(-90)/exp(-90),正确答案是1,但算出来却成了无穷,这个怎么弄 3# ywh19860616

地板
liuxin9023 发表于 2011-7-26 21:32:35
matlab有精度的 想精确点试试python python浮点数精度只受限于内存

7
matlab-007 发表于 2016-7-28 20:49:32
有两个方法:
1,用vpa函数,这个函数并不是简单地提高运算结果得显示精度,而是在整个计算过程中以你要求的精度进行计算。如以40位浮点数运算:
>>1-vpa(1.234e-25,40)
ans =

实际精确结果不到40位小数,故以世界结果显示。

2,用精确的符号计算
>> 1-sym(1.234e-25)

ans =

43556142965880123323311944376438289076761/43556142965880123323311949751266331066368
用一个分数表示,计算过程中没有舍入误差。
>> vpa(1-sym(1.234e-25),40)

ans =

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-10 22:25