*DECK INFDRA
      SUBROUTINE INFDRA(CFILNA,IPRINT,NBISO,HNAMIS,AWRISO)
*
*-----------------------------------------------------------------------
*
*Purpose:
* To recover mass for isotopes of DRAGON libraries
*
*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): A. Hebert
*
*Parameters: input
* CFILNA  DRAGLIB file name
* IPRINT  print flag
* NBISO   number of isotopes
* HNAMIS  isotope names
*
*Parameters: output
* AWRISO  isotope weights
*
*-----------------------------------------------------------------------
*
      USE GANLIB
      IMPLICIT     NONE
      INTEGER      IPRINT,NBISO
      CHARACTER    CFILNA*64,HNAMIS(NBISO)*8
      REAL         AWRISO(NBISO)
C----
C FUNCTIONS
C----
      DOUBLE PRECISION XDRCST
C----
C  DRAGON LIBRARY PARAMETERS
C----
      TYPE(C_PTR)  IPDRL
      INTEGER      IOUT,ISO,LENGT,ITYLCM
      PARAMETER   (IOUT=6)
      CHARACTER    NAMLOC*12,HSMG*131
      REAL         CONVM
*----
*  For INFDRA, file name is limited to 12 characters
*  because of the requirements for compatibility with 
*  LINKED_LIST
*----
      NAMLOC=CFILNA(1:12)
C----
C  TEST IF FILE NAME EXISTS
C----
      CONVM=REAL(XDRCST('Neutron mass','amu'))
      IF(NAMLOC.EQ.' ' )THEN
        CALL XABORT('INFDRA: DRAGON LIBRARY HAS NOT BEEN SET')
      ENDIF
C----
C  OPEN FILE AND READ INFORMATION DATA RECORDS
C----
      CALL LCMOP(IPDRL,NAMLOC,2,2,0)
      DO 100 ISO=1,NBISO
        CALL LCMLEN(IPDRL,HNAMIS(ISO),LENGT,ITYLCM)
        IF(LENGT.EQ.0) THEN
          CALL LCMLIB(IPDRL)
          WRITE(HSMG,9000) HNAMIS(ISO),CFILNA
          CALL XABORT(HSMG)
        ENDIF
        CALL LCMSIX(IPDRL,HNAMIS(ISO),1)
        CALL LCMGET(IPDRL,'AWR',AWRISO(ISO))
        AWRISO(ISO)=AWRISO(ISO)*CONVM
        IF(IPRINT.GE.100) THEN
          WRITE(IOUT,6000) HNAMIS(ISO),AWRISO(ISO)
        ENDIF
        CALL LCMSIX(IPDRL,' ',2)
 100  CONTINUE
C----
C  CLOSE FILE
C----
      CALL LCMCL(IPDRL,1)
C----
C  RETURN
C----
      RETURN
C----
C  PRINT FORMAT
C----
 6000 FORMAT(' DRAGON ISOTOPE =',A8,
     >       ' HAS ATOMIC WEIGHT RATIO = ',F12.5)
C----
C  ABORT FORMAT
C----
 9000 FORMAT('INFDRA: MATERIAL/ISOTOPE ',A8,
     >       ' IS MISING ON DRAGON LIBRARY FILE ',A64)
      END
