summaryrefslogtreecommitdiff
path: root/Dragon/src/LIBDEP.F
diff options
context:
space:
mode:
authorHEBERT Alain <alain.hebert@polymtl.ca>2025-12-28 15:55:41 -0500
committerHEBERT Alain <alain.hebert@polymtl.ca>2025-12-28 15:55:41 -0500
commit744b40856a035580b786378cae13d453edd26689 (patch)
treed7056a5fcb559893c91df8d7533fa5fdb03d8480 /Dragon/src/LIBDEP.F
parentec64ba52445d2d06deba1216471ccf3d289c78a3 (diff)
Resolve "Depreciate use of Version 4 and 5.0 Draglibs"
Diffstat (limited to 'Dragon/src/LIBDEP.F')
-rw-r--r--Dragon/src/LIBDEP.F55
1 files changed, 24 insertions, 31 deletions
diff --git a/Dragon/src/LIBDEP.F b/Dragon/src/LIBDEP.F
index e1b539a..94ed383 100644
--- a/Dragon/src/LIBDEP.F
+++ b/Dragon/src/LIBDEP.F
@@ -1,5 +1,5 @@
*DECK LIBDEP
- SUBROUTINE LIBDEP(IPLIB,IMPX,NDEPL)
+ SUBROUTINE LIBDEP(IPLIB,HHLIB,CFILNA,NEL,IMPX,NDEPL)
*
*-----------------------------------------------------------------------
*
@@ -18,6 +18,9 @@
*Parameters: input
* IPLIB pointer to the internal microscopic cross section library
* (L_LIBRARY signature).
+* HHLIB library file type.
+* CFILNA library file name.
+* NEL user-defined number of depleting isotopes if CFILNA=' '.
* IMPX print flag.
*
*Parameters: output
@@ -34,19 +37,18 @@
* SUBROUTINE ARGUMENTS
*----
TYPE(C_PTR) IPLIB
- INTEGER IMPX,NDEPL
+ INTEGER IMPX,NDEPL,NEL
+ CHARACTER HHLIB*8,CFILNA*64
*----
* LOCAL PARAMETERS
*----
TYPE(C_PTR) IPDRL
- INTEGER IOUT,NSTATE,MAXR,INDIC,NEL,IEVOT,NITMA,NDFI,
- > NDFP,NHEAVY,NLIGHT,NOTHER,NSTABL,NREAC,NPAR,
- > ITEXT4,I,J,ISTA,ILONG,ITYLCM,NBESP
- REAL FLOTT
+ INTEGER IOUT,NSTATE,MAXR,IEVOT,NDFI,NDFP,NHEAVY,NLIGHT,
+ > NOTHER,NSTABL,NREAC,NPAR,ITEXT4,I,J,ISTA,ILONG,
+ > ITYLCM,NBESP
PARAMETER (IOUT=6,NSTATE=40,MAXR=12)
- DOUBLE PRECISION DBLINP
- CHARACTER NMDEPL(MAXR)*8,TEXT4*4,HSMG*131,CFILNA*64,
- > HHLIB*8,TEXT12*12,NAMLCM*12,NAMMY*12
+ CHARACTER NMDEPL(MAXR)*8,TEXT4*4,HSMG*131,TEXT12*12,
+ > NAMLCM*12,NAMMY*12,HVERS*12
LOGICAL EMPTY,LCM,LEXIST
INTEGER ISTATE(NSTATE)
#if defined(HDF5_LIB)
@@ -71,28 +73,11 @@
*----
* READ INFORMATION AVAILABLE ON INPUT
*----
- CALL REDGET(INDIC,NEL,FLOTT,TEXT4,DBLINP)
IEVOT=-99
NBESP=1
- IF(INDIC.EQ.1) THEN
- IEVOT=0
- ELSE IF((INDIC.EQ.3).AND.(TEXT4.EQ.'LIB:')) THEN
- CALL REDGET(INDIC,NITMA,FLOTT,HHLIB,DBLINP)
- IF(INDIC.NE.3) THEN
- CALL XABORT('LIBDEP: CHARACTER LIBRARY NAME REQUIRED.')
- ELSE IF((HHLIB.NE.'DRAGON ') .AND. (HHLIB.NE.'WIMSAECL') .AND.
- > (HHLIB.NE.'WIMSD4 ') .AND. (HHLIB.NE.'WIMSE ') .AND.
- > (HHLIB.NE.'APLIB2 ') .AND. (HHLIB.NE.'APLIB3 ') .AND.
- > (HHLIB.NE.'NDAS ') .AND. (HHLIB.NE.'APXSM ') ) THEN
- WRITE(HSMG,'(30HLIBDEP: INVALID EVOL LIB TYPE ,A8)') HHLIB
- CALL XABORT(HSMG)
- ENDIF
- CALL REDGET(INDIC,NITMA,FLOTT,TEXT4,DBLINP)
- IF((INDIC.NE.3).OR.(TEXT4.NE.'FIL:'))
- > CALL XABORT('LIBDEP: FIL: EXPECTED.')
- CFILNA=' '
- CALL REDGET(INDIC,NITMA,FLOTT,CFILNA,DBLINP)
- IF(INDIC.NE.3) CALL XABORT('LIBDEP: CHARACTER DATA EXPECTED.')
+ IF(CFILNA.EQ.' ') THEN
+ IEVOT=0
+ ELSE
IF(HHLIB.EQ.'DRAGON') THEN
TEXT12=CFILNA(:12)
CALL LCMINF(IPLIB,NAMLCM,NAMMY,EMPTY,ILONG,LCM)
@@ -106,6 +91,15 @@
CALL XABORT(HSMG)
ENDIF
CALL LCMOP(IPDRL,TEXT12,2,2,0)
+ HVERS='**UNKNOWN**'
+ CALL LCMLEN(IPDRL,'VERSION',ILONG,ITYLCM)
+ IF(ILONG.NE.0) CALL LCMGTC(IPDRL,'VERSION',12,HVERS)
+ IF(IMPX.GT.0) WRITE (IOUT,6010) TRIM(TEXT12),TRIM(HVERS)
+ IF(HVERS.EQ.'RELEASE_2003') THEN
+ HSMG='LIBDEP: ***WARNING*** RELEASE_2003 DRAGLIBS ARE DE'
+ > //'PRECIATED.'
+ WRITE(IOUT,'(1X,A)') HSMG
+ ENDIF
ENDIF
CALL LCMLEN(IPDRL,'DEPL-CHAIN',ILONG,ITYLCM)
IF(ILONG.EQ.0) THEN
@@ -184,8 +178,6 @@
CALL XABORT('LIBDEP: THE HDF5 API IS NOT AVAILABLE(1).')
#endif /* defined(HDF5_LIB) */
ENDIF
- ELSE
- CALL XABORT('LIBDEP: INVALID KEY WORD.')
ENDIF
IF(IEVOT.EQ.0.OR.IEVOT.GT.1) THEN
*----
@@ -310,4 +302,5 @@
> ' NPAR ',I6,' (MAXIMUM NUMBER OF PARENT REACTIONS)'/
> ' NBESP ',I6,' (NUMBER OF ENERGY-DEPENDENT FISSION YIELD MAT',
> 'RICES)'/)
+ 6010 FORMAT(/33H PROCESSING DRAGON LIBRARY NAMED ,A,9H VERSION ,A,1H.)
END