24小时热门版块排行榜    

CyRhmU.jpeg
查看: 3732  |  回复: 9

宇天旅梦

铜虫 (小有名气)

[求助] exp中有循环变量,结果出现infinity,怎么处理

输出结果为
<-infinity,infinity>
<-infinity,infinity>
<-infinity,infinity>
……          ……
问题1:这怎么处理?
问题2:结果为什么会有两列,而不是一列?

(初学FORTRAN,还请高手指教)

代码如下:

      program abc
      real bx(100),by(100)

      integer k,n
      complex i,q
        open(10,file='haha111.dat',status='unknown')
        i=(0,1)
                                 
         do 3 n=0,99
            bx(n+1)=bx(n)+1
            by(n+1)=by(n)+2
3        continue
      
      do 2 k=1,99
        p=sqrt((sqrt(bx(k)**2+by(k)**2)-50/6.582122e-16)**2-by(k)**2)
   
      q=exp(i*2+p)

        write(*,*)q       
2     continue
      close(10,status='keep')
        end
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jerkwin

专家顾问 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
do 3 n=0,99
            bx(n+1)=bx(n)+1
            by(n+1)=by(n)+2
3        continue
循环有问题, bx(0)没有定义
两列那是复数的实部和虚部
2楼2013-09-03 07:03:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

宇天旅梦

铜虫 (小有名气)

引用回帖:
2楼: Originally posted by jerkwin at 2013-09-03 07:03:11
do 3 n=0,99
            bx(n+1)=bx(n)+1
            by(n+1)=by(n)+2
3        continue
循环有问题, bx(0)没有定义
两列那是复数的实部和虚部

改了一下,定义bx(0)=1
                     by(0)=10
可还是出现相同的情况
3楼2013-09-03 08:29:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bennett_14

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
q也没有定义啊,q是啥???

[ 发自小木虫客户端 ]
君子当自强不息,死而后已!
4楼2013-09-03 08:31:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jerkwin

专家顾问 (正式写手)

【答案】应助回帖

引用回帖:
3楼: Originally posted by 宇天旅梦 at 2013-09-03 08:29:39
改了一下,定义bx(0)=1
                     by(0)=10
可还是出现相同的情况...

50/6.582122e-16
这个数值太大, 溢出了
我怀疑你的公式不对, 单位搞混了
5楼2013-09-03 08:46:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

宇天旅梦

铜虫 (小有名气)

引用回帖:
4楼: Originally posted by bennett_14 at 2013-09-03 08:31:18
q也没有定义啊,q是啥???

定义了呀、
complex i,q
6楼2013-09-03 08:47:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

宇天旅梦

铜虫 (小有名气)

引用回帖:
5楼: Originally posted by jerkwin at 2013-09-03 08:46:25
50/6.582122e-16
这个数值太大, 溢出了
我怀疑你的公式不对, 单位搞混了...

公式是没问题的,实际公式里q不止等于这些,还有其它的,我分段检查了,就是这一项上出现问题了
7楼2013-09-03 08:49:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jerkwin

专家顾问 (正式写手)

【答案】应助回帖

你就没理解我的意思
8楼2013-09-03 08:54:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

宇天旅梦

铜虫 (小有名气)

引用回帖:
8楼: Originally posted by jerkwin at 2013-09-03 08:54:56
你就没理解我的意思

那是怎么?请详细说一下
9楼2013-09-03 09:07:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

绿遍山原

铜虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
引用回帖:
9楼: Originally posted by 宇天旅梦 at 2013-09-03 09:07:44
那是怎么?请详细说一下...

你的式子里50/6.582122e-16比其他项大很多,所以p基本就是这个值附近,所以q指数项的实部基本就是50/6.582122e-16,指数项这么大的数值肯定溢出了。
要夢遊,不要催眠。
10楼2013-09-03 10:56:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 宇天旅梦 的主题更新
信息提示
请填处理意见