Fortran Coder

查看: 54|回复: 6

[求助] 代码中的T1,T2,T3各代表什么?

[复制链接]

5

帖子

1

主题

0

精华

入门

F 币
38 元
贡献
19 点
发表于 2018-10-21 02:23:49 | 显示全部楼层 |阅读模式
程序代码如下:
[Fortran] 纯文本查看 复制代码
       Program GetBeta
       DIMENSION  MIU(3), ALPHA(6), BETA(10)
       REAL MIU, ALPHA, BETA, MIU0, ALPHA0, BETAX, BETAY, BETAZ,BETA0
       CHARACTER T1*20, T2*20, T3*20
       OPEN (UNIT=1, FILE='data.tmp', STATUS='OLD' )
       READ(1,50) T1
       READ(1,100) ( MIU(I),I=1,3)
       READ(1,50) T2
       READ(1,100) ( ALPHA(I),I=1,6)
       READ(1,50) T3
       READ(1,100) ( BETA(I),I=1,10)
       CLOSE(1)
50     FORMAT(A20)
100    FORMAT(5(1X,E15.8E2))
       MIU0=SQRT(MIU(1)*MIU(1)+MIU(2)*MIU(2)+MIU(3)*MIU(3))
       ALPHA0=(ALPHA(1)+ALPHA(3)+ALPHA(6))/3.0
       BETAX=(BETA(1)+BETA(3)+BETA(8))*0.6
       BETAY=(BETA(2)+BETA(4)+BETA(9))*0.6
       BETAZ=(BETA(5)+BETA(7)+BETA(10))*0.6
       BETA0=SQRT(BETAX*BETAX+BETAY*BETAY+BETAZ*BETAZ)
C       WRITE(*,200) ( MIU(I),I=1,3)
       WRITE(*,50) T1
       WRITE(*,200) MIU0
       WRITE(*,*) '================='
C       WRITE(*,200) ( ALPHA(I),I=1,6)
       WRITE(*,50) T2
       WRITE(*,200) ALPHA0
       WRITE(*,*) '================='
C       WRITE(*,200) ( BETA(I),I=1,10)
       WRITE(*,50) T3
       WRITE(*,200) BETA0
200    FORMAT(1X,E15.8E2)
       END

输入文件data.tmp
data.tmp的内容为:
Dipole Moment                              R   N=           3
-1.54209976E-12 -2.11588399E-02  6.85226980E+00
Polarizability                             R   N=           6
  1.15348532E+04  4.32559157E-10  1.15409689E+04 -4.75893804E-10  1.45277634E+01
  5.07035907E+03
HyperPolarizability                        R   N=          10
  3.10845204E-03  4.48541353E+04  8.15993688E-04 -9.73392674E+04 -1.35915088E+06
  1.77548795E-03 -1.27554399E+06  4.51227527E-03 -7.39290137E+04 -2.89194695E+06
Quadrupole Moment                          R   N=           6
  1.05011230E+01  9.67969814E+00 -2.01808211E+01 -6.18949335E-12  5.97309973E-13
  1.66138310E-01


由于基础差,读代码没有读懂,请问getbeta.f中的T1T2T3各代表什么呢? 望精通编程的老手指点指点我,谢谢!


回复

使用道具 举报

5

帖子

1

主题

0

精华

入门

F 币
38 元
贡献
19 点
 楼主| 发表于 2018-10-21 02:39:27 | 显示全部楼层
请问分别是 Dipole Moment ,Polarizability,和HyperPolarizability  三个字符串吗?

1308

帖子

12

主题

5

精华

论坛跑堂

Fcode跑堂伙计

F 币
132 元
贡献
204 点

新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

发表于 2018-10-21 10:40:31 | 显示全部楼层
是的
回复

使用道具 举报

5

帖子

1

主题

0

精华

入门

F 币
38 元
贡献
19 点
 楼主| 发表于 2018-10-21 15:37:58 | 显示全部楼层
请问T1*20,T2*20,T3*20是什么意思呢

5

帖子

1

主题

0

精华

入门

F 币
38 元
贡献
19 点
 楼主| 发表于 2018-10-21 15:38:44 | 显示全部楼层
谢谢了!
回复

使用道具 举报

272

帖子

1

主题

0

精华

宗师

F 币
1521 元
贡献
1024 点
发表于 2018-10-21 15:46:50 | 显示全部楼层
oyljw 发表于 2018-10-21 15:37
请问T1*20,T2*20,T3*20是什么意思呢

星号后面表示字符串变量的长度,也就是最多存储20个字符。

5

帖子

1

主题

0

精华

入门

F 币
38 元
贡献
19 点
 楼主| 发表于 2018-10-21 16:08:13 | 显示全部楼层
非常感谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2018-11-14 06:34

Powered by Discuz! X3.2

© 2001-2017 Comsenz Inc.

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