summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Donjon/data/rep1300_reflector_sp1.x2m2
-rw-r--r--Donjon/src/ACRMAC.f1
-rw-r--r--Donjon/src/DLEAK.f1
-rw-r--r--Donjon/src/DSPH.f5
-rw-r--r--Donjon/src/MCRMAC.f1
-rw-r--r--Donjon/src/PCRMAC.f1
-rw-r--r--Donjon/src/SCRSAP.f1
-rw-r--r--Dragon/src/BREF.f7
-rw-r--r--Dragon/src/BRERT.f1
-rw-r--r--Dragon/src/MAC.f22
-rw-r--r--Dragon/src/MACDRV.f14
-rw-r--r--Dragon/src/MACUPD.f8
-rwxr-xr-xTrivac/src/BIVSPS.f2
-rwxr-xr-xTrivac/src/MACD.f26
-rwxr-xr-xTrivac/src/MACXSI.f19
-rwxr-xr-xTrivac/src/OUTAUX.f22
-rwxr-xr-xTrivac/src/TRIRCA.f8
-rwxr-xr-xTrivac/src/TRIVAA.f6
18 files changed, 115 insertions, 32 deletions
diff --git a/Donjon/data/rep1300_reflector_sp1.x2m b/Donjon/data/rep1300_reflector_sp1.x2m
index 140d3fa..8003131 100644
--- a/Donjon/data/rep1300_reflector_sp1.x2m
+++ b/Donjon/data/rep1300_reflector_sp1.x2m
@@ -55,8 +55,6 @@ MACRO := SCR: SAPOBJ :: EDIT 2 NMIX 55 SAPHYB SAPOBJ
MIX 51 USE SET 'BURN' 0.0 ENDMIX MIX 52 USE SET 'BURN' 0.0 ENDMIX
MIX 53 USE SET 'BURN' 0.0 ENDMIX MIX 54 USE SET 'BURN' 0.0 ENDMIX
MIX 55 USE SET 'BURN' 0.0 ENDMIX ;
-
- UTL: MACRO :: STEP UP GROUP STEP AT 1 DUMP ;
*----
* Define the macro geometry (MACROGEOM)
*----
diff --git a/Donjon/src/ACRMAC.f b/Donjon/src/ACRMAC.f
index 37f5444..7705ca3 100644
--- a/Donjon/src/ACRMAC.f
+++ b/Donjon/src/ACRMAC.f
@@ -491,6 +491,7 @@
ISTATE(4)=NF
ISTATE(5)=NED
ISTATE(6)=ITRANC
+ IF(LMAKE1(6)) ISTATE(10)=1
CALL LCMPUT(IPMAC,'STATE-VECTOR',NSTATE,1,ISTATE)
*----
* INCLUDE LEAKAGE IN THE MACROLIB (USED ONLY FOR NON-REGRESSION TESTS)
diff --git a/Donjon/src/DLEAK.f b/Donjon/src/DLEAK.f
index f3e629b..01ce26d 100644
--- a/Donjon/src/DLEAK.f
+++ b/Donjon/src/DLEAK.f
@@ -252,6 +252,7 @@
ISTATE(2)=NMIX
ISTATE(3)=1
ISTATE(9)=ILEAK
+ IF(ITYPE.EQ.2) ISTATE(10)=1 ! set NTOT1 flag
ISTATE(11)=NPERT
CALL LCMPUT(IPNEW,'STATE-VECTOR',NSTATE,1,ISTATE)
IF(IMPX.GT.1) CALL LCMLIB(IPNEW)
diff --git a/Donjon/src/DSPH.f b/Donjon/src/DSPH.f
index f52b811..f78fa14 100644
--- a/Donjon/src/DSPH.f
+++ b/Donjon/src/DSPH.f
@@ -98,6 +98,7 @@
NDEL=ISTATE(7)
NALBP=ISTATE(8)
ILEAKS=ISTATE(9)
+ NW=ISTATE(10)
*----
* READ THE INPUT DATA
*----
@@ -453,7 +454,7 @@
CALL LCMPUT(MPNEW,'IJJS00',NMIX,1,IJJ)
CALL LCMPUT(MPNEW,'IPOS00',NMIX,1,NJJ)
CALL LCMPUT(MPNEW,'NTOT0',NMIX,2,GAR)
- CALL LCMPUT(MPNEW,'NTOT1',NMIX,2,GAR)
+ IF(IMC.EQ.1) CALL LCMPUT(MPNEW,'NTOT1',NMIX,2,GAR)
IF(NIFISS.GT.0) THEN
PER2(:NMIX,:NIFISS)=0.0
CALL LCMPUT(MPNEW,'NUSIGF',NMIX*NIFISS,2,PER2)
@@ -487,12 +488,14 @@
*----
* SET THE PERTURBED MACROLIB STATE-VECTOR
*----
+ IF(IMC.EQ.1) NW=1 ! activate NTOT1 flag
ISTATE(:NSTATE)=0
ISTATE(1)=NGRP
ISTATE(2)=NMIX
ISTATE(3)=1
ISTATE(7)=NALBP
ISTATE(9)=ILEAKS
+ ISTATE(10)=NW
ISTATE(11)=NPERT
CALL LCMPUT(IPNEW,'STATE-VECTOR',NSTATE,1,ISTATE)
IF(IMPX.GT.1) CALL LCMLIB(IPNEW)
diff --git a/Donjon/src/MCRMAC.f b/Donjon/src/MCRMAC.f
index 5c819da..6a15a76 100644
--- a/Donjon/src/MCRMAC.f
+++ b/Donjon/src/MCRMAC.f
@@ -476,6 +476,7 @@
ISTATE(4)=NF
ISTATE(5)=NED
ISTATE(6)=ITRANC
+ IF(LMAKE1(6)) ISTATE(10)=1
CALL LCMPUT(IPMAC,'STATE-VECTOR',NSTATE,1,ISTATE)
*----
* INCLUDE LEAKAGE IN THE MACROLIB (USED ONLY FOR NON-REGRESSION TESTS)
diff --git a/Donjon/src/PCRMAC.f b/Donjon/src/PCRMAC.f
index 06cf5af..d4337f9 100644
--- a/Donjon/src/PCRMAC.f
+++ b/Donjon/src/PCRMAC.f
@@ -422,6 +422,7 @@
ISTATE(4)=MAX(ISTATE(4),NF)
IF(LMAKE1(4)) ISTATE(9)=1
IF(LMAKE1(5)) ISTATE(9)=2
+ IF(LMAKE1(9)) ISTATE(10)=1
CALL LCMPUT(IPMAC,'STATE-VECTOR',NSTATE,1,ISTATE)
*----
* INCLUDE LEAKAGE IN THE MACROLIB (USED ONLY FOR NON-REGRESSION TESTS)
diff --git a/Donjon/src/SCRSAP.f b/Donjon/src/SCRSAP.f
index b51a4ab..37f7d49 100644
--- a/Donjon/src/SCRSAP.f
+++ b/Donjon/src/SCRSAP.f
@@ -504,6 +504,7 @@
ISTATE(4)=NF
ISTATE(5)=NED
ISTATE(6)=ITRANC
+ IF(LMAKE1(6)) ISTATE(10)=1
CALL LCMPUT(IPMAC,'STATE-VECTOR',NSTATE,1,ISTATE)
*----
* INCLUDE LEAKAGE IN THE MACROLIB (USED ONLY FOR NON-REGRESSION TESTS)
diff --git a/Dragon/src/BREF.f b/Dragon/src/BREF.f
index 9e7de4a..88ec646 100644
--- a/Dragon/src/BREF.f
+++ b/Dragon/src/BREF.f
@@ -238,7 +238,7 @@
DEALLOCATE(IMIX1,IGAP,ADFREF,ITRIAL,IPEDI2)
IF(IPRINT.GT.0) THEN
CALL LCMGET(IPMAC1,'STATE-VECTOR',ISTATE)
- WRITE(6,110) IPRINT,(ISTATE(I),I=1,9),ISTATE(12),ISTATE(14)
+ WRITE(6,110) IPRINT,(ISTATE(I),I=1,10),ISTATE(12),ISTATE(14)
ENDIF
RETURN
*
@@ -255,6 +255,7 @@
1 7H NLG ,I6,39H (NUMBER OF DELAYED PRECURSOR GROUPS)/
2 7H NALB ,I6,31H (NUMBER OF PHYSICAL ALBEDOS)/
3 7H ILEAK ,I6,40H (1=DIFF AVAILABLE; 2=DIFFX AVAILABLE)/
- 4 7H IDF ,I6,44H (=0/2/3/4 ADF INFORMATION ABSENT/PRESENT)/
- 5 7H ISPH ,I6,36H (=0/1 SPH FACTORS ABSENT/PRESENT))
+ 4 7H NW ,I6,43H (=0/1: NTOT1 INFORMATION ABSENT/PRESENT)/
+ 5 7H IDF ,I6,44H (=0/2/3/4 ADF INFORMATION ABSENT/PRESENT)/
+ 6 7H ISPH ,I6,36H (=0/1 SPH FACTORS ABSENT/PRESENT))
END
diff --git a/Dragon/src/BRERT.f b/Dragon/src/BRERT.f
index 10d4155..19afde9 100644
--- a/Dragon/src/BRERT.f
+++ b/Dragon/src/BRERT.f
@@ -334,6 +334,7 @@
IF(J_FUEL.GT.0) ISTATE(4)=1
IF(ICODE(2).NE.0) ISTATE(8)=1 ! physical albedo information
ISTATE(9)=1 ! diffusion coefficient information
+ IF(IDIFF.EQ.1) ISTATE(10)=NL-1 ! NTOT1 is present
IF(ISPH.EQ.0) ISTATE(12)=3 ! discontinuity factor information
IF(ISPH.EQ.1) ISTATE(14)=1 ! SPH factor information
CALL LCMPUT(IPMAC1,'STATE-VECTOR',NSTATE,1,ISTATE)
diff --git a/Dragon/src/MAC.f b/Dragon/src/MAC.f
index c4f0cde..e87c7b9 100644
--- a/Dragon/src/MAC.f
+++ b/Dragon/src/MAC.f
@@ -135,6 +135,7 @@
ITRANC=0
NDELG=0
NALBP=0
+ NW=0
NSTEP=0
IDF=0
NPART0=0
@@ -158,6 +159,7 @@
ITRANC=ISTATE(6)
NDELG=ISTATE(7)
NALBP =ISTATE(8)
+ NW =ISTATE(10)
NSTEP=ISTATE(11)
IDF=ISTATE(12)
NPART0=ISTATE(17)
@@ -167,7 +169,7 @@
*----
IF(NMACSR.EQ.1) THEN
CALL MACDRV(IPMACR,INDREC,IPRINT,IDF,NBMIX,NGROUP,NANISO,
- 1 NIFISS,NEDMAC,ITRANC,NDELG,NSTEP,NALBP)
+ 1 NIFISS,NEDMAC,ITRANC,NDELG,NSTEP,NALBP,ILEAK,NW)
ELSE
NNEWMX=0
NANISO=MAX(NLO,NANISO)
@@ -226,7 +228,7 @@
1 //'S.')
ENDIF
CALL MACUPD(NENTRY,KENTRY,IPRINT,NTOTMX,NBMIX,NGROUP,
- 1 NANISO,NIFISS,NEDMAC,ITRANC)
+ 1 NANISO,NIFISS,NEDMAC,ITRANC,ILEAK,NW)
IF(NMACSR.EQ.-2) CALL LCMSIX(KENTRY(IPMAC2),' ',2)
ENDIF
*
@@ -244,6 +246,8 @@
ISTATE(6)=ITRANC
ISTATE(7)=NDELG
ISTATE(8)=NALBP
+ ISTATE(9)=ILEAK
+ ISTATE(10)=NW
ISTATE(11)=NSTEP
ISTATE(12)=IDF
ISTATE(17)=NPART0
@@ -257,12 +261,12 @@
CALL LCMPUT(IPMACR,'STATE-VECTOR',NSTATE,1,ISTATE)
ENDIF
IF(IPRINT.GT.1) CALL LCMLIB(IPMACR)
- IF(IPRINT.GT.0) WRITE(IOUT,100) IPRINT,(ISTATE(I),I=1,9),
- 1 ISTATE(11),ISTATE(12),ISTATE(17)
+ IF(IPRINT.GT.0) WRITE(IOUT,100) IPRINT,(ISTATE(I),I=1,12),
+ 1 ISTATE(17)
CALL LCMSIX(IPMACR,' ',0)
RETURN
*
- 100 FORMAT(/8H OPTIONS/8H -------/
+ 100 FORMAT(/17H MACROLIB OPTIONS/17H ----------------/
1 7H IPRINT,I6,30H (0=NO PRINT/1=SHORT/2=MORE)/
2 7H NGROUP,I6,28H (NUMBER OF ENERGY GROUPS)/
3 7H NBMIX ,I6,39H (NUMBER OF MIXTURES IN THE MACROLIB)/
@@ -275,7 +279,9 @@
1 7H NLG ,I6,39H (NUMBER OF DELAYED PRECURSOR GROUPS)/
2 7H NALB ,I6,31H (NUMBER OF PHYSICAL ALBEDOS)/
3 7H ILEAK ,I6,40H (1=DIFF AVAILABLE; 2=DIFFX AVAILABLE)/
- 4 7H NSTEP ,I6,39H (NUMBER OF PERTURBATION DIRECTORIES)/
- 5 7H IDF ,I6,48H (=0/2 BOUNDARY FLUXES FOR ADF ABSENT/PRESENT)/
- 6 7H NPART0,I6,34H (NUMBER OF COMPANION PARTICLES))
+ 4 7H NW ,I6,45H (=0/1: P1-WEIGHTED INFORMATION ABSENT/PRES,
+ 5 4HENT)/
+ 6 7H NSTEP ,I6,39H (NUMBER OF PERTURBATION DIRECTORIES)/
+ 7 7H IDF ,I6,48H (=0/2 BOUNDARY FLUXES FOR ADF ABSENT/PRESENT)/
+ 8 7H NPART0,I6,34H (NUMBER OF COMPANION PARTICLES))
END
diff --git a/Dragon/src/MACDRV.f b/Dragon/src/MACDRV.f
index cbdf780..64a673f 100644
--- a/Dragon/src/MACDRV.f
+++ b/Dragon/src/MACDRV.f
@@ -1,6 +1,6 @@
*DECK MACDRV
SUBROUTINE MACDRV(IPLIST,INDREC,IPRINT,IDF,NBMIX,NGROUP,NANISO,
- > NIFISS,NEDMAC,ITRANC,NDELG,NSTEP,NALBP)
+ > NIFISS,NEDMAC,ITRANC,NDELG,NSTEP,NALBP,ILEAK,NW)
*
*-----------------------------------------------------------------------
*
@@ -37,6 +37,8 @@
* NSTEP number of delta cross-section sets used for generalized
* perturbation theory (GPT) or kinetics calculations.
* NALBP number of physical albedos.
+* ILEAK type of diffusion coefficient information.
+* NW weighting flag (=0/1: P1-weighted information absent/present).
*
*-----------------------------------------------------------------------
*
@@ -46,7 +48,7 @@
*----
TYPE(C_PTR) IPLIST
INTEGER INDREC,IPRINT,IDF,NBMIX,NGROUP,NANISO,NIFISS,NEDMAC,
- > ITRANC,NDELG,NSTEP,NALBP
+ > ITRANC,NDELG,NSTEP,NALBP,ILEAK,NW
*----
* LOCAL VARIABLES
*----
@@ -352,5 +354,13 @@
CALL MACWXS(IPLIST,IPRINT,NGROUP,NBMIX,NIFISS,NANISO,
> ITRANC,NEDMAC)
ENDIF
+*----
+* SET STATE-VECTOR FLAGS
+*----
+ NW=0
+ IF(LNEWXS(9)) NW=1
+ ILEAK=0
+ IF(LNEWXS(7)) ILEAK=1
+ IF(LNEWXS(10).OR.LNEWXS(11).OR.LNEWXS(12)) ILEAK=2
RETURN
END
diff --git a/Dragon/src/MACUPD.f b/Dragon/src/MACUPD.f
index 8efd97c..9246aae 100644
--- a/Dragon/src/MACUPD.f
+++ b/Dragon/src/MACUPD.f
@@ -1,6 +1,6 @@
*DECK MACUPD
SUBROUTINE MACUPD(NENTRY,KENTRY,IPRINT,NTOTMX,NBMIX ,NGROUP,
- > NANISO,NIFISS,NEDMAC,ITRANC)
+ > NANISO,NIFISS,NEDMAC,ITRANC,ILEAK,NW)
*
*-----------------------------------------------------------------------
*
@@ -27,6 +27,8 @@
* NIFISS number fissile isotopes per mixture.
* NEDMAC number of aditional edition x-s.
* ITRANC type of transport correction.
+* ILEAK type of diffusion coefficient information.
+* NW weighting flag (=0/1: P1-weighted information absent/present).
*
*-----------------------------------------------------------------------
*
@@ -37,7 +39,7 @@
*----
TYPE(C_PTR) KENTRY(NENTRY)
INTEGER NENTRY,IPRINT,NTOTMX,NBMIX,NGROUP,NANISO,NIFISS,
- > NEDMAC,ITRANC
+ > NEDMAC,ITRANC,ILEAK,NW
*----
* LOCAL VARIABLES
*----
@@ -200,6 +202,8 @@
NIFISO=ISTATE(4)
NEDO=ISTATE(5)
NDELO=ISTATE(7)
+ ILEAK=MIN(ILEAK,ISTATE(9))
+ NW=MIN(NW,ISTATE(10))
CALL MACNFI(IPMACR,IPRINT,IEN ,NTOTMX,NGROUP,NIFISS,
> NEDMAC,NBMIXF,NGROF ,NIFISF,NEDF ,NDELF ,
> NBMIXO,NIFISO,NEDO ,NDELO ,IMLOC ,ENERN ,
diff --git a/Trivac/src/BIVSPS.f b/Trivac/src/BIVSPS.f
index e03ce67..ece519c 100755
--- a/Trivac/src/BIVSPS.f
+++ b/Trivac/src/BIVSPS.f
@@ -106,6 +106,8 @@
WRITE(TEXT12,'(4HNTOT,I1)') MIN(IL-1,9)
CALL LCMLEN(KPMACR,TEXT12,LENGT,ITYLCM)
CALL LCMLEN(KPMACR,'NTOT1',LENGT1,ITYLCM)
+ IF((LENGT1.GT.0).AND.(NW.EQ.0)) CALL XABORT('BIVSPS: YOU MUST HA'
+ 1 //'VE NW>0.')
IF((IL.EQ.1).AND.(LENGT.NE.NBMIX)) CALL XABORT('BIVSPS: NO NTOT0'
1 //' CROSS SECTIONS.')
IF(MOD(IL-1,2).EQ.0) THEN
diff --git a/Trivac/src/MACD.f b/Trivac/src/MACD.f
index b9ce53b..d820b62 100755
--- a/Trivac/src/MACD.f
+++ b/Trivac/src/MACD.f
@@ -70,6 +70,8 @@
NIFISS=1
NDG=0
NALBP=0
+ ILEAK=0
+ NW=0
NSTEP=0
IF(NENTRY.EQ.2) THEN
IF((IENTRY(2).NE.1).AND.(IENTRY(2).NE.2)) CALL XABORT('MACD'
@@ -97,6 +99,8 @@
NIFISS=IPAR(4)
NDG=IPAR(7)
NALBP=IPAR(8)
+ ILEAK=IPAR(9)
+ NW=IPAR(10)
NSTEP=IPAR(11)
ENDIF
*----
@@ -178,7 +182,8 @@
CALL REDGET(INDIC,NITMA,FLOTT,TEXT4,DFLOTT)
IF((INDIC.NE.3).OR.(TEXT4.NE.'INPU')) CALL XABORT('MACD: INPU'
1 //'T KEYWORD EXPECTED.')
- CALL MACXSI(IPLIST,IND,NMIXT,NGRP,NDG,NL,IMPX,NBMIX,JND)
+ CALL MACXSI(IPLIST,IND,NMIXT,NGRP,NDG,NL,IMPX,NBMIX,ILEAK,NW,
+ 1 JND)
IF(ISTEP.GT.0) THEN
IF(IMPX.GT.1) CALL LCMLIB(IPLIST)
CALL LCMSIX(IPLIST,' ',2)
@@ -208,9 +213,28 @@
IPAR(6)=0
IPAR(7)=NDG
IPAR(8)=NALBP
+ IPAR(9)=ILEAK
+ IPAR(10)=NW
IPAR(11)=NSTEP
CALL LCMPUT(IPLIST,'STATE-VECTOR',NSTATE,1,IPAR)
+ IF(IMPX.GT.0) WRITE(6,100) IMPX,(IPAR(I),I=1,10)
ENDIF
IF(IMPX.GT.1) CALL LCMLIB(IPLIST)
RETURN
+*
+ 100 FORMAT(/8H OPTIONS/8H -------/
+ 1 7H IPRINT,I6,30H (0=NO PRINT/1=SHORT/2=MORE)/
+ 2 7H NGROUP,I6,28H (NUMBER OF ENERGY GROUPS)/
+ 3 7H NBMIX ,I6,39H (NUMBER OF MIXTURES IN THE MACROLIB)/
+ 4 7H NANISO,I6,34H (MAXIMUM SCATTERING ANISOTROPY)/
+ 5 7H NIFISS,I6,45H (MAXIMUM NUMBER OF FISSILE ISOTOPES IN A M,
+ 6 7HIXTURE)/
+ 7 7H NEDMAC,I6,34H (NUMBER OF CROSS SECTION EDITS)/
+ 8 7H ITRANC,I6,45H (0=NO TRANSPORT CORRECTION/1=APOLLO TYPE/2,
+ 9 43H=RECOVER FROM LIBRARY/4=LEAKAGE CORRECTION)/
+ 1 7H NLG ,I6,39H (NUMBER OF DELAYED PRECURSOR GROUPS)/
+ 2 7H NALB ,I6,31H (NUMBER OF PHYSICAL ALBEDOS)/
+ 3 7H ILEAK ,I6,40H (1=DIFF AVAILABLE; 2=DIFFX AVAILABLE)/
+ 4 7H NW ,I6,45H (=0/1: P1-WEIGHTED INFORMATION ABSENT/PRES,
+ 5 4HENT))
END
diff --git a/Trivac/src/MACXSI.f b/Trivac/src/MACXSI.f
index 6cfac6a..406cecb 100755
--- a/Trivac/src/MACXSI.f
+++ b/Trivac/src/MACXSI.f
@@ -1,5 +1,6 @@
*DECK MACXSI
- SUBROUTINE MACXSI (IPLIST,IND,NMIXT,NGRP,NDG,NL,IMPX,NBMIX,JND)
+ SUBROUTINE MACXSI (IPLIST,IND,NMIXT,NGRP,NDG,NL,IMPX,NBMIX,ILEAK,
+ 1 NW,JND)
*
*-----------------------------------------------------------------------
*
@@ -27,6 +28,8 @@
*
*Parameters: output
* NBMIX number of mixtures.
+* ILEAK type of diffusion coefficient.
+* NW weighting flag (=0/1: P1-weighted information absent/present).
* JND REDGET flag (=1 ';' encountered; =2 'STEP' encountered).
*
*-----------------------------------------------------------------------
@@ -36,7 +39,7 @@
* SUBROUTINE ARGUMENTS
*----
TYPE(C_PTR) IPLIST
- INTEGER IND,NMIXT,NGRP,NDG,NL,IMPX,NBMIX,JND
+ INTEGER IND,NMIXT,NGRP,NDG,NL,IMPX,NBMIX,ILEAK,NW,JND
*----
* LOCAL VARIABLES
*----
@@ -138,7 +141,7 @@
CALL LCMLEN(KPLIST,'FIXE',ILENGT,ITYLCM)
IF(ILENGT.EQ.NMIXT) CALL LCMGET(KPLIST,'FIXE',S(1,JGR))
DO 30 IL=1,NL
- WRITE (CM,'(I2.2)') IL-1
+ WRITE(CM,'(I2.2)') IL-1
CALL LCMLEN(KPLIST,'SCAT'//CM,ILENGT,ITYLCM)
IF(ILENGT.GT.NMIXT*NL*NGRP*NGRP) THEN
CALL XABORT('MACXSI: INVALID INPUT MACROLIB(2).')
@@ -316,7 +319,7 @@
ENDIF
IF(LSC) THEN
DO 200 IL=1,NL
- WRITE (CM,'(I2.2)') IL-1
+ WRITE(CM,'(I2.2)') IL-1
IPOSDE=0
DO 195 IBM=1,NMIXT
J2=JGR
@@ -345,6 +348,14 @@
IF(IMPX.GT.1) CALL LCMLIB(KPLIST)
210 CONTINUE
*----
+* SET STATE-VECTOR FLAGS
+*----
+ NW=0
+ IF(LT1) NW=1
+ ILEAK=0
+ IF(LD) ILEAK=1
+ IF(LDX.OR.LDY.OR.LDZ) ILEAK=2
+*----
* SCRATCH STORAGE DEALLOCATION
*----
DEALLOCATE(TOTAL,TOTA1,ZNUG,CHI,NUSDL,CHDL,OVERV,DIFFX,DIFFY,
diff --git a/Trivac/src/OUTAUX.f b/Trivac/src/OUTAUX.f
index 64a2567..d3e1ed7 100755
--- a/Trivac/src/OUTAUX.f
+++ b/Trivac/src/OUTAUX.f
@@ -47,7 +47,7 @@
* SUBROUTINE ARGUMENTS
*----
TYPE(C_PTR) IPMAC1,IPMAC2
- PARAMETER(NREAC=11)
+ PARAMETER(NREAC=12)
INTEGER NBMIX,NL,NBFIS,NGRP,NEL,NUN,NALBP,NZS,NGCOND,MAT(NEL),
1 IDL(NEL),IHOM(NEL),IGCOND(NGCOND),IMPX
REAL VOL(NEL),EVECT(NUN,NGRP)
@@ -73,7 +73,7 @@
* DATA STATEMENT
*----
DATA HREAC/'NTOT0','SIGW00','NUSIGF','NFTOT','H-FACTOR',
- 1 'OVERV','DIFF','DIFFX','DIFFY','DIFFZ','C-FACTOR'/
+ 1 'OVERV','DIFF','DIFFX','DIFFY','DIFFZ','NTOT1','C-FACTOR'/
*----
* SCRATCH STORAGE ALLOCATION
* OUTR(IBM,NREAC+1): volume
@@ -511,8 +511,9 @@
ELSE IF(LREAC(8)) THEN
IDATA(9)=2
ENDIF
- IDATA(15)=0
+ IF(LREAC(11)) IDATA(10)=1
CALL LCMPUT(IPMAC2,'STATE-VECTOR',NSTATE,1,IDATA)
+ IF(IMPX.GT.0) WRITE(6,550) IMPX,(IDATA(I),I=1,10)
*----
* SCRATCH STORAGE DEALLOCATION
*----
@@ -524,4 +525,19 @@
520 FORMAT(/' G R O U P : ',I3/1X,'IHOM',9A14)
530 FORMAT(1X,I4,1P,9E14.5)
540 FORMAT(/5H SUM,1P,8E14.5)
+ 550 FORMAT(/17H MACROLIB OPTIONS/17H ----------------/
+ 1 7H IPRINT,I6,30H (0=NO PRINT/1=SHORT/2=MORE)/
+ 2 7H NGROUP,I6,28H (NUMBER OF ENERGY GROUPS)/
+ 3 7H NBMIX ,I6,39H (NUMBER OF MIXTURES IN THE MACROLIB)/
+ 4 7H NANISO,I6,34H (MAXIMUM SCATTERING ANISOTROPY)/
+ 5 7H NIFISS,I6,45H (MAXIMUM NUMBER OF FISSILE ISOTOPES IN A M,
+ 6 7HIXTURE)/
+ 7 7H NEDMAC,I6,34H (NUMBER OF CROSS SECTION EDITS)/
+ 8 7H ITRANC,I6,45H (0=NO TRANSPORT CORRECTION/1=APOLLO TYPE/2,
+ 9 43H=RECOVER FROM LIBRARY/4=LEAKAGE CORRECTION)/
+ 1 7H NLG ,I6,39H (NUMBER OF DELAYED PRECURSOR GROUPS)/
+ 2 7H NALB ,I6,31H (NUMBER OF PHYSICAL ALBEDOS)/
+ 3 7H ILEAK ,I6,40H (1=DIFF AVAILABLE; 2=DIFFX AVAILABLE)/
+ 4 7H NW ,I6,45H (=0/1: P1-WEIGHTED INFORMATION ABSENT/PRES,
+ 5 4HENT))
END
diff --git a/Trivac/src/TRIRCA.f b/Trivac/src/TRIRCA.f
index 8202f29..6c1b496 100755
--- a/Trivac/src/TRIRCA.f
+++ b/Trivac/src/TRIRCA.f
@@ -79,6 +79,8 @@
WRITE(TEXT12,'(4HNTOT,I1)') MIN(IL-1,9)
CALL LCMLEN(KPMACP,TEXT12,LENGT,ITYLCM)
CALL LCMLEN(KPMACP,'NTOT1',LENGT1,ITYLCM)
+ IF((LENGT1.GT.0).AND.(NW.EQ.0)) CALL XABORT('TRIRCA: YOU MUST HA'
+ 1 //'VE NW>0.')
IF((IL.EQ.1).AND.(LENGT.NE.NBMIX)) CALL XABORT('TRIRCA: NO NTOT0'
1 //' CROSS SECTIONS.')
IF(MOD(IL-1,2).EQ.0) THEN
@@ -130,11 +132,9 @@
ENDIF
GO TO 100
ELSE
- IF(NW.EQ.0) THEN
- CALL LCMGET(KPMACP,'NTOT0',SGD(1,2))
- ELSE IF(LENGT.EQ.NBMIX) THEN
+ IF(LENGT.EQ.NBMIX) THEN
CALL LCMGET(KPMACP,TEXT12,SGD(1,2))
- ELSE IF((NW.GE.1).AND.(LENGT1.EQ.NBMIX)) THEN
+ ELSE IF(LENGT1.EQ.NBMIX) THEN
CALL LCMGET(KPMACP,'NTOT1',SGD(1,2))
ELSE
CALL LCMGET(KPMACP,'NTOT0',SGD(1,2))
diff --git a/Trivac/src/TRIVAA.f b/Trivac/src/TRIVAA.f
index b1628c4..5189511 100755
--- a/Trivac/src/TRIVAA.f
+++ b/Trivac/src/TRIVAA.f
@@ -141,6 +141,7 @@
NBFIS=IPAR(4)
NALBP=IPAR(8)
NW=IPAR(10)
+ NW2=0
IF(IGP(4).GT.NBMIX) THEN
WRITE(HSMG,'(46HTRIVAA: THE NUMBER OF MIXTURES IN THE TRACKING,
1 2H (,I5,51H) IS GREATER THAN THE NUMBER OF MIXTURES IN THE MAC,
@@ -219,6 +220,7 @@
1 //TEXT11//'. L_MACROLIB EXPECTED.')
ENDIF
CALL LCMGET(IPMACP,'STATE-VECTOR',IPAR)
+ NW2=IPAR(10)
NSTEP=IPAR(11)
IF((IPAR(1).NE.NGRP).OR.(IPAR(2).GT.NBMIX)) THEN
WRITE(HSMG,'(43HTRIVAA: INCONSISTENT PERTURBATION MACROLIB ,
@@ -271,7 +273,7 @@
ELSE
* SIMPLIFIED PN THEORY.
CALL TRISPS(IPTRK,IPMACR,IPMACP,IPSYS,IMPX,NGRP,NEL,NLF,
- 1 NAN,NW,NBFIS,NALBP,LDIFF,IPR,MAT,VOL,NBMIX)
+ 1 NAN,NW2,NBFIS,NALBP,LDIFF,IPR,MAT,VOL,NBMIX)
ENDIF
ELSE IF(NSTEP.GT.0) THEN
* ASSEMBLY OF PERTURBED SYSTEM MATRICES (WITH STEP DIRECTORIES).
@@ -288,7 +290,7 @@
ELSE
* SIMPLIFIED PN THEORY.
CALL TRISPS(IPTRK,IPMACR,KPMACR,KPSYS,IMPX,NGRP,NEL,NLF,
- 1 NAN,NW,NBFIS,NALBP,LDIFF,IPR,MAT,VOL,NBMIX)
+ 1 NAN,NW2,NBFIS,NALBP,LDIFF,IPR,MAT,VOL,NBMIX)
ENDIF
50 CONTINUE
ELSE