summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHEBERT Alain <alain.hebert@polymtl.ca>2025-11-07 15:40:35 -0500
committerHEBERT Alain <alain.hebert@polymtl.ca>2025-11-07 15:40:35 -0500
commit372969d71ef6f2bdd4b468b0e997852b847a5aa2 (patch)
treef30beddf70a7531428cf1655c0439a72636818ae
parent26dabca2a49475826662881774d9b7af285212d4 (diff)
parente9ca23e260ce9e45da10e1b08a1997bcf366c17d (diff)
Merge branch '12-add-the-missing-catl-noev-option-in-module-lib' into 'main'
#12: Add the missing CATL/NOEV option in module LIB: See merge request dragon/5.1!22
-rw-r--r--Dragon/src/LIBCTL.f22
1 files changed, 19 insertions, 3 deletions
diff --git a/Dragon/src/LIBCTL.f b/Dragon/src/LIBCTL.f
index 24d7a3e..7596e02 100644
--- a/Dragon/src/LIBCTL.f
+++ b/Dragon/src/LIBCTL.f
@@ -60,7 +60,7 @@
*----
INTEGER, ALLOCATABLE, DIMENSION(:) :: ISOMIX,NTFG,LSHI,NIR,
1 IEVOL,ITYP,ILLIB,KGAS,ISOMIX2,NTFG2,LSHI2,NIR2,IEVOL2,ITYP2,
- 2 ILLIB2,KGAS2,LOCUPD
+ 2 ILLIB2,KGAS2,LOCUPD,KEVOL
INTEGER, ALLOCATABLE, DIMENSION(:,:) :: ISONAM,ISONRF,ISONAM2,
> ISONRF2
REAL, ALLOCATABLE, DIMENSION(:) :: DENISO,DENMIX,TMPISO,SNISO,
@@ -80,7 +80,7 @@
ALLOCATE(SHINA(MAXISO),HLIB(MAXISO,4),HVECT(MAXED),
> HNAME(MAXLIB))
ALLOCATE(DENISO(MAXISO),TMPISO(MAXISO),SNISO(MAXISO),
- > SBISO(MAXISO),GIR(MAXISO),DENMIX(MAXMIX))
+ > SBISO(MAXISO),GIR(MAXISO),DENMIX(MAXMIX),KEVOL(MAXMIX))
ALLOCATE(MASKI(MAXISO),MASK(MAXMIX))
*----
* RECOVER FIRST MICROLIB
@@ -103,6 +103,7 @@
NBMIX=0
DENMIX(:MAXMIX)=-1.0
ENDIF
+ KEVOL(:MAXMIX)=0
*----
* RECOVER A READ-ONLY MICROLIB
*----
@@ -207,6 +208,16 @@
DENMIX(NNMIX)=REALIR
CALL REDGET(ITYPLU,INTLIR,REALIR,CARLIR,DBLLIR)
ENDIF
+ IF(ITYPLU.EQ.3) THEN
+ IF(CARLIR(1:4).EQ.'NOEV') THEN
+ KEVOL(NNMIX)=1
+ ELSE IF(CARLIR(1:4).EQ.'EVOL') THEN
+ KEVOL(NNMIX)=2
+ ELSE
+ GO TO 70
+ ENDIF
+ CALL REDGET(ITYPLU,INTLIR,REALIR,CARLIR,DBLLIR)
+ ENDIF
GO TO 70
ELSE IF(CARLIR(1:3).EQ.'ALL') THEN
DO ISO=1,NBISO2
@@ -280,6 +291,11 @@
IF(DENMIX(NNMIX).GE.0.0) THEN
CALL LIBCON(IPLIB,NNMIX,NBISO,ISOMIX,DENISO,DENMIX(NNMIX),1)
ENDIF
+ IF(KEVOL(NNMIX).NE.0) THEN
+ DO ISO=1,NBISO
+ IF(ISOMIX(ISO).EQ.NNMIX) IEVOL(ISO)=KEVOL(NNMIX)
+ ENDDO
+ ENDIF
ENDDO MIXTURE
DEALLOCATE(JPISO2)
DEALLOCATE(MASKI2)
@@ -442,7 +458,7 @@
* SCRATCH STORAGE DEALLOCATION
*----
DEALLOCATE(MASK,MASKI)
- DEALLOCATE(DENMIX,GIR,SBISO,SNISO,TMPISO,DENISO)
+ DEALLOCATE(KEVOL,DENMIX,GIR,SBISO,SNISO,TMPISO,DENISO)
DEALLOCATE(HNAME,HVECT,HLIB,SHINA)
DEALLOCATE(LOCUPD,KGAS,ILLIB,ITYP,IEVOL,NIR,LSHI,NTFG,ISOMIX,
1 ISONRF,ISONAM)