hdiff output

r31569/countatoms.f90 2017-01-21 10:35:56.506250000 +0000 r31568/countatoms.f90 2017-01-21 10:35:57.382250000 +0000
 15: ! 15: !
 16: !  You should have received a copy of the GNU General Public License 16: !  You should have received a copy of the GNU General Public License
 17: !  along with this program; if not, write to the Free Software 17: !  along with this program; if not, write to the Free Software
 18: !  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA 18: !  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 19: ! 19: !
 20: !}}} 20: !}}}
 21:  21: 
 22: MODULE NOA 22: MODULE NOA
 23:   USE MODAMBER9 , ONLY : INPCRD 23:   USE MODAMBER9 , ONLY : INPCRD
 24:   USE AMBER12_INTERFACE_MOD, ONLY: AMBER12_SETUP 24:   USE AMBER12_INTERFACE_MOD, ONLY: AMBER12_SETUP
 25:   USE OPEP_INTERFACE_MOD, ONLY: OPEP_GET_NATOMS 
 26:   IMPLICIT NONE 25:   IMPLICIT NONE
 27:   SAVE 26:   SAVE
 28:   INTEGER :: NUMBER_OF_ATOMS 27:   INTEGER :: NUMBER_OF_ATOMS
 29:    28:   
 30: CONTAINS 29: CONTAINS
 31:    30:   
 32:   SUBROUTINE COUNTATOMS(MYUNIT, NPAR, GCBHT, GCMU, GCNATOMS, GBHT) 31:   SUBROUTINE COUNTATOMS(MYUNIT, NPAR, GCBHT, GCMU, GCNATOMS, GBHT)
 33:      32:     
 34:     IMPLICIT NONE 33:     IMPLICIT NONE
 35:     INTEGER, INTENT(IN) :: NPAR 34:     INTEGER, INTENT(IN) :: NPAR
 36:     INTEGER :: EOF,NRES,SEQ(500),I_RES,NOGLY,GLY, MYUNIT,J 35:     INTEGER :: EOF,NRES,SEQ(500),I_RES,NOGLY,GLY, MYUNIT,J
 37:     LOGICAL :: YESNO, YESNOA, YESNOC, YESNOAMH, YESNOA9, YESNOOPEP 36:     LOGICAL :: YESNO, YESNOA, YESNOC, YESNOAMH, YESNOA9
 38:     CHARACTER(LEN=5) TARFL 37:     CHARACTER(LEN=5) TARFL
 39:     CHARACTER(LEN=10)  CHECK 38:     CHARACTER(LEN=10)  CHECK
 40:     CHARACTER(LEN=80) MYLINE,INPCRD1 39:     CHARACTER(LEN=80) MYLINE,INPCRD1
 41:     LOGICAL GCBHT, END, GBHT 40:     LOGICAL GCBHT, END, GBHT
 42:     DOUBLE PRECISION GCMU 41:     DOUBLE PRECISION GCMU
 43:     INTEGER GCNATOMS, LUNIT, GETUNIT 42:     INTEGER GCNATOMS, LUNIT, GETUNIT
 44:     CHARACTER(LEN=16) WORD 43:     CHARACTER(LEN=16) WORD
 45:      44:     
 46: ! ds656> First scan 'data' for GCBH and GBH, since the latter  45: ! ds656> First scan 'data' for GCBH and GBH, since the latter 
 47: !        affects atom counting. 46: !        affects atom counting.
 85:     ! these files then the precedence is coords, then input.crd,  84:     ! these files then the precedence is coords, then input.crd, 
 86:     ! then coords.amber  85:     ! then coords.amber 
 87:     ! OPTIM does this a bit better by calling getparams first to  86:     ! OPTIM does this a bit better by calling getparams first to 
 88:     ! see if we are actually doing AMBER or CHARMM.  87:     ! see if we are actually doing AMBER or CHARMM. 
 89:     ! 88:     !
 90:     INQUIRE(FILE='pro.list',EXIST=YESNOAMH) 89:     INQUIRE(FILE='pro.list',EXIST=YESNOAMH)
 91:     INQUIRE(FILE='coords',EXIST=YESNO) 90:     INQUIRE(FILE='coords',EXIST=YESNO)
 92:     INQUIRE(FILE='coords.amber',EXIST=YESNOA) 91:     INQUIRE(FILE='coords.amber',EXIST=YESNOA)
 93:     INQUIRE(FILE='input.crd',EXIST=YESNOC) 92:     INQUIRE(FILE='input.crd',EXIST=YESNOC)
 94:     INQUIRE(FILE='coords.inpcrd',EXIST=YESNOA9) 93:     INQUIRE(FILE='coords.inpcrd',EXIST=YESNOA9)
 95:     INQUIRE(FILE='conf_initiale.pdb',EXIST=YESNOOPEP) 
 96:      94:     
 97:     NUMBER_OF_ATOMS=0 95:     NUMBER_OF_ATOMS=0
 98:      96:     
 99:     IF (YESNO) THEN 97:     IF (YESNO) THEN
100:        OPEN(UNIT=7,FILE='coords',STATUS='OLD') 98:        OPEN(UNIT=7,FILE='coords',STATUS='OLD')
101:        DO 99:        DO
102:           READ(7,*,IOSTAT=EOF)100:           READ(7,*,IOSTAT=EOF)
103:           IF (EOF==0) THEN101:           IF (EOF==0) THEN
104:              NUMBER_OF_ATOMS = NUMBER_OF_ATOMS + 1102:              NUMBER_OF_ATOMS = NUMBER_OF_ATOMS + 1
105:           ELSE103:           ELSE
180:           if (eof.LT.0) then178:           if (eof.LT.0) then
181:              PRINT *,'End of file before all information specified'179:              PRINT *,'End of file before all information specified'
182:              STOP180:              STOP
183:           ENDIF181:           ENDIF
184:           IF (check.EQ.'end' .OR. check.EQ.'END' .OR. check.EQ.'End') THEN182:           IF (check.EQ.'end' .OR. check.EQ.'END' .OR. check.EQ.'End') THEN
185:              CLOSE(7)183:              CLOSE(7)
186:              EXIT184:              EXIT
187:           ENDIF185:           ENDIF
188:           Number_of_Atoms = Number_of_Atoms + 1186:           Number_of_Atoms = Number_of_Atoms + 1
189:        enddo187:        enddo
190:     ELSEIF (YESNOOPEP) THEN 
191:        CALL OPEP_GET_NATOMS(NUMBER_OF_ATOMS) 
192:     ELSE188:     ELSE
193: ! ------------------------189: ! ------------------------
194: ! vr274 (DMACRYS)190: ! vr274 (DMACRYS)
195: ! now try to parse the data file in advance to check what's going on.191: ! now try to parse the data file in advance to check what's going on.
196: ! DMACRYS doen's have a coordiate file, that's why we initialize the dmacrys stuff here in192: ! DMACRYS doen's have a coordiate file, that's why we initialize the dmacrys stuff here in
197: ! a firts pass reading the data file193: ! a firts pass reading the data file
198: ! -------------------------194: ! -------------------------
199:        if(.not.countatoms_from_datafile()) then195:        if(.not.countatoms_from_datafile()) then
200:           PRINT '(A)','ERROR - no coords, input.crd, coords.inpcrd or coords.amber &196:           PRINT '(A)','ERROR - no coords, input.crd, coords.inpcrd or coords.amber &
201:                &file to determine number of atoms. Also could not be guessed from &197:                &file to determine number of atoms. Also could not be guessed from &


r31569/opep_interface.F90 2017-01-21 10:35:55.830250000 +0000 r31568/opep_interface.F90 2017-01-21 10:35:56.730250000 +0000
 39:  39: 
 40:   CHARACTER (LEN=4), ALLOCATABLE , SAVE :: RES_NAMES(:), ATOM_NAMES(:) 40:   CHARACTER (LEN=4), ALLOCATABLE , SAVE :: RES_NAMES(:), ATOM_NAMES(:)
 41:   INTEGER, ALLOCATABLE ,SAVE :: RES_NUMS(:) 41:   INTEGER, ALLOCATABLE ,SAVE :: RES_NUMS(:)
 42:  42: 
 43: #ifdef __OPEP 43: #ifdef __OPEP
 44:   TYPE (t_conformations), SAVE :: CONF 44:   TYPE (t_conformations), SAVE :: CONF
 45: #endif 45: #endif
 46:  46: 
 47:   CONTAINS 47:   CONTAINS
 48:    48:   
 49:     SUBROUTINE OPEP_GET_NATOMS(NATOM_) 
 50: #ifdef __OPEP 
 51:     USE PORFUNCS 
 52:     USE COMMONS, ONLY: DEBUG, MYUNIT 
 53: #endif 
 54:     INTEGER, INTENT(OUT) :: NATOM_ 
 55: #ifdef __OPEP 
 56:     !variables needed for creating everything for the output routine later on 
 57:     INTEGER :: PDB_FILE_UNIT, GETUNIT, L 
 58:     CHARACTER (LEN=10) :: WORD 
 59:     CHARACTER (LEN=100) :: LINE 
 60:     LOGICAL :: END_PDB 
 61:     L=0 
 62:     WRITE(MYUNIT,*) ' OPEP_get_atoms> parsing conf_initiale.pdb' 
 63:     CALL FILE_OPEN("conf_initiale.pdb",PDB_FILE_UNIT,.FALSE.)  !open pdb   
 64: 30  READ(PDB_FILE_UNIT,*,ERR=40,END=40) LINE 
 65:     READ(LINE,'(A4)',ERR=30) WORD 
 66:     IF (WORD .EQ. "ATOM") THEN 
 67:        L = L + 1  
 68:        GOTO 30 
 69:     ELSE IF (WORD .EQ. "END") THEN 
 70:        GOTO 40 
 71:     ELSE 
 72:        GOTO 30 
 73:     ENDIF 
 74:     !close the pdb file and return to main program 
 75: 40  CONTINUE 
 76:     CLOSE(PDB_FILE_UNIT) 
 77:     NATOM_ = L !return number of atoms 
 78:     NATOMS = L !set internal number of atoms for OPEP potential 
 79:     WRITE(MYUNIT,'(A,I6)') ' OPEP_get_atoms> Number of atoms in pdb: ',L 
 80:  
 81: #endif 
 82:     RETURN 
 83:   END SUBROUTINE OPEP_GET_NATOMS 
 84:   SUBROUTINE OPEP_INIT(NATOM_,COORDS,RNAT) 49:   SUBROUTINE OPEP_INIT(NATOM_,COORDS,RNAT)
 85: #ifdef __OPEP 50: #ifdef __OPEP
 86:     USE PORFUNCS 51:     USE PORFUNCS
 87:     USE COMMONS, ONLY: MYUNIT,DEBUG 52:     USE COMMONS, ONLY: MYUNIT,DEBUG
 88: #endif 53: #endif
 89:     INTEGER, INTENT(IN) :: NATOM_ 54:     INTEGER, INTENT(IN) :: NATOM_
 90:     LOGICAL, INTENT(IN) :: RNAT 55:     LOGICAL, INTENT(IN) :: RNAT
 91:     DOUBLE PRECISION, INTENT(OUT) :: COORDS(3*NATOM_) 56:     DOUBLE PRECISION, INTENT(OUT) :: COORDS(3*NATOM_)
 92: #ifdef __OPEP 57: #ifdef __OPEP
 93:     !variables needed for creating everything for the output routine later on 58:     !variables needed for creating everything for the output routine later on
 94:     INTEGER :: PDB_FILE_UNIT, GETUNIT, L 59:     INTEGER :: PDB_FILE_UNIT, GETUNIT, L
 95:     CHARACTER (LEN=10) :: WORD 60:     CHARACTER (LEN=10) :: WORD
 96:     LOGICAL :: END_PDB 61:     LOGICAL :: END_PDB
  62:     NATOMS = NATOM_  !set the natoms variable for the OPEP interface - this is
  63:                      !identical to GMIN, but has to be separated by name from
  64:                      !GMIN as the OPEP internal definitions also use the name
  65:                      !natoms
 97:     !start initialising 66:     !start initialising
 98:     ALLOCATE(RES_NAMES(NATOMS)) 67:     ALLOCATE(RES_NAMES(NATOMS))
 99:     ALLOCATE(RES_NUMS(NATOMS)) 68:     ALLOCATE(RES_NUMS(NATOMS))
100:     ALLOCATE(ATOM_NAMES(NATOMS)) 69:     ALLOCATE(ATOM_NAMES(NATOMS))
101:     IF (DEBUG) WRITE(MYUNIT,*) 'OPEP_init> call OPEP definitions and initialisation' 70:     IF (DEBUG) WRITE(MYUNIT,*) 'OPEP_init> call OPEP definitions and initialisation'
102:     CALL DEFINITIONS() !get all variables needed for OPEP 71:     CALL DEFINITIONS() !get all variables needed for OPEP
103:     CALL INITIALISE(CONF,RNAT) !initialise force field  72:     CALL INITIALISE(CONF,RNAT) !initialise force field 
104:    73:   
105:     COORDS=pos !pos is a variable from DEFS initiliased in INITIALISE 74:     COORDS=pos !pos is a variable from DEFS initiliased in INITIALISE
106:     !everything needed for calculations is set up now  75:     !everything needed for calculations is set up now 


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0