📄 indexm.for
字号:
* INDEXM.FOR
*
SUBROUTINE INDEXM
*
*--the NM molecule numbers are arranged in order of the molecule groups
*--and, within the groups, in order of the cells and, within the cells,
*--in order of the sub-cells
*
INCLUDE 'dsmc0.h'
*
DO 200 MM=1,MNSG
IG(2,MM)=0
DO 50 NN=1,MNC
IC(2,NN,MM)=0
50 CONTINUE
DO 100 NN=1,MNSC
ISCG(2,NN,MM)=0
100 CONTINUE
200 CONTINUE
DO 300 N=1,NM
LS=IPS(N)
MG=ISP(LS)
IG(2,MG)=IG(2,MG)+1
MSC=IPL(N)
ISCG(2,MSC,MG)=ISCG(2,MSC,MG)+1
MC=ISC(MSC)
IC(2,MC,MG)=IC(2,MC,MG)+1
300 CONTINUE
*--number in molecule groups in the cells and sub-cells have been counte
M=0
DO 400 L=1,MNSG
IG(1,L)=M
*--the (start address -1) has been set for the groups
M=M+IG(2,L)
400 CONTINUE
DO 600 L=1,MNSG
M=IG(1,L)
DO 450 N=1,MNC
IC(1,N,L)=M
M=M+IC(2,N,L)
450 CONTINUE
*--the (start address -1) has been set for the cells
M=IG(1,L)
DO 500 N=1,MNSC
ISCG(1,N,L)=M
M=M+ISCG(2,N,L)
ISCG(2,N,L)=0
500 CONTINUE
600 CONTINUE
*--the (start address -1) has been set for the sub-cells
DO 700 N=1,NM
LS=IPS(N)
MG=ISP(LS)
MSC=IPL(N)
ISCG(2,MSC,MG)=ISCG(2,MSC,MG)+1
K=ISCG(1,MSC,MG)+ISCG(2,MSC,MG)
IR(K)=N
*--the molecule number N has been set in the cross-reference array
700 CONTINUE
RETURN
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -