I did some code compacting to make it more suitable for more than 7 layers.

This commit is contained in:
salman 2013-03-28 14:21:58 +00:00
parent 1cdc02a760
commit 0dd05ea28f

View File

@ -246,7 +246,7 @@ C These parameters are related to the maximum number of layers
& ,MAXNLm15),MEAGS(102,12,22,MAXNLm15) ,MEASL(75,21,MAXNLm15) & ,MAXNLm15),MEAGS(102,12,22,MAXNLm15) ,MEASL(75,21,MAXNLm15)
INTEGER*4 MEAST(102,22,MAXNLm15),MAGST(62,22,MAXNLm15),MEASTL(75 INTEGER*4 MEAST(102,22,MAXNLm15),MAGST(62,22,MAXNLm15),MEASTL(75
& ,21,MAXNLm15) & ,21,MAXNLm15)
INTEGER*4 NJ(MAXNL),JT(MAXNL),ILD(MAXNL) INTEGER*4 NJ(MAXNL),JT(MAXNL),ILD(MAXNL),NJJ
INTEGER*4 LLL(64),JJJ(64),IK(64) INTEGER*4 LLL(64),JJJ(64),IK(64)
INTEGER*4 me(5000),nli(MAXNL),irpl(MAXNL) INTEGER*4 me(5000),nli(MAXNL),irpl(MAXNL)
INTEGER*4 IT,NPROJ INTEGER*4 IT,NPROJ
@ -694,14 +694,6 @@ C I am guessing NJ(I) is the number of elements in layer I
LJ=LJ+NJ(I) LJ=LJ+NJ(I)
enddo enddo
C JT(3) = JT(2)+NJ(2)
C JT(4) = JT(3)+NJ(3)
C JT(5) = JT(4)+NJ(4)
C JT(6) = JT(5)+NJ(5)
C JT(7) = JT(6)+NJ(6)
C LJ = NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+NJ(6)+NJ(7)
XX(1)=DX(1) XX(1)=DX(1)
DO I=2,L DO I=2,L
XX(I)=XX(I-1)+DX(I) XX(I)=XX(I-1)+DX(I)
@ -722,48 +714,20 @@ C LJ = NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+NJ(6)+NJ(7)
FM(LL) = AM(LL)*M2(LL)/(Z1*Z2(LL)*E2*(M1+M2(LL))) FM(LL) = AM(LL)*M2(LL)/(Z1*Z2(LL)*E2*(M1+M2(LL)))
EPS0(LL) = FM(LL)*E0 EPS0(LL) = FM(LL)*E0
ENDDO ENDDO
DO J = 1,NJ(1)
ZZ(J) = ZT(1,J) C Loop over all defined layers
TM(J) = MT(1,J) NJJ=0
DI(J) = ED(1,J) do I=1,L
EP(J) = BE(1,J) C For each layer calculate the following
ENDDO do J=1,NJ(I)
DO J = 1,NJ(2) ZZ(NJJ+J) = ZT(I,J)
ZZ(NJ(1)+J) = ZT(2,J) TM(NJJ+J) = MT(I,J)
TM(NJ(1)+J) = MT(2,J) DI(NJJ+J) = ED(I,J)
DI(NJ(1)+J) = ED(2,J) EP(NJJ+J) = BE(I,J)
EP(NJ(1)+J) = BE(2,J) enddo
ENDDO NJJ=NJJ+NJ(I)
DO J = 1,NJ(3) enddo
ZZ(NJ(1)+NJ(2)+J) = ZT(3,J)
TM(NJ(1)+NJ(2)+J) = MT(3,J)
DI(NJ(1)+NJ(2)+J) = ED(3,J)
EP(NJ(1)+NJ(2)+J) = BE(3,J)
ENDDO
DO J = 1,NJ(4)
ZZ(NJ(1)+NJ(2)+NJ(3)+J) = ZT(4,J)
TM(NJ(1)+NJ(2)+NJ(3)+J) = MT(4,J)
DI(NJ(1)+NJ(2)+NJ(3)+J) = ED(4,J)
EP(NJ(1)+NJ(2)+NJ(3)+J) = BE(4,J)
ENDDO
DO J = 1,NJ(5)
ZZ(NJ(1)+NJ(2)+NJ(3)+NJ(4)+J) = ZT(5,J)
TM(NJ(1)+NJ(2)+NJ(3)+NJ(4)+J) = MT(5,J)
DI(NJ(1)+NJ(2)+NJ(3)+NJ(4)+J) = ED(5,J)
EP(NJ(1)+NJ(2)+NJ(3)+NJ(4)+J) = BE(5,J)
ENDDO
DO J = 1,NJ(6)
ZZ(NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+J) = ZT(6,J)
TM(NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+J) = MT(6,J)
DI(NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+J) = ED(6,J)
EP(NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+J) = BE(6,J)
ENDDO
DO J = 1,NJ(7)
ZZ(NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+NJ(6)+J) = ZT(7,J)
TM(NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+NJ(6)+J) = MT(7,J)
DI(NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+NJ(6)+J) = ED(7,J)
EP(NJ(1)+NJ(2)+NJ(3)+NJ(4)+NJ(5)+NJ(6)+J) = BE(7,J)
ENDDO
DO I=1,L DO I=1,L
COM(1,I) = CO(I,1) COM(1,I) = CO(I,1)
DO J=1,NJ(I)-1 DO J=1,NJ(I)-1
@ -3595,30 +3559,7 @@ c
DO i=2,COLCOUNT DO i=2,COLCOUNT
WRITE(33,'(A246)')COLUMN(i) WRITE(33,'(A246)')COLUMN(i)
ENDDO ENDDO
IF(l.EQ.1) THEN
number_in_layer(1)=IIM
DO k=2,7
number_in_layer(k)=0
ENDDO
ELSEIF(l.EQ.2) THEN
DO k=3,7
number_in_layer(k)=0
ENDDO
ELSEIF(l.EQ.3) THEN
DO k=4,7
number_in_layer(k)=0
ENDDO
ELSEIF(l.EQ.4) THEN
DO k=5,7
number_in_layer(k)=0
ENDDO
ELSEIF(l.EQ.5) THEN
DO k=6,7
number_in_layer(k)=0
ENDDO
ELSEIF(l.EQ.6) THEN
number_in_layer(7)=0
ENDIF
WRITE(33,7801)E0keV,EsigkeV,ALPHA,ALPHASIG,NH,IIM,IB,IT,tryE,negE WRITE(33,7801)E0keV,EsigkeV,ALPHA,ALPHASIG,NH,IIM,IB,IT,tryE,negE
& ,(number_in_layer(k),k=1,7),FIX0,SIGMAX,FIB0,SIGMAB,FIT0 & ,(number_in_layer(k),k=1,7),FIX0,SIGMAX,FIB0,SIGMAB,FIT0
& ,SIGMAT,epsilon,prcoeff & ,SIGMAT,epsilon,prcoeff