1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
|
*DECK EDIPRR
SUBROUTINE EDIPRR(IPRINT,NL,ITRANC,NGCOND,NMERGE,ILEAKS,NW,NTAUXT,
> B2,VOLMER,NENER,WENERG,RATECM,FLUXCM,SCATTD)
*
*-----------------------------------------------------------------------
*
*Purpose:
* Print reaction rates.
*
*Copyright:
* Copyright (C) 2002 Ecole Polytechnique de Montreal
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version
*
*Author(s): G. Marleau
*
*Parameters: input
* IPRINT print level;
* = 0 no print;
* = 1 print fluxes;
* = 2 1+print reaction rates;
* = 3 2+print homogenized cross sections.
* NL number of Legendre orders.
* ITRANC type of transport correction.
* NGCOND number of condensed groups.
* NMERGE number of merged regions.
* ILEAKS type of leakage calculation:
* = 0 no leakage;
* = 1 homogeneous leakage (Diffon);
* = 2 isotropic streaming (Ecco);
* = 3 anisotropic streaming (Tibere);
* = 10 isotropic diffusion coefficients recovered from input
* macrolib;
* = 11 anisotropic diffusion coefficients recovered from input
* macrolib.
* NW type of weighting for PN cross section info (=0 P0; =1 P1).
* NTAUXT number of reaction rate edits.
* B2 square buckling:
* for ILEAKS=1,2: B2(4) is homogeneous;
* for ILEAKS=3: B2(1),B2(2),B2(3) are directional heterogeneous
* and B2(4) is homogeneous.
* VOLMER volume of region merged.
* NENER number of energy groups limits.
* WENERG energy group limits.
* RATECM averaged region/group cross sections:
* = RATECM(*,1) = total P0;
* = RATECM(*,2) = total P1;
* = RATECM(*,NW+2) = absorption;
* = RATECM(*,NW+3) = fission;
* = RATECM(*,NW+4) = fixed sources / productions;
* = RATECM(*,NW+5) = leakage;
* = RATECM(*,NW+6) = total out of group scattering;
* = RATECM(*,NW+7) = diagonal scattering x-s;
* = RATECM(*,NW+8) = chi;
* = RATECM(*,NW+9) = wims type transport correction;
* = RATECM(*,NW+10) = x-directed leakage;
* = RATECM(*,NW+11) = y-directed leakage;
* = RATECM(*,NW+12) = z-directed leakage;
* = RATECM(*,NW+13) = nu-sigf for delayed neutrons;
* = RATECM(*,NW+13+NDEL) = fission spectra for delayed neutrons.
* FLUXCM integrated region/group fluxes:
* = FLUXCM(*,1) = fluxes P0;
* = FLUXCM(*,2) = fluxes P1.
* SCATTD scattering rates.
*
*-----------------------------------------------------------------------
*
*----
* SUBROUTINE ARGUMENTS
*----
INTEGER IPRINT,NL,ITRANC,NGCOND,NMERGE,ILEAKS,NW,NTAUXT,NENER
REAL B2(4),VOLMER(NMERGE),WENERG(NGCOND+1),
> RATECM(NMERGE,NGCOND,NTAUXT),FLUXCM(NMERGE,NGCOND,NW+1)
DOUBLE PRECISION SCATTD(NMERGE,NGCOND,NGCOND,NL)
*----
* LOCAL VARIABLES
*----
CHARACTER APG*3
PARAMETER (IUNOUT=6,APG=' > ')
DOUBLE PRECISION SCATWG,SCATTN
REAL, ALLOCATABLE, DIMENSION(:,:) :: FLDMC
*----
* SCRATCH STORAGE ALLOCATION
* FLDMC flux merged and condensed.
*----
ALLOCATE(FLDMC(NMERGE,NGCOND))
*----
* COMPUTE AVERAGE FLUX
*----
DO 224 IGRC=1,NGCOND
DO 225 IKK=1,NMERGE
FLDMC(IKK,IGRC)=FLUXCM(IKK,IGRC,1)/VOLMER(IKK)
225 CONTINUE
224 CONTINUE
*----
* PRINT REACTION RATES
*----
WRITE(IUNOUT,6000)
WRITE(IUNOUT,6001) (JJ,VOLMER(JJ),JJ=1,NMERGE)
IF( (NENER.GT.0) .AND. (IPRINT.GT.1) ) THEN
WRITE(IUNOUT,6002) (WENERG(IG),APG,IG,APG,IG=1,NGCOND),
> WENERG(NGCOND+1)
ENDIF
WRITE(IUNOUT,6003)
DO 154 IGR=1,NGCOND
IF(IPRINT.EQ.1) THEN
WRITE(IUNOUT,6010) IGR
WRITE(IUNOUT,6012) (FLUXCM(IKK,IGR,1),IKK=1,NMERGE)
WRITE(IUNOUT,6011)
WRITE(IUNOUT,6012) (FLDMC(IKK,IGR),IKK=1,NMERGE)
GO TO 154
ENDIF
IF((ILEAKS.EQ.1).OR.(ILEAKS.EQ.2).OR.(ILEAKS.EQ.10)) THEN
WRITE(IUNOUT,6013) IGR
ELSE
WRITE(IUNOUT,6014) IGR
ENDIF
DO 155 IKK=1,NMERGE
IF(VOLMER(IKK).EQ.0.0) GO TO 155
*----
* UNCOMMENT THE 2 LINES TO PERFORM TRANSPORT CORRECTION
*----
TOTAL=RATECM(IKK,IGR,1)
SCATWG=SCATTD(IKK,IGR,IGR,1)
IF(ITRANC.NE.0) THEN
* TOTAL=TOTAL-RATECM(IKK,IGR,NW+9)
* SCATWG=SCATWG-RATECM(IKK,IGR,NW+9)
ENDIF
*
SCATTN=0.0D0
DO 153 JGR=1,NGCOND
IF(JGR.NE.IGR) SCATTN=SCATTN+SCATTD(IKK,JGR,IGR,1)
153 CONTINUE
IF((ILEAKS.EQ.1).OR.(ILEAKS.EQ.2).OR.(ILEAKS.EQ.10)) THEN
WRITE(IUNOUT,6020) IKK,FLDMC(IKK,IGR),FLUXCM(IKK,IGR,1),
> TOTAL,RATECM(IKK,IGR,NW+2),RATECM(IKK,IGR,NW+3),
> RATECM(IKK,IGR,NW+5)*B2(4),RATECM(IKK,IGR,NW+4),SCATWG,
> SCATTN
ELSE
WRITE(IUNOUT,6021) IKK, FLDMC(IKK,IGR),FLUXCM(IKK,IGR,1),
> TOTAL,RATECM(IKK,IGR,NW+2),RATECM(IKK,IGR,NW+3),
> RATECM(IKK,IGR,NW+4),SCATWG,SCATTN
ENDIF
155 CONTINUE
IF((ILEAKS.EQ.3).OR.(ILEAKS.EQ.11)) THEN
WRITE(IUNOUT,6022)
DO 156 IKK=1,NMERGE
IF(VOLMER(IKK).EQ.0.0) GO TO 156
WRITE(IUNOUT,6023) IKK,RATECM(IKK,IGR,NW+10)*B2(1)+
> RATECM(IKK,IGR,NW+11)*B2(2)+RATECM(IKK,IGR,NW+12)*B2(3),
> RATECM(IKK,IGR,NW+10)*B2(1),RATECM(IKK,IGR,NW+11)*B2(2),
> RATECM(IKK,IGR,NW+12)*B2(3),RATECM(IKK,IGR,NW+5)*B2(4)
156 CONTINUE
ENDIF
154 CONTINUE
*----
* SCRATCH STORAGE DEALLOCATION
*----
DEALLOCATE(FLDMC)
RETURN
*----
* FORMAT
*----
6000 FORMAT(////5(5X,'REGION',6X,'VOLUME '))
6001 FORMAT(1P,5(5X,I4,4X,E12.5))
6002 FORMAT(/' E N E R G Y L I M I T S (EV)'/1P,
>6(E12.4,A3,I3,A3))
6003 FORMAT(/' F L U X E S A N D R E A C T I O N R A T E S'/
>1X,51(1H-))
6010 FORMAT(/' G R O U P :',I4/' REGION INTEGRATED FLUX')
6011 FORMAT(' AVERAGED REGIONAL FLUX')
6012 FORMAT(1P,7(3X,E15.7))
6013 FORMAT(/14H G R O U P :,I4/7H REGION,3X,7HAVERAGE,5X,3HINT,
> 7HEGRATED,5X,9HCOLLISION,4X,10HABSORPTION,4X,10HNU*FISSION,6X,
> 7HLEAKAGE,5X,10HPRODUCTION,8X,16HSCATTERING RATES/11X,4HFLUX,
> 10X,4HFLUX,10X,4HRATE,10X,4HRATE,10X,4HRATE,10X,4HRATE,10X,
> 4HRATE,6X,26HWITHIN GROUP OUT OF GROUP)
6014 FORMAT(/14H G R O U P :,I4/7H REGION,3X,7HAVERAGE,5X,3HINT,
> 7HEGRATED,5X,9HCOLLISION,4X,10HABSORPTION,4X,10HNU*FISSION,
> 4X,10HPRODUCTION,8X,16HSCATTERING RATES/11X,4HFLUX,
> 10X,4HFLUX,10X,4HRATE,10X,4HRATE,10X,4HRATE,10X,
> 4HRATE,6X,26HWITHIN GROUP OUT OF GROUP)
6020 FORMAT(1X,I4,1P,9E14.5)
6021 FORMAT(1X,I4,1P,8E14.5,3E14.5)
6022 FORMAT(/' REGION TOTAL LEAKAGE X-LEAKAGE',
> ' Y-LEAKAGE Z-LEAKAGE HOMOGENEOUS'/
> ' RATE RATE ',
> ' RATE RATE LEAKAGE RATE')
6023 FORMAT(1X,I6,1X,1P,5E14.5)
END
|