hdiff output

r33063/commons.f90 2017-07-24 17:30:21.612857478 +0100 r33062/commons.f90 2017-07-24 17:30:22.196865318 +0100
  4:      &        NATOMS, MAXLENGTH, CONNECTIONS, HORDER, ERROR, MINSEP, NRWREACTANT, &  4:      &        NATOMS, MAXLENGTH, CONNECTIONS, HORDER, ERROR, MINSEP, NRWREACTANT, &
  5:      &        NATTEMPT, NNEW, NTOTAL, NEXCLUDE, NPERMGROUP, BHSTEPS, NGTSIZE,  &  5:      &        NATTEMPT, NNEW, NTOTAL, NEXCLUDE, NPERMGROUP, BHSTEPS, NGTSIZE,  &
  6:      &        MAXCONN, KAPPA, ISEED, NTAG, NDIHE, NCPU, GTINT, NCONNMAX, BESTPATHLENGTH, NGLY, &  6:      &        MAXCONN, KAPPA, ISEED, NTAG, NDIHE, NCPU, GTINT, NCONNMAX, BESTPATHLENGTH, NGLY, &
  7:      &        STARTMINA, STARTMINB, WHICHMIN, SECONDMIN, WHICHTS, MAXATTEMPT, COSTFUNCTIONPOWER, &  7:      &        STARTMINA, STARTMINB, WHICHMIN, SECONDMIN, WHICHTS, MAXATTEMPT, COSTFUNCTIONPOWER, &
  8:      &        NPAIRDONE, NMINDONE, NPAIRFRQ, CHECKSPS, CHECKSPF, &  8:      &        NPAIRDONE, NMINDONE, NPAIRFRQ, CHECKSPS, CHECKSPF, &
  9:      &        BISECTSTEPS, BISECTMAXATTEMPTS, NDIAGEIG, QRELONE, QRELTWO, MAXTSATTEMPTS, &  9:      &        BISECTSTEPS, BISECTMAXATTEMPTS, NDIAGEIG, QRELONE, QRELTWO, MAXTSATTEMPTS, &
 10:      &        INTCONSEP, INTREPSEP, PAIRDISTMAX, PAIRDIST1, PAIRDIST2, PATOM1, PATOM2, NRANROT, & 10:      &        INTCONSEP, INTREPSEP, PAIRDISTMAX, PAIRDIST1, PAIRDIST2, PATOM1, PATOM2, NRANROT, &
 11:      &        NMINADDXYZ, LOCALPERMNEIGH, NRATESCYCLETEMPS, RATESUNIT, CONNMINSTART, DISTANCETO, & 11:      &        NMINADDXYZ, LOCALPERMNEIGH, NRATESCYCLETEMPS, RATESUNIT, CONNMINSTART, DISTANCETO, &
 12:      &        DISTANCETO1, DISTANCETO2, OSTART, OFINISH, PTSTART, PTFINISH, RFMULTIN, RFUNIT, & 12:      &        DISTANCETO1, DISTANCETO2, OSTART, OFINISH, PTSTART, PTFINISH, RFMULTIN, RFUNIT, &
 13:      &        RFKMCN, RFKMCSTEPS, NPEQ, MLPIN, MLPSTART, MLPOUT, MLPHIDDEN, NMLP, NOPT, CVSTARTMIN, CVENDMIN, CVINCMIN, & 13:      &        RFKMCN, RFKMCSTEPS, NPEQ, MLPIN, MLPSTART, MLPOUT, MLPHIDDEN, NMLP, NOPT, CVSTARTMIN, CVENDMIN, CVINCMIN, &
 14:      &        CONNECTMIN2F, CONNECTMIN2SAVE, NZEROS, MLPNEIGH 14:      &        CONNECTMIN2F, CONNECTMIN2SAVE, NZEROS
 15:  15: 
 16:       INTEGER, ALLOCATABLE :: LOCATIONA(:), LOCATIONB(:) 16:       INTEGER, ALLOCATABLE :: LOCATIONA(:), LOCATIONB(:)
 17:       INTEGER, ALLOCATABLE :: NCONN(:)     ! reallocate MAXMIN when used 17:       INTEGER, ALLOCATABLE :: NCONN(:)     ! reallocate MAXMIN when used
 18:       INTEGER, ALLOCATABLE :: BESTPATH(:)   18:       INTEGER, ALLOCATABLE :: BESTPATH(:)  
 19:       INTEGER, ALLOCATABLE :: USEPAIRSMIN(:) 19:       INTEGER, ALLOCATABLE :: USEPAIRSMIN(:)
 20:       INTEGER, ALLOCATABLE :: CONNECTPAIRSMIN(:,:) 20:       INTEGER, ALLOCATABLE :: CONNECTPAIRSMIN(:,:)
 21: ! 21: !
 22: ! I/O unit numbers 22: ! I/O unit numbers
 23: ! 23: !
 24:       INTEGER, PARAMETER :: UMINDATA=11, UTSDATA=12, UMIN=13, UTS=15 24:       INTEGER, PARAMETER :: UMINDATA=11, UTSDATA=12, UMIN=13, UTS=15
102:      &        DUMPGROUPST, FREEPAIRT, KSHORTESTPATHST, KSHORT_FULL_PRINTT, DIJINITFLYT, BHINTERPT, ICINTERPT, &102:      &        DUMPGROUPST, FREEPAIRT, KSHORTESTPATHST, KSHORT_FULL_PRINTT, DIJINITFLYT, BHINTERPT, ICINTERPT, &
103:      &        DUMMYTST, DOCKT, DSTAGE(6), USEPAIRST, LOWESTFRQT, BISECTT, NGTDISCONNECTALL, ANGLEAXIS2, MULTISITEPYT, TFOLDT, &103:      &        DUMMYTST, DOCKT, DSTAGE(6), USEPAIRST, LOWESTFRQT, BISECTT, NGTDISCONNECTALL, ANGLEAXIS2, MULTISITEPYT, TFOLDT, &
104:      &        SLURMT, INDEXCOSTFUNCTION, CVT, CVMINIMAT, DOST, IMFRQT, CLOSEFILEST, PULLT, FRICTIONT, ATOMMATCHFULL, &104:      &        SLURMT, INDEXCOSTFUNCTION, CVT, CVMINIMAT, DOST, IMFRQT, CLOSEFILEST, PULLT, FRICTIONT, ATOMMATCHFULL, &
105:      &        INTCONSTRAINTT, CHECKCONINT, INTLJT, INTERPCOSTFUNCTION, REMOVEUNCONNECTEDT, ATOMMATCHDIST, &105:      &        INTCONSTRAINTT, CHECKCONINT, INTLJT, INTERPCOSTFUNCTION, REMOVEUNCONNECTEDT, ATOMMATCHDIST, &
106:      &        DBPT, DBPTDT, DMBLPYT, EFIELDT, MSSTOCKT, NTIPT, PAHAT, PAPT, PATCHYDT, STOCKAAT, RBAAT, RBSYMT, TRAPT, SILANET, &106:      &        DBPT, DBPTDT, DMBLPYT, EFIELDT, MSSTOCKT, NTIPT, PAHAT, PAPT, PATCHYDT, STOCKAAT, RBAAT, RBSYMT, TRAPT, SILANET, &
107:      &        OHCELLT, INTFREEZET, LPERMDIST, PBST, RANDOMMETRICT, SSHT, ALLTST, USERPOTT, CHECKMINT, &107:      &        OHCELLT, INTFREEZET, LPERMDIST, PBST, RANDOMMETRICT, SSHT, ALLTST, USERPOTT, CHECKMINT, &
108:      &        CHECKTST, CHECKSPT, FROMLOWESTT, ADDMINXYZT, MACHINE, RATESCYCLET, NOINVERSION, NEWCONNECTIONST, NIMET, NIHEAM7T, &108:      &        CHECKTST, CHECKSPT, FROMLOWESTT, ADDMINXYZT, MACHINE, RATESCYCLET, NOINVERSION, NEWCONNECTIONST, NIMET, NIHEAM7T, &
109:      &        NIH2LEPST, DISTANCET, RATETARGETT, TARGETHIT, ALLOWABT, MICROTHERMT, RFKMCT, REGROUPKMCT, ONEREGROUPT, PHI4MODT, &109:      &        NIH2LEPST, DISTANCET, RATETARGETT, TARGETHIT, ALLOWABT, MICROTHERMT, RFKMCT, REGROUPKMCT, ONEREGROUPT, PHI4MODT, &
110:      &        PERSISTT, REGROUPPERSISTT, NOLABELST, SHANNONT, MAKEPAIRS, SKIPPAIRST, PERSISTAPPROXT, ALLCOMPONENTST, &110:      &        PERSISTT, REGROUPPERSISTT, NOLABELST, SHANNONT, MAKEPAIRS, SKIPPAIRST, PERSISTAPPROXT, ALLCOMPONENTST, &
111:      &        SHANNONRT, SHANNONZT, CUDAT, MLLJAT3, MLP3T, DIJPRUNET, PRINTSUMMARYT, MKTRAPT, MLPB3T, PRUNECYCLET, PAIRSIGNORET, &111:      &        SHANNONRT, SHANNONZT, CUDAT, MLLJAT3, MLP3T, DIJPRUNET, PRINTSUMMARYT, MKTRAPT, MLPB3T, PRUNECYCLET, PAIRSIGNORET, &
112:      &        NOTRANSROTT, NOPOINTGROUPT, MACROIONT, CONNECTPAIRST, INITIALDIST, MLPVB3NNT112:      &        NOTRANSROTT, NOPOINTGROUPT, MACROIONT, CONNECTPAIRST, INITIALDIST
113: 113: 
114:       LOGICAL, ALLOCATABLE :: SHIFTABLE(:)114:       LOGICAL, ALLOCATABLE :: SHIFTABLE(:)
115:       CHARACTER(LEN=80) COORDSLIGANDSTR, COORDSCOMPLEXSTR, COORDSPROTEINSTR115:       CHARACTER(LEN=80) COORDSLIGANDSTR, COORDSCOMPLEXSTR, COORDSPROTEINSTR
116:       CHARACTER(LEN=80) EXEC,EXECGMIN116:       CHARACTER(LEN=80) EXEC,EXECGMIN
117:       CHARACTER(LEN=80) PATHNAME, MINNAME, ADDMINXYZNAME, ALLCOMPS117:       CHARACTER(LEN=80) PATHNAME, MINNAME, ADDMINXYZNAME, ALLCOMPS
118:       CHARACTER(LEN=150) COPYFILES118:       CHARACTER(LEN=150) COPYFILES
119:       CHARACTER(LEN=80) USEPAIRSFILE119:       CHARACTER(LEN=80) USEPAIRSFILE
120:       CHARACTER(LEN=80) CONNECTPAIRSFILE120:       CHARACTER(LEN=80) CONNECTPAIRSFILE
121:       CHARACTER(LEN=80) MAKEPAIRSFILE121:       CHARACTER(LEN=80) MAKEPAIRSFILE
122:       CHARACTER(LEN=2) DIRECTION122:       CHARACTER(LEN=2) DIRECTION


r33063/keywords.f 2017-07-24 17:30:21.864860824 +0100 r33062/keywords.f 2017-07-24 17:30:22.476868956 +0100
 19:       SUBROUTINE KEYWORDS 19:       SUBROUTINE KEYWORDS
 20:       USE PORFUNCS 20:       USE PORFUNCS
 21:       USE NODES, ONLY: JPN, GETNODES, NNODES 21:       USE NODES, ONLY: JPN, GETNODES, NNODES
 22:       USE COMMONS 22:       USE COMMONS
 23:       USE RIGIDBODYMOD, ONLY: CAPSOMER, NUMRBTYPES, CAPSOMERDEFS 23:       USE RIGIDBODYMOD, ONLY: CAPSOMER, NUMRBTYPES, CAPSOMERDEFS
 24:       IMPLICIT NONE 24:       IMPLICIT NONE
 25:  25: 
 26:       INTEGER ITEM, NITEMS, LOC, LINE, NCR, NERROR, IR, ISTAT, NDUMMY2, LAST 26:       INTEGER ITEM, NITEMS, LOC, LINE, NCR, NERROR, IR, ISTAT, NDUMMY2, LAST
 27:       LOGICAL CAT 27:       LOGICAL CAT
 28:       COMMON /BUFINF/ ITEM, NITEMS, LOC(80), LINE, SKIPBL, CLEAR, NCR, NERROR, IR, ECHO, LAST, CAT 28:       COMMON /BUFINF/ ITEM, NITEMS, LOC(80), LINE, SKIPBL, CLEAR, NCR, NERROR, IR, ECHO, LAST, CAT
 29:       INTEGER J1, NDUMMY, J2, J3, NELLIPSOIDS, MLPDATA 29:       INTEGER J1, NDUMMY, J2, J3, NELLIPSOIDS
 30:       DOUBLE PRECISION DUMMY, DBSIGBB, RBSITEPOS, MLPLAMBDA 30:       DOUBLE PRECISION DUMMY, DBSIGBB, RBSITEPOS
 31:       DOUBLE PRECISION, ALLOCATABLE :: RBCENTRE(:,:) 31:       DOUBLE PRECISION, ALLOCATABLE :: RBCENTRE(:,:)
 32:       DOUBLE PRECISION, ALLOCATABLE :: MLPDISTHI(:), MLPDISTHO(:) 
 33:       INTEGER, ALLOCATABLE :: MLPINDEXI(:), MLPINDEXO(:) 
 34:       INTEGER K1, II1 
 35:  
 36:       LOGICAL END, SKIPBL, CLEAR, ECHO, PERMFILE, RBSYMTEST 32:       LOGICAL END, SKIPBL, CLEAR, ECHO, PERMFILE, RBSYMTEST
 37:       CHARACTER(LEN=100) WW 33:       CHARACTER(LEN=100) WW
 38:       CHARACTER(LEN=80) RWENERGYFILE 34:       CHARACTER(LEN=80) RWENERGYFILE
 39:       CHARACTER(LEN=20) WORD 35:       CHARACTER(LEN=20) WORD
 40:       CHARACTER(LEN=1) LOYNO 36:       CHARACTER(LEN=1) LOYNO
 41:       CHARACTER(LEN=9) UNSTRING 37:       CHARACTER(LEN=9) UNSTRING
 42:       CHARACTER(LEN=4) LABEL 38:       CHARACTER(LEN=4) LABEL
 43:       CHARACTER(LEN=8) DUMMYSTRING  39:       CHARACTER(LEN=8) DUMMYSTRING 
 44:         40:        
 45:       TYPE (CAPSOMER), ALLOCATABLE :: TEMPCAPSOMERDEFS(:) 41:       TYPE (CAPSOMER), ALLOCATABLE :: TEMPCAPSOMERDEFS(:)
355:       EHIGHBAR=HUGE(1.0D0)351:       EHIGHBAR=HUGE(1.0D0)
356:       BAILDIST=TINY(1.0D0)352:       BAILDIST=TINY(1.0D0)
357: !353: !
358: ! To document...354: ! To document...
359: !355: !
360: !356: !
361: ! Neural network potential357: ! Neural network potential
362: !358: !
363:       MLP3T=.FALSE.359:       MLP3T=.FALSE.
364:       MLPB3T=.FALSE.360:       MLPB3T=.FALSE.
365:       MLPNEIGH=1 
366:       MLPLAMBDA=0.0D0 
367: !361: !
368: ! MK trap potential362: ! MK trap potential
369: !363: !
370:       MKTRAPT=.FALSE.364:       MKTRAPT=.FALSE.
371: 365: 
372:       PHI4MODT=.FALSE.366:       PHI4MODT=.FALSE.
373:       MLLJAT3=.FALSE.367:       MLLJAT3=.FALSE.
374:       RELATIVEET=.FALSE.368:       RELATIVEET=.FALSE.
375:       RATETARGETT=.FALSE.369:       RATETARGETT=.FALSE.
376:       RATETARGETAB=HUGE(1.0)370:       RATETARGETAB=HUGE(1.0)
1481: ! MLPDATA data lines in MLPdata file (last column MLPIN+1 for correct outputs, numbered one to MLPOUT)1475: ! MLPDATA data lines in MLPdata file (last column MLPIN+1 for correct outputs, numbered one to MLPOUT)
1482: ! MLPLAMBDA coefficient for regularisation1476: ! MLPLAMBDA coefficient for regularisation
1483: !1477: !
1484:       ELSE IF ((WORD.EQ.'MLPVB3').OR.(WORD.EQ.'MLPVB3NN')) THEN1478:       ELSE IF ((WORD.EQ.'MLPVB3').OR.(WORD.EQ.'MLPVB3NN')) THEN
1485:          MLPB3T=.TRUE.1479:          MLPB3T=.TRUE.
1486:          ZSYM='  '1480:          ZSYM='  '
1487:          CALL READI(MLPIN)      ! number of inputs (data items after outcome)1481:          CALL READI(MLPIN)      ! number of inputs (data items after outcome)
1488:          CALL READI(MLPSTART) ! starting position in data list, not counting outcome1482:          CALL READI(MLPSTART) ! starting position in data list, not counting outcome
1489:          CALL READI(MLPHIDDEN)1483:          CALL READI(MLPHIDDEN)
1490:          CALL READI(MLPOUT)1484:          CALL READI(MLPOUT)
1491:          CALL READI(MLPDATA)1485: !        CALL READI(MLPDATA)
1492:          IF (NITEMS.GT.5) CALL READF(MLPLAMBDA)1486: !        IF (NITEMS.GT.5) CALL READF(MLPLAMBDA)
1493:          IF ((WORD.EQ.'MLPVB3NN').AND.(NITEMS.GT.6)) CALL READI(MLPNEIGH) 
1494:          IF (MLPNEIGH.EQ.0) THEN 
1495:             WRITE(*,'(A)') 'keywords> *** ERROR cannot have zero nearest neighbours, check odata' 
1496:             STOP 
1497:          ENDIF 
1498:          IF (WORD.EQ.'MLPVB3NN') MLPVB3NNT=.TRUE. 
1499:  
1500:          WRITE(*,'(A,5I8,G20.10)') ' keywords> MLPVB3 vector bias nodes and Nin, Ninstart, Nhidden, Nout=',1487:          WRITE(*,'(A,5I8,G20.10)') ' keywords> MLPVB3 vector bias nodes and Nin, Ninstart, Nhidden, Nout=',
1501:      &                                MLPIN,MLPSTART,MLPHIDDEN,MLPOUT1488:      &                                MLPIN,MLPSTART,MLPHIDDEN,MLPOUT
1502:          NMLP=MLPHIDDEN*(MLPIN+MLPOUT)+MLPHIDDEN+MLPOUT1489:          NMLP=MLPHIDDEN*(MLPIN+MLPOUT)+MLPHIDDEN+MLPOUT
1503:          NATOMS=NMLP1490:          NATOMS=NMLP
1504:          NOPT=NMLP1491:          NOPT=NMLP
1505: 1492: 
1506:          IF (WORD.EQ.'MLPVB3NN') THEN1493:          IF (WORD.EQ.'MLPVB3NN') THEN
1507:             IF (.NOT.ALLOCATED(FROZEN)) THEN1494:             IF (.NOT.ALLOCATED(FROZEN)) THEN
1508:                ALLOCATE(FROZEN(NATOMS))1495:                ALLOCATE(FROZEN(NATOMS))
1509:                DO J1=1,NATOMS1496:                DO J1=1,NATOMS
1510:                   FROZEN(J1)=.FALSE.1497:                   FROZEN(J1)=.FALSE.
1511:                ENDDO1498:                ENDDO
1512:             ENDIF1499:             ENDIF
1513: 1500: 
1514:             ALLOCATE( MLPDISTHI(MLPIN), MLPDISTHO(MLPOUT), MLPINDEXI(MLPIN), MLPINDEXO(MLPOUT)) 
1515:             WRITE(*,'(A)') 'Original nearest-neighbour fomulation:' 
1516:             FREEZE=.TRUE.1501:             FREEZE=.TRUE.
1517:             NFREEZE=MLPHIDDEN*(MLPIN+MLPOUT)-2*MLPHIDDEN1502:             NFREEZE=MLPHIDDEN*(MLPIN+MLPOUT)-2*MLPHIDDEN
1518:             FROZEN(1:MLPHIDDEN*(MLPIN+MLPOUT))=.TRUE.1503:             FROZEN(1:MLPHIDDEN*(MLPIN+MLPOUT))=.TRUE.
1519:             DO J1=1,MLPHIDDEN1504:             DO J1=1,MLPHIDDEN
1520:                J2=NINT(1.0D0*(MLPHIDDEN+J1*(MLPIN-1)-MLPIN)/(MLPHIDDEN-1)) ! unfrozen weight for hidden node J1 to input1505:                J2=NINT(1.0D0*(MLPHIDDEN+J1*(MLPIN-1)-MLPIN)/(MLPHIDDEN-1)) ! unfrozen weight for hidden node J1 to input
1521:                J3=(J1-1)*MLPIN+J21506:                J3=(J1-1)*MLPIN+J2
1522:                FROZEN(J3)=.FALSE.1507:                FROZEN(J3)=.FALSE.
1523:                PRINT '(A,I10,A,I10,A,I10)','keywords> Unfrozen weight ',J3,' input ',J2,' to hidden node ',J11508:                PRINT '(A,I10,A,I10,A,I10)','keywords> Unfrozen weight ',J3,' input ',J2,' to hidden node ',J1
1524:                J2=NINT(1.0D0*(MLPHIDDEN+J1*(MLPOUT-1)-MLPOUT)/(MLPHIDDEN-1)) ! unfrozen weight for hidden node J1 to output1509:                J2=NINT(1.0D0*(MLPHIDDEN+J1*(MLPOUT-1)-MLPOUT)/(MLPHIDDEN-1)) ! unfrozen weight for hidden node J1 to output
1525:                J3=MLPHIDDEN*MLPIN+(J2-1)*MLPHIDDEN+J11510:                J3=MLPHIDDEN*MLPIN+(J2-1)*MLPHIDDEN+J1
1526:                PRINT '(A,I10,A,I10,A,I10)','keywords> Unfrozen weight ',J3,' hidden node ',J1,' to output ',J21511:                PRINT '(A,I10,A,I10,A,I10)','keywords> Unfrozen weight ',J3,' hidden node ',J1,' to output ',J2
1527:                FROZEN(J3)=.FALSE.1512:                FROZEN(J3)=.FALSE.
1528:             ENDDO1513:             ENDDO
1529:             WRITE(*,'(A,I6,A)') 'keywords> New nearest-neighbour formulation with ',MLPNEIGH,' neighbours' 
1530:             NFREEZE=MLPHIDDEN*(MLPIN+MLPOUT) 
1531:             FROZEN(1:MLPHIDDEN*(MLPIN+MLPOUT))=.TRUE. 
1532:             DO J1=1,MLPHIDDEN 
1533:                   ! 
1534: ! Distances from hidden J1 to all input nodes for 
1535: ! w^2_{J1 K1} at (J1-1)*MLPIN+K1 up to MLPHIDDEN*MLPIN 
1536: ! 
1537:                DO K1=1,MLPIN 
1538:                   MLPINDEXI(K1)=K1 
1539:                   MLPDISTHI(K1)=( (J1-1.0D0)/(MLPHIDDEN-1.0D0) - (K1-1.0D0)/(MLPIN-1.0D0) )**2 - K1*1.0D-6 ! to break degeneracy 
1540:                ENDDO 
1541:                CALL SORT4(MLPIN,MLPIN,MLPDISTHI,MLPINDEXI) 
1542:                DO J2=1,MIN(MLPNEIGH,MLPIN) 
1543:                   WRITE(*,'(A,I8,A,I8,A,I8,A,G20.10)') 'hidden ',J1,' input neighbour ',J2,' is ',MLPINDEXI(J2),' distance ', 
1544:      &                                                      MLPDISTHI(J2) 
1545:                   J3=(J1-1)*MLPIN+MLPINDEXI(J2) 
1546:                   FROZEN(J3)=.FALSE. 
1547:                   NFREEZE=NFREEZE-1 
1548:                ENDDO 
1549: ! 
1550: ! Distances from hidden J1 to all output nodes for 
1551: ! w^1_{I1 J1} at MLPHIDDEN*MLPIN + (I1-1)*MLPHIDDEN+J1 up to MLPHIDDEN*MLPIN + MLPOUT*MLPHIDDEN 
1552: ! 
1553:                DO II1=1,MLPOUT 
1554:                   MLPINDEXO(II1)=II1 
1555:                   MLPDISTHO(II1)=( (J1-1.0D0)/(MLPHIDDEN-1.0D0) - (II1-1.0D0)/(MLPOUT-1.0D0) )**2 - II1*1.0D-6 ! to break degeneracy 
1556:                ENDDO 
1557:                CALL SORT4(MLPOUT,MLPOUT,MLPDISTHO,MLPINDEXO) 
1558:                DO J2=1,MIN(MLPNEIGH,MLPOUT) 
1559:                   WRITE(*,'(A,I8,A,I8,A,I8,A,G20.10)') 'hidden ',J1,' output neighbour ',J2,' is ',MLPINDEXO(J2), 
1560:      &               ' distance ',MLPDISTHO(J2) 
1561:                   J3=MLPHIDDEN*MLPIN+(MLPINDEXO(J2)-1)*MLPHIDDEN+J1 
1562:                   FROZEN(J3)=.FALSE. 
1563:                   NFREEZE=NFREEZE-1 
1564:                ENDDO 
1565:             ENDDO 
1566:             DEALLOCATE( MLPDISTHI, MLPDISTHO, MLPINDEXI, MLPINDEXO) 
1567:  
1568:          ENDIF1514:          ENDIF
1569: 1515: 
1570:       ELSE IF (WORD.EQ.'MLPB3NEW') THEN1516:       ELSE IF (WORD.EQ.'MLPB3NEW') THEN
1571:          MLPB3T=.TRUE.1517:          MLPB3T=.TRUE.
1572:          ZSYM='  '1518:          ZSYM='  '
1573:          CALL READI(MLPIN)      ! number of inputs (data items after outcome)1519:          CALL READI(MLPIN)      ! number of inputs (data items after outcome)
1574:          CALL READI(MLPSTART) ! starting position in data list, not counting outcome1520:          CALL READI(MLPSTART) ! starting position in data list, not counting outcome
1575:          CALL READI(MLPHIDDEN)1521:          CALL READI(MLPHIDDEN)
1576:          CALL READI(MLPOUT)1522:          CALL READI(MLPOUT)
1577: !        CALL READI(MLPDATA)1523: !        CALL READI(MLPDATA)


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0