helen818 发表于 2010-4-23 21:58:09

如何改大MATLAB中默认无穷大问题

inf 在matlab中代表无穷大,比如默认的exp(100)就认为是inf,但是我在计算的时候这个数还不够大,我想把它改成更大的,如exp(500)才可以认为是inf。
我目前算的大概在exp(300)左右,每次都报错说:overflow.
用的是MATLAB 7.9.0 (R2009b)
请教如何修改?如何解决这个问题?
非常感谢!

messenger 发表于 2010-4-23 22:06:28

这么大数最好在算法上做一些处理,比如在计算之前先除以10^5。或者试试64位的Matlab,前提是你的计算机及操作系统也是64位的。

helen818 发表于 2010-4-23 22:44:20

我是要输入状态方程的ABCD矩阵,然后做运算,只是A阵如此大,我现在处理的是,除以exp(200),BCD阵我目前还没处理,但是BCD阵的数值相对A阵的数值来说很小,都是exp(10),除以exp(200)后,将会变得非常小,应该是超出MATLAB的负无穷了吧。
有地方调整这个无穷大值吗?
谢谢LS

messenger 发表于 2010-4-24 19:55:54

Matlab的Inf一般是浮点表示的最大数,只与你的机器配置有关系,不能更改。

xieyubing734 发表于 2010-5-8 18:07:41

学习了,给罚函数的话,这不可以了调节下~
页: [1]
查看完整版本: 如何改大MATLAB中默认无穷大问题