Fortran Coder

查看: 120|回复: 2

[求助] 参数未赋值

[复制链接]

6

帖子

2

主题

0

精华

入门

F 币
33 元
贡献
19 点
发表于 2020-9-27 16:31:12 | 显示全部楼层 |阅读模式
最近看一篇文献,里面有很老的一个程序,想着实现一下,但有个地方卡住了,想请教大佬,是他写错了,还是我没看懂
subroutine SCATTER(RESPONSE,DIAMETER,STEPNUM)
      PARAMETER ( ndim = 15 )  
      PARAMETER ( MSTEP = 200 )  
      INTEGER STEPNUM  
      DOUBLE PRECISION AUX(ndim),THETALO, THETAHI, REFMED  
      DOUBLE PRECISION REFREAL, REFIMAG  
      DOUBLE PRECISION PI,WAVELEN,DIALOW,DIASTEP,TOL,X  
      DOUBLE PRECISION RADIUS,R,ETA,BETA,CHI,SUM  
      DOUBLE PRECISION F,DIAMETER(MSTEP),FACT  
      DOUBLE PRECISION BETADEG, RESPONSE(MSTEP),RES(2,MSTEP)  
      INTEGER OPTION  
      COMPLEX REFREL  
      CHARACTER *80 FILENAME  
      LOGICAL THERE  
      COMMON /SCATPI/ PI  
      COMMON/MIE/X,REFREL,BETA,ETA,CHI,OPTION  
      DOUBLE PRECISION MIEFUN  
      EXTERNAL MIEFUN   
      PI=ACOS(-1.0)
C     Inputs  
      REFMED=1.00028  
      WAVELEN=0.633  
      TOL=1E-4  
      WRITE (6,*) 'Refractive index of the particle, real part? '  
      READ (5,*) REFREAL  
      WRITE (6,*) 'Imaginary part? '  
      READ (5,*) REFIMAG  
      REFIMAG=0
      OPTION=1  
      ETADEG=90  
      CHIDEG=90  
      ETA=ETADEG*PI/180.  
      CHI=CHIDEG*PI/180.
      BETADEG=53.0  
      I=1
3333  BETA=BETADEG*PI/180.0  
      THETALO=ETA-BETA  
      THETAHI=ETA+BETA  
      REFREL=CMPLX(REFREAL,REFIMAG)/REFMED
      F=(DIAHIGH-DIALOW)/(STEPNUM-1.D0)  
      FACT = WAVELEN * WAVELEN * 1.E-8 / ( 2. * PI * PI )  
      DO 6000 J=1,STEPNUM
c     DIAMETER(J)=DIALOW+(J-1)*F  
      X=PI*DIAMETER(J)*REFMED/WAVELEN

这个子程序还没完,但我到这里就觉得不对了,这个STEPNUM完全没有给出任何值啊,如果是默认值0的话,怎么可以带入循环呢

回复

使用道具 举报

7

帖子

0

主题

0

精华

入门

F 币
70 元
贡献
43 点
发表于 2020-9-27 18:54:43 | 显示全部楼层
这是参数啊,调用的时候对应的实参就有值了。

6

帖子

2

主题

0

精华

入门

F 币
33 元
贡献
19 点
 楼主| 发表于 2020-9-27 19:06:10 | 显示全部楼层
七星彩 发表于 2020-9-27 18:54
这是参数啊,调用的时候对应的实参就有值了。

懂了,一点就通,多谢大佬
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

QQ|捐赠本站|Archiver|关于我们 About Us|群聊|Fcode

GMT+8, 2020-10-28 02:08

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表