24小时热门版块排行榜    

查看: 163  |  回复: 2
当前主题已经存档。

oytxtu

铁杆木虫 (正式写手)

[交流] 【求助】哪位程序高手帮我看看,这个程序(已获得助)

这是一个计算龙格-库塔的程序
老是出现:
Linking...
rk.obj : error LNK2001: unresolved external symbol _GRKT1@36
Debug/rk.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
这个错误

program rk

  dimension y(3),d(3),z(3,11),b(3)
  double precision y,d,z,t,h,b,m,n
  integer i,j
  t=0.0
  y(1)=-1.0
  y(2)=0.0
  y(3)=1.0
  h=0.01
  m=3
  n=11
  call grkt1(t,y,m,h,n,z,f,d,b)
  write(*,*)
  do 10 i=1,n
    t=(i-1)*h
    write(*,50) t
    write(*,100) (z(j,i),j=1,m)
    write(*,*)
10  continue
50  format(1x,'t=',f7.3)
100 format(1x,'y(1)=',d13.6,3x,'y(2)=',d13.6,3x,'y(3)=',d13.6)
end

subroutine grekt1(t,y,m,h,n,z,f,d,b)
  dimension y(m),d(m),z(m,n),a(4),b(m)
  double precision y,d,z,a,b,t,h,x,tt
  a(1)=h/2.0
  a(2)=a(1)
  a(3)=h
  a(4)=h
  do 5 i=1,m
5 z(i,1)=y(i)
  x=t
  do 100 j=2,n
     call f(t,y,m,d)
         do 10 i=1,m
10   b(i)=y(i)
     do 30 k=1,3
           do 20 i=1,m
             y(i)=z(i,j-1)+a(k)*d(i)
                 b(i)=b(i)+a(k+1)*d(i)/3.0
20      continue
        tt=t+a(k)
                call f(tt,y,m,d)
30      continue
        do 40 i=1,m
40      y(i)=b(i)+h*d(i)/6.0
        do 50 i=1,m
50      z(i,j)=y(i)
        t=t+h
100     continue
        t=x
                return
end subroutine

subroutine f(t,y,m,d)
  dimension y(m),d(m)
  double precision y,d,t
  d(1)=y(2)
  d(2)=-y(1)
  d(3)=-y(3)
  return
end subroutine

[ Last edited by kuhailangyu on 2008-12-9 at 10:45 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhougc

木虫 (正式写手)

黑社会老大


jghe(金币+1,VIP+0):谢谢你提供的帮助!
subroutine 中函数名grekt1
主函数中 call grkt1
--------------------------------------------------------------------------看着我表情呆滞的头像,记住我!这个社会已经让我没办法笑出来.请各位版主按时缴...
2楼2008-10-09 16:13:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

oytxtu

铁杆木虫 (正式写手)

呵呵,谢谢哦!
好粗心的啊!!
3楼2008-10-09 16:14:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 oytxtu 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见