24小时热门版块排行榜    

查看: 1512  |  回复: 3

xiuxialy

新虫 (初入文坛)

[求助] fortran循环求助

program ex2
  implicit none
  integer::ln,Nrank,m,Nmax,i
  complex(kind=16),allocatable::a(,b(,T_mat(:,
  ln=21
  Nrank=ln
  allocate(a(ln),b(ln))
  do i=1,ln
    a(i)=2*i
    b(i)=3*i
  end do
  do m=0,Nrank
    if (m==0)then
        Nmax=Nrank
    else
        Nmax=Nrank-m+1
    end if
    allocate(T_mat(2*Nmax,2*Nmax))
    print *,m
    read(*,*)
    call Tmat(Nmax,ln,a,b,T_mat)
  end do
end
!*************************************************************!   
subroutine Tmat(Nmax,Nrank,a,b,T)
  implicit none
  integer::Nrank,Nmax,i,j
  complex(kind=16)::a(Nrank),b(Nrank),T(2*Nmax,2*Nmax)
  do i=1,2*Nmax
    do j=1,2*Nmax
      T(i,j)=0.0
      if(i==j)then
        if(j<=Nmax) then
          T(i,j)=a(i+Nrank-Nmax)
        else
          T(i,j)=b(Nrank+j-2*Nmax)
        end if
      end if
    end do
  end do
end subroutine Tmat
为什么循环中只能输出0?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

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

pippi6

铁杆木虫 (著名写手)

工程和科学数值计算咨询

【答案】应助回帖

感谢参与,应助指数 +1
因为 read(*,*) 在等待 数据
  另外,你在do loop 里重复做 allocate 有问题,应把
    allocate(T_mat(2*Nmax,2*Nmax))
移到 do loop 之前。
后面还有 数组越界之类,问题多多,需要详细查。
2楼2013-06-29 17:12:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiuxialy

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by pippi6 at 2013-06-29 17:12:59
因为 read(*,*) 在等待 数据
  另外,你在do loop 里重复做 allocate 有问题,应把
    allocate(T_mat(2*Nmax,2*Nmax))
移到 do loop 之前。
后面还有 数组越界之类,问题多多,需要详细查。

谢谢,昨天发帖后我编了个小程序发现这个问题了,确实是这样,不过仍然很感谢!
3楼2013-06-30 11:15:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiuxialy

新虫 (初入文坛)

PROGRAM gmm01f
      implicit double precision (a-h,o-z)
      include 'gmm01f.par'
      parameter (nmp=np*(np+2),nmp0=(np+1)*(np+4)/2)
      parameter (NXMAX=3000,nangmax=181,MOR=181,ncmax=360)
      parameter (ni0=np*(np+1)*(2*np+1)/3+np*np)
      parameter (ng0=np*(2*np**3+10*np**2+19*np+5)/6)       
      parameter (nrc=4*np*(np+1)*(np+2)/3+np)
      parameter (nij=nLp*(nLp-1)/2)
      integer u,v,u0,nmax(nLp),uvmax(nLp),ind(nLp),ind2(nLp)
      double precision k,lnfacd,r0(6,nLp),x(nLp),dang(nangmax),
     +   r00(3,nLp),rsr0(NXMAX),rsi0(NXMAX),
     +   rsx0(NXMAX),px0(NXMAX),w1(np),w2(np),w3(np),w4(np),
     +   rsr(np,nLp),rsi(np,nLp),rsx(np,nLp),px(np,nLp),betar(MOR),
     +   thetr(MOR),phair(MOR),smue(4,4),mue(4,4,ncmax,nangmax),
     +   besj(0:2*np+1),besy(0:2*np+1),i11(nangmax),
     +   i21(nangmax),i22(nangmax),i12(nangmax),inat(nangmax),
     +   pol(nangmax),cscaxi(nLp),cscayi(nLp),cextxi(nLp),
     +   cextyi(nLp),cabsxi(nLp),cabsyi(nLp),cexti(nLp),cabsi(nLp),
     +   cscai(nLp),assymi(nLp),assymxi(nLp),assymyi(nLp),
     +   cprxi(nLp),cpryi(nLp),cpri(nLp),drot(nrc,nij),
     +   c0i(nLp),c1i(nLp),confg(5,nij)
      complex*16 A,B,cmz,Aj,Bj,A2,B2,Aj2,Bj2,A0,B0,ephi,ci,cin,
     +   atr0(ni0,nij),btr0(ni0,nij),atr(2,np,nmp),at(nmp),bt(nmp),
     +   atr1(ni0,nij),btr1(ni0,nij),ek(np,nij),ref(nLp),ref0(nLp),
     +   p0(nLp,nmp),q0(nLp,nmp),an(np),bn(np),aMie(nLp,np),
     +   bMie(nLp,np),B2i(nLp),
     +         as(nLp,nmp),bs(nLp,nmp),as0(nLp,nmp),bs0(nLp,nmp),
     +   asc(nLp,nmp),bsc(nLp,nmp),as1(nLp,nmp),bs1(nLp,nmp),
     +   ast(nLp,nmp),bst(nLp,nmp),asp(nLp,nmp),bsp(nLp,nmp),
     +   asv(nLp,nmp),bsv(nLp,nmp),
     +   s2x(ncmax,nangmax),s4x(ncmax,nangmax),
     +         s3y(ncmax,nangmax),s1y(ncmax,nangmax),
     +         atj(nmp),btj(nmp),py0(NXMAX),py(NXMAX),dpy(NXMAX)
      CHARACTER FLNAME*20,fileout*20,fileout1*19,fileout2*21,
     +   tailn*3,cnr2*2,cnr3*3,cnr1*1,flout*22
      COMMON/MIESUB/ twopi,pih
      common/rot/bcof(0:np+2),dc(-np:np,0:nmp)
      common/fnr/fnr(0:2*(np+2))
      common/pitau/pi(nmp0),tau(nmp0)
      common/tran/atr
      common/ig0/iga0(ni0)
      common/g0/ga0(ng0)
      common/cofmnv0/cof0(ni0)
      common/crot/cofsr(nmp)
      pih = dacos(0.d0)
      twopi = 4.d0*pih
      pione  = 2.d0*pih
      ci=dcmplx(0.d0,1.d0)
      cin=dcmplx(0.d0,-1.d0)
      gcs=0.d0
      gcv=0.d0
      idpq=0       
      OPEN(UNIT=1,FILE='C:\Users\lenovo\Desktop\gmm01f.in',status='old')
      READ(1,'(a20)') FLNAME
程序编译正确,但若在最后一行前加read(*,*),运行屏幕会停止,而加在最后一行后运行屏幕会一闪而过,帖子可能有点长,但都是定义部分,请各位大牛指点一下
4楼2013-09-05 21:08:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xiuxialy 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 93BebMhtakh前后11位开头都是大写 +4 且听虎啸 2026-08-17 5/250 2026-08-18 00:49 by 蔡棒棒菂
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +37 医学老男孩 2026-08-13 86/4300 2026-08-18 00:18 by longsantaizi
[基金申请] 感觉是下周放榜了 +6 angus9576 2026-08-17 11/550 2026-08-17 23:57 by angus9576
[基金申请] filecode=后面第一个是大写字母 +8 wangze12014 2026-08-14 10/500 2026-08-17 17:05 by xter9665
[基金申请] 时间戳变了,能看出什么问题? +4 基诺咪客 2026-08-17 4/200 2026-08-17 16:10 by Vivilian
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +12 Ldrop2023 2026-08-13 15/750 2026-08-17 15:02 by 小豌豆_发芽
[基金申请] 时间戳又变了8-15 +13 archvillain 2026-08-15 25/1250 2026-08-16 20:13 by zhaosm1982
[基金申请] 2027广东省杰青 +3 奶牛小黑 2026-08-15 6/300 2026-08-16 20:07 by 奶牛小黑
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +3 Tide man 2026-08-14 3/150 2026-08-16 17:47 by jurkat.1640
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] Filecode 又变了,巨变 +3 WH3796 2026-08-12 4/200 2026-08-13 14:13 by 小木虫6752397
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
信息提示
请填处理意见