| 查看: 319 | 回复: 3 | |||
| 当前主题已经存档。 | |||
[交流]
【求助】fortran程序出错了
|
|||
|
一个计算积分的程序如下: program integral_1 integer,parameter::nmax=12 real*8,parameter::pio2=6.2831852 external Func real*8::A=0.0,B=pio2,s write(*,'(1x,a)') 'integral of Func with 2^(n-1) points' write(*,'(1x,t7,a,t16,a)')'n','Approx.integral' do i=1,nmax call TRAPZD(Func,A,B,s,i) write(*,'(1x,i6,f12.6)')i,s end do end program integral_1 Function Func(x) real*8::x real*8::Func Func=sin(x)**4/x**3 end function Func subroutine TRAPZD(Func,a,b,s,n) integer,parameter::k1=selected_int_kind(9) integer(kind=k1)::tnm real*8::del,sum,x,a,b,s integer::n if(n==1)then s=0.5*(b-a)*(Func(a)+Func(b)) else tnm=2**(n-1) del=(b-a)/tnm x=a sum=0.0 do j=2,tnm x=x+del sum=sum+Func(x) end do s=0.5*(Func(a)+Func(b)+2.0*sum)*del end if end subroutine TRAPZD 运行结果如下: integral of Func with 2^(n-1) points n Approx.integral 1 NaN 2 NaN 3 NaN 4 NaN 5 NaN 6 NaN 7 NaN 8 NaN 9 NaN 10 NaN 11 NaN 12 NaN Press any key to continue 我感觉是计算范围越界,请高手指点!! |
» 猜你喜欢
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
实验室接单子
已经有7人回复
全日制(定向)博士
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复
Materials Today Chemistry审稿周期
已经有4人回复
参与限项
已经有3人回复
对氯苯硼酸纯化
已经有3人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复
老虎大王
木虫 (著名写手)
- 应助: 26 (小学生)
- 贵宾: 0.17
- 金币: 4774.1
- 散金: 8
- 红花: 42
- 帖子: 1361
- 在线: 215.2小时
- 虫号: 659094
- 注册: 2008-11-21
- 专业: 金属结构材料
2楼2009-04-13 10:59:02
3楼2009-04-13 11:21:10
4楼2009-04-13 11:32:08












回复此楼