summaryrefslogtreecommitdiff
path: root/Trivac/src/TRIRCA.f
diff options
context:
space:
mode:
authorHEBERT Alain <alain.hebert@polymtl.ca>2025-12-19 11:17:25 -0500
committerHEBERT Alain <alain.hebert@polymtl.ca>2025-12-19 11:17:25 -0500
commit0086fa5c672a20b4fcefea39fca31313b9c08d68 (patch)
tree837b47785e7876046a80ea6391c5d3b445b2d5ba /Trivac/src/TRIRCA.f
parent338c590068f0f867d89c78598af32f121df1936a (diff)
parent682f80f4357f30780939ac84b8e2937233c647da (diff)
Merge branch '20-correct-a-ntot1-issue-in-spn-bivac-trivac-solutions' into 'main'
#20: Correct a NTOT1 issue in SPN Bivac/Trivac solutions See merge request dragon/5.1!34
Diffstat (limited to 'Trivac/src/TRIRCA.f')
-rwxr-xr-xTrivac/src/TRIRCA.f14
1 files changed, 9 insertions, 5 deletions
diff --git a/Trivac/src/TRIRCA.f b/Trivac/src/TRIRCA.f
index 34cf544..8202f29 100755
--- a/Trivac/src/TRIRCA.f
+++ b/Trivac/src/TRIRCA.f
@@ -1,5 +1,6 @@
*DECK TRIRCA
- SUBROUTINE TRIRCA(IPMACR,IPMACP,NGRP,NBMIX,NANI,LDIFF,IL,IPR,RCAT)
+ SUBROUTINE TRIRCA(IPMACR,IPMACP,NGRP,NBMIX,NANI,NW,LDIFF,IL,IPR,
+ 1 RCAT)
*
*-----------------------------------------------------------------------
*
@@ -22,6 +23,7 @@
* NGRP number of energy groups.
* NBMIX total number of material mixtures in the macrolib.
* NANI maximum scattering order recovered from tracking and macrolib.
+* NW maximum Legendre order (0 or 1) for the total cross sections.
* LDIFF flag set to .true. to use 1/3D as 'NTOT1' cross sections.
* IL scattering Legendre order.
* IPR type of assembly:
@@ -41,7 +43,7 @@
* SUBROUTINE ARGUMENTS
*----
TYPE(C_PTR) IPMACR,IPMACP
- INTEGER NGRP,NBMIX,NANI,IL,IPR
+ INTEGER NGRP,NBMIX,NANI,NW,IL,IPR
LOGICAL LDIFF
DOUBLE PRECISION RCAT(NGRP,NGRP,NBMIX)
*----
@@ -59,7 +61,7 @@
*----
ALLOCATE(IJJ(NBMIX),NJJ(NBMIX),IPOS(NBMIX))
ALLOCATE(SGD(NBMIX,3),WORK(NBMIX*NGRP))
-*
+*
JPMACR=LCMGID(IPMACR,'GROUP')
JPMACP=LCMGID(IPMACP,'GROUP')
WRITE(CM,'(I2.2)') IL-1
@@ -128,9 +130,11 @@
ENDIF
GO TO 100
ELSE
- IF(LENGT.EQ.NBMIX) THEN
+ IF(NW.EQ.0) THEN
+ CALL LCMGET(KPMACP,'NTOT0',SGD(1,2))
+ ELSE IF(LENGT.EQ.NBMIX) THEN
CALL LCMGET(KPMACP,TEXT12,SGD(1,2))
- ELSE IF(LENGT1.EQ.NBMIX) THEN
+ ELSE IF((NW.GE.1).AND.(LENGT1.EQ.NBMIX)) THEN
CALL LCMGET(KPMACP,'NTOT1',SGD(1,2))
ELSE
CALL LCMGET(KPMACP,'NTOT0',SGD(1,2))