PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Fortran
[问题] 数值超过正负300多次方解决办法?
楼主:
r1000000
(狗屁昭)
2016-08-08 20:41:23
大家好,目前我使用的是XE2013 with VS2012
目前碰到了一个问题是使用imsl计算bessel function
当回传数值大于320次方时程式直接shut down
举例来说
MA(I,J)=DBSI0(LN1(I)*RSD)/(LN1(I)*DBSI1(LN1(I)*RSD))
其中DBSI0与DBSI1是imsl的double precision 的 bessel function指令
当LN1(I)*RSD的值大于700时,会导致DBSI0与DBSI1回传的值分别都大于320次方
实际上在数学运算时MA(I,J)算出来差不多10的-2到-3之间,但却会因为分母与分子回传
的值大于320次方而导致程式终止
有没有先进能提供方法让数值超过320次方依然能运算?
或是有什么解决方法,先谢谢各位
作者:
sexyrickysky
(花心只是掩饰内心的空虚)
2016-08-09 00:54:00
为什么不先取对数......
作者:
noonee
(我和烤肉间只差一撮孜然)
2016-08-09 11:14:00
找一个函数先做mapping啊 例如一楼说的
作者:
kerwinhui
(kezza)
2016-08-24 14:23:00
判断LN1(I)*RSD太大时用asymptotic series算啊
作者:
ottoli
(世界的尽头)
2016-08-31 17:57:00
试试这个?
http://myweb.lmu.edu/dmsmith/FMLIB.html
这个函式库可以算很大的数值.不知道可否满足你的需要
继续阅读
[问题] 辨别二维区块的方式?
ej03xu3
Re: [问题] Fortran可以矩阵中放进矩阵吗?
PTT0207445
[问题] Fortran可以矩阵中放进矩阵吗?
etu4315
[问题] 请问如何执行.exe
windgaia
Re: [问题]fortran95 棒球游戏
philodi
[问题] if用法
afe812
[问题]fortran95 棒球游戏
bla880004
[问题] 关于联集和交集
lindazoro
[问题] CVF 6.6 (32-bit) 如何连结 MS Fortran5.
versailles
[问题] 数值 底线的意思
afe812
Links
booklink
Contact Us: admin [ a t ] ucptt.com