hdiff output

r18792/GMIN.tex 2017-01-21 10:40:55.097851854 +0000 r18791/GMIN.tex 2017-01-21 10:40:57.629970345 +0000
359: \item {\it CG \/}: specifies a conjugate-gradient minimisation scheme. Inefficient compared to LBFGS.359: \item {\it CG \/}: specifies a conjugate-gradient minimisation scheme. Inefficient compared to LBFGS.
360: 360: 
361: \item {\it CHANGEACCEPT naccept\/}: {\it naccept\/} is an integer which sets the interval361: \item {\it CHANGEACCEPT naccept\/}: {\it naccept\/} is an integer which sets the interval
362: at which the acceptance ratio is checked and possible adjustments are made to the maximum362: at which the acceptance ratio is checked and possible adjustments are made to the maximum
363: step size or the temperature. The default is {\it naccept\/}$=50$.363: step size or the temperature. The default is {\it naccept\/}$=50$.
364:   364:   
365: \item {\it CHARMM}: specifies that a CHARMM potential should be used.365: \item {\it CHARMM}: specifies that a CHARMM potential should be used.
366: See also keywords {\it CHARMMTYPE}, {\it CHPMAX}, {\it CHPMIN}, {\it CHNMAX}, {\it CHNMIN},366: See also keywords {\it CHARMMTYPE}, {\it CHPMAX}, {\it CHPMIN}, {\it CHNMAX}, {\it CHNMIN},
367: {\it NOPHIPSI}, {\it TOMEGA}, {\it INTMIN}, {\it CHFREQ}, {\it CHRIGIDROT}, 367: {\it NOPHIPSI}, {\it TOMEGA}, {\it INTMIN}, {\it CHFREQ}, {\it CHRIGIDROT}, 
368: {\it CHRIGIDTRANS}, and {\it RMS}. If {\it CHNMAX} is not specified, a cartesian 368: {\it CHRIGIDTRANS}, and {\it RMS}. If {\it CHNMAX} is not specified, a cartesian 
369: displacement step taking scheme will be used. For cartesian steps, rings are moved as rigid bodies to avoid false knotted minima. See {\it RINGROTSCALE}. Finally, Molecular Dynamics (MD) can be employed to generate new geometries. See {\it CHMD} 369: displacement step taking scheme will be used. For cartesian steps, rings are moved as rigid bodies to avoid false knotted minima. See {\it RINGROTSCALE}.
370:  
371: \item {\it CHMD CHMDFREQ\/}: Requests Molecular Dynamics (MD) runs to be performed every {\it CHMDFREQ} step to generate new geometries. A {\it CHMDFREQ} setting of 20 will execute an MD run every 20$^\mathrm{th}$ step, while dihedral or cartesian moves are applied otherwise as specified in the data file. A CHARMM parameter file named 'chmd.par' containing all relevant keywords for the CHARMM {\it DYNA} module has to be present in the working directory. All CHARMM keywords must be uppercase and given in the first line. A typical example is: 
372:  
373: VERL NSTEP 500 TIMESTEP 0.002 TWINDH 10.0 IEQFRQ 200 ICHECW 1 IASORS 0 IASVEL 1 FIRS 500 FINA 500  
374:  
375: Please consult the CHARMM manual for further details on the {\it DYNA} module. Currently, the length of the input string given in 'chmd.par' is limited to 500 characters. 
376: 370: 
377: \item{\it CHARMMENERGIES}: prints the components of the total CHARMM energy after each step.371: \item{\it CHARMMENERGIES}: prints the components of the total CHARMM energy after each step.
378: 372: 
379: \item {\it CHARMMTYPE topfile paramfile\/}:  {\it topfile} and {\it paramfile} are the373: \item {\it CHARMMTYPE topfile paramfile\/}:  {\it topfile} and {\it paramfile} are the
380: common CHARMM top and param files , e.g., `toph19\_eef1\_perm.inp' and `param19\_eef1\_perm.inp'.374: common CHARMM top and param files , e.g., `toph19\_eef1\_perm.inp' and `param19\_eef1\_perm.inp'.
381: 375: 
382: \item{\it CHFREQ nfreq}: used with {\it CHARMM} keyword to specify that every376: \item{\it CHFREQ nfreq}: used with {\it CHARMM} keyword to specify that every
383: {\it nfreq} basin-hopping steps dihedrals are twisted. Default is {\it nfreq}=1.377: {\it nfreq} basin-hopping steps dihedrals are twisted. Default is {\it nfreq}=1.
384: 378: 
385: \item{\it CHNMAX}: used with {\it CHARMM} keyword to specify the maximum allowed379: \item{\it CHNMAX}: used with {\it CHARMM} keyword to specify the maximum allowed
659: a neutral, cationic or electronically excited neon cluster. See also653: a neutral, cationic or electronically excited neon cluster. See also
660: {\it GROUND\/}, {\it PLUS\/}, {\it TWOPLUS\/} and {\it STAR\/}.654: {\it GROUND\/}, {\it PLUS\/}, {\it TWOPLUS\/} and {\it STAR\/}.
661: 655: 
662: \item {\it NEWJUMP prob\/}: for (serial)656: \item {\it NEWJUMP prob\/}: for (serial)
663: `parallel' runs specifies a jump probability between runs 657: `parallel' runs specifies a jump probability between runs 
664: (parallel tempering) of {\it prob\/}.658: (parallel tempering) of {\it prob\/}.
665: See the {\it BHPT\/} keyword for a better alternative.659: See the {\it BHPT\/} keyword for a better alternative.
666: 660: 
667: \item {\it NEWRESTART nrelax nhs MD newrestemp\/}: reseed runs if the energy does not decrease within {\it nrelax} steps.661: \item {\it NEWRESTART nrelax nhs MD newrestemp\/}: reseed runs if the energy does not decrease within {\it nrelax} steps.
668: {\it nhs} is the number of hard sphere moves used to produce the new starting configuration.662: {\it nhs} is the number of hard sphere moves used to produce the new starting configuration.
669: If {\it nhs=0} (the default) then the geometry is changed by reseeding. If {\it MD} is present, then a short AMBER or CHARMM MD run is performed at temperature {\it newrestemp} to generate the new configuration.663: If {\it nhs=0} (the default) then the geometry is changed by reseeding. If {\it MD} is present, then a short AMBER md run is performed 
 664: at temperature {\it newrestemp} to generate the new configuration. 
670: 665: 
671: \item {\it NMAX nmax\/}: {\it nmax\/} is an integer that specifies the maximum number of dihedral angles666: \item {\it NMAX nmax\/}: {\it nmax\/} is an integer that specifies the maximum number of dihedral angles
672: to be twisted in {\it AMBER\/}.667: to be twisted in {\it AMBER\/}.
673: 668: 
674: \item {\it NMIN nmax\/}: {\it nmin\/} is an integer that specifies the minimum number of dihedral angles669: \item {\it NMIN nmax\/}: {\it nmin\/} is an integer that specifies the minimum number of dihedral angles
675: to be twisted in {\it AMBER\/}.670: to be twisted in {\it AMBER\/}.
676: 671: 
677: \item {\it NOCHIRALCHECKS\/}: disables checks for inversion of CA atoms and chiral side-chains for ILE and THR.672: \item {\it NOCHIRALCHECKS\/}: disables checks for inversion of CA atoms and chiral side-chains for ILE and THR.
678: 673: 
679: \item {\it NOCISTRANS minomega\/}: set on by default with a threshold {\it minomega} of 150 degrees.  674: \item {\it NOCISTRANS minomega\/}: set on by default with a threshold {\it minomega} of 150 degrees.  


r18792/Makefile 2017-01-21 10:40:55.549873071 +0000 r18791/Makefile 2017-01-21 10:40:58.073991032 +0000
  1: svn: E195012: Unable to find repository location for 'svn+ssh://svn.ch.private.cam.ac.uk/groups/wales/trunk/GMIN/source/Makefile' in revision 18792  1: svn: E195012: Unable to find repository location for 'svn+ssh://svn.ch.private.cam.ac.uk/groups/wales/trunk/GMIN/source/Makefile' in revision 18791


r18792/mc.F 2017-01-21 10:40:56.009894667 +0000 r18791/mc.F 2017-01-21 10:40:58.526012025 +0000
353: C  Check for reseeding.353: C  Check for reseeding.
354:  354:  
355:                POTEL=EPREV(JP) ! NEWRES assumes POTEL is the energy of the current structure in COORDS355:                POTEL=EPREV(JP) ! NEWRES assumes POTEL is the energy of the current structure in COORDS
356: !              WRITE(MYUNIT, '(A,3F15.5,L10)') 'in mc 1 EPREV(JP),POTEL,EBEST,CHANGEDE=',EPREV(JP),POTEL,EBEST,CHANGEDE356: !              WRITE(MYUNIT, '(A,3F15.5,L10)') 'in mc 1 EPREV(JP),POTEL,EBEST,CHANGEDE=',EPREV(JP),POTEL,EBEST,CHANGEDE
357:                IF (CHANGEDE.AND.NEWRESTART) THEN357:                IF (CHANGEDE.AND.NEWRESTART) THEN
358:                   CALL NEWRES(J1,JP,JBEST,EBEST,BESTCOORDS,EPPREV,POTEL,ITERATIONS,TIME,RCOORDS,358:                   CALL NEWRES(J1,JP,JBEST,EBEST,BESTCOORDS,EPPREV,POTEL,ITERATIONS,TIME,RCOORDS,
359:      1                  RMIN,RVAT,BRUN,SCREENC,QDONE,JACCPREV,NSUCCESS,NFAIL,NFAILT,NSUCCESST)359:      1                  RMIN,RVAT,BRUN,SCREENC,QDONE,JACCPREV,NSUCCESS,NFAIL,NFAILT,NSUCCESST)
360:                ENDIF360:                ENDIF
361: !              PRINT '(A,3F15.5)','in mc 2 EPREV(JP),POTEL,EBEST=',EPREV(JP),POTEL,EBEST361: !              PRINT '(A,3F15.5)','in mc 2 EPREV(JP),POTEL,EBEST=',EPREV(JP),POTEL,EBEST
362: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! DJW362: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! DJW
363: ! th368        IF (CENT.AND.(.NOT.SEEDT)) CALL CENTRE2(COORDS(1:3*NATOMS,JP))363:                IF (CENT.AND.(.NOT.SEEDT)) CALL CENTRE2(COORDS(1:3*NATOMS,JP))
364: ! th368        COORDSO(1:3*(NATOMS-NSEED),JP)=COORDS(1:3*(NATOMS-NSEED),JP)364:                COORDSO(1:3*(NATOMS-NSEED),JP)=COORDS(1:3*(NATOMS-NSEED),JP)
365: ! th368        WRITE(MYUNIT,'(A,2G20.10)'),'mc> coordso changed: ',COORDSO(1,JP),COORDS(1,JP)     365: !              WRITE(MYUNIT,'(A,2G20.10)'),'mc> coordso changed: ',COORDSO(1,JP),COORDS(1,JP)     
366: ! th368        VATO(1:NATOMS,JP)=VAT(1:NATOMS,JP)366:                VATO(1:NATOMS,JP)=VAT(1:NATOMS,JP)
367: ! th368 20-10-2009 This part has been moved to subroutine NEWRES 
368: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! DJW367: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! DJW
369:             ELSEIF (ABS(ELASTSYM(JP)-EPREV(JP)).GT.ECONV) THEN ! Markov minimum has changed, but SYMMETRY not called368:             ELSEIF (ABS(ELASTSYM(JP)-EPREV(JP)).GT.ECONV) THEN ! Markov minimum has changed, but SYMMETRY not called
370:                NSYMREM=0                                       ! Should therefore reset NSYMREM.369:                NSYMREM=0                                       ! Should therefore reset NSYMREM.
371:             ENDIF370:             ENDIF
372: 371: 
373: !           ELSE372: !           ELSE
374:                IF (AMBER) THEN373:                IF (AMBER) THEN
375:                   CALL TAKESTEPAM(JP)374:                   CALL TAKESTEPAM(JP)
376: ! 375: ! 
377: !       csw34> Takestep for the CHARMM potential including additional376: !       csw34> Takestep for the CHARMM potential including additional
1575:                MSBCOORDS(1:3*NATOMS,NPOSITION)=DUMMY(1:3*NATOMS)1574:                MSBCOORDS(1:3*NATOMS,NPOSITION)=DUMMY(1:3*NATOMS)
1576:                WRITE(MYUNIT,'(A,I6,A,G20.10)') 'newres> Moving previous best minimum to position ',NPOSITION,1575:                WRITE(MYUNIT,'(A,I6,A,G20.10)') 'newres> Moving previous best minimum to position ',NPOSITION,
1577:      1                             ' in the AVOID list E=',EBESTP1576:      1                             ' in the AVOID list E=',EBESTP
1578: !           ENDIF1577: !           ENDIF
1579:          ENDIF ! end new condition1578:          ENDIF ! end new condition
1580: 1579: 
1581:          IF (NEWRESTART_MD) THEN ! lb4151580:          IF (NEWRESTART_MD) THEN ! lb415
1582:             IF (RES1) WRITE(MYUNIT,'(A,I8,A)') 'newres> Energy has not improved since step ',JBEST(JP),' - perturbing'1581:             IF (RES1) WRITE(MYUNIT,'(A,I8,A)') 'newres> Energy has not improved since step ',JBEST(JP),' - perturbing'
1583:             WRITE(MYUNIT,'(A,I8,A)') 'newres> Reseeding due to a short high temperature MD run'1582:             WRITE(MYUNIT,'(A,I8,A)') 'newres> Reseeding due to a short high temperature MD run'
1584:             CHANGE_TEMP = .true.1583:             CHANGE_TEMP = .true.
1585: 1584:             CALL TAKESTEPAMBER(JP,COORDS(:,JP),movableatomlist,nmovableatoms,ligmovet,mdstept,randomseedt)
1586: ! th368: 20-10-2009 Extending MD-Reseeding to the CHARMM interface 
1587: ! terminate if neither AMBER nor CHARMM was requested in the data file 
1588:  
1589:              IF (AMBERT) THEN 
1590:                CALL TAKESTEPAMBER(JP,COORDS(:,JP),movableatomlist,nmovableatoms,ligmovet,mdstept,randomseedt) 
1591:              ELSEIF (CHRMMT) THEN 
1592:                CALL CHMD(JP) 
1593:              ELSE 
1594:                WRITE(MYUNIT,'(A,I8,A)') 'newres> Molecular Dynamics reseeding is available for AMBER or CHARMM runs only.' 
1595:                STOP 
1596:              ENDIF 
1597: ! end th368: 20-10-2009 
1598:  
1599:             CHANGE_TEMP = .false.1585:             CHANGE_TEMP = .false.
1600:          ELSE1586:          ELSE
1601:             IF (NHSRESTART.GT.0) THEN1587:             IF (NHSRESTART.GT.0) THEN
1602:                IF (RES1) WRITE(MYUNIT,'(A,I8,A)') 'newres> Energy has not improved since step ',JBEST(JP),' - perturbing'1588:                IF (RES1) WRITE(MYUNIT,'(A,I8,A)') 'newres> Energy has not improved since step ',JBEST(JP),' - perturbing'
1603:                IF (RES2) WRITE(MYUNIT,'(A,I8,A)') 'newres> Reseeding due to taboo condition'1589:                IF (RES2) WRITE(MYUNIT,'(A,I8,A)') 'newres> Reseeding due to taboo condition'
1604:                IF (SHELLMOVES(JP)) WRITE(MYUNIT,'(A)') 'newres> Turning off shell moves'1590:                IF (SHELLMOVES(JP)) WRITE(MYUNIT,'(A)') 'newres> Turning off shell moves'
1605:                SHELLMOVES(JP)=.FALSE.1591:                SHELLMOVES(JP)=.FALSE.
1606:                CALL REST(ITERATIONS,TIME,J1,RCOORDS,RMIN,RVAT,JACCPREV)1592:                CALL REST(ITERATIONS,TIME,J1,RCOORDS,RMIN,RVAT,JACCPREV)
1607:             ELSE1593:             ELSE
1608:                IF (RES1) WRITE(MYUNIT,'(A,I8,A)') 'newres> Energy has not improved since step ',JBEST(JP),' - reseeding'1594:                IF (RES1) WRITE(MYUNIT,'(A,I8,A)') 'newres> Energy has not improved since step ',JBEST(JP),' - reseeding'
1660:          CALL QUENCH(.FALSE.,JP,ITERATIONS,TIME,BRUN,QDONE,SCREENC)1646:          CALL QUENCH(.FALSE.,JP,ITERATIONS,TIME,BRUN,QDONE,SCREENC)
1661:          NSUCCESS(JP)=01647:          NSUCCESS(JP)=0
1662:          NFAIL(JP)=01648:          NFAIL(JP)=0
1663:          POTEL=QENERGY1649:          POTEL=QENERGY
1664:          EBEST(JP)=POTEL ! this is communicated via common block MYPOT, which is in quench.f1650:          EBEST(JP)=POTEL ! this is communicated via common block MYPOT, which is in quench.f
1665:          BESTCOORDS(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)1651:          BESTCOORDS(1:3*NATOMS,JP)=COORDS(1:3*NATOMS,JP)
1666:          JBEST(JP)=J11652:          JBEST(JP)=J1
1667:          EPREV(JP)=POTEL !1653:          EPREV(JP)=POTEL !
1668:          EPPREV(JP)=0.0D01654:          EPPREV(JP)=0.0D0
1669:          NSYMREM=01655:          NSYMREM=0
1670:  
1671: ! th368: 20.10.2009 updates should only take place in case  
1672: ! reseeding took place - transfered from subroutine MC lines 363 to 367  
1673:  
1674:          IF (CENT.AND.(.NOT.SEEDT)) CALL CENTRE2(COORDS(1:3*NATOMS,JP)) 
1675:          COORDSO(1:3*(NATOMS-NSEED),JP)=COORDS(1:3*(NATOMS-NSEED),JP) 
1676:          WRITE(MYUNIT,'(A,2G20.10)'),'mc> coordso changed: ',COORDSO(1,JP),COORDS(1,JP)      
1677:          VATO(1:NATOMS,JP)=VAT(1:NATOMS,JP) 
1678:  
1679: ! end th368 20.10.2009 
1680:  
1681:       ENDIF1656:       ENDIF
1682: 1657: 
1683:       RETURN1658:       RETURN
1684:       END1659:       END
1685: 1660: 
1686: C1661: C
1687: C  Reseed if the energy has not improved by more than ECONV over the1662: C  Reseed if the energy has not improved by more than ECONV over the
1688: C  last NRELAX mc steps.1663: C  last NRELAX mc steps.
1689: C  If AVOID is true then save the energy and coordinates of the lowest1664: C  If AVOID is true then save the energy and coordinates of the lowest
1690: C  minimum achieved before each restart and restart if we get too close1665: C  minimum achieved before each restart and restart if we get too close


r18792/perm-prmtop.ff02.py 2017-01-21 10:40:56.469916186 +0000 r18791/perm-prmtop.ff02.py 2017-01-21 10:40:59.010034504 +0000
 20: ##                                                            # 20: ##                                                            #
 21: ## IMPORTANT:                                                 # 21: ## IMPORTANT:                                                 #
 22: ## 1. please change names of terminal amino acid residues     # 22: ## 1. please change names of terminal amino acid residues     #
 23: ##    according to warnings below                             # 23: ##    according to warnings below                             #
 24: ## 2. please change path to libraries                         # 24: ## 2. please change path to libraries                         #
 25: ## 3. program changes the atom order ONLY for amino acid and  # 25: ## 3. program changes the atom order ONLY for amino acid and  #
 26: ##    nucleic residues                                        # 26: ##    nucleic residues                                        #
 27: ##                                                            # 27: ##                                                            #
 28: ############################################################### 28: ###############################################################
 29:  29: 
 30: path = '/home/th368/svn/AMBERTOOLS/dat/leap/lib' 30: path = '/home/csw34/svn/AMBERTOOLS/dat/leap/lib'
 31:  31: 
 32: ######################### 32: #########################
 33: ## some useful functions 33: ## some useful functions
 34: ######################### 34: #########################
 35:  35: 
 36: def exchange_atoms(atom_type, a, aa, residue, dihedrals, currentAtomNumber): 36: def exchange_atoms(atom_type, a, aa, residue, dihedrals, currentAtomNumber):
 37:   find_atom = a[aa.index(residue)].index(atom_type) 37:   find_atom = a[aa.index(residue)].index(atom_type)
 38:   atomNumber = find_atom+currentAtomNumber 38:   atomNumber = find_atom+currentAtomNumber
 39:   atomNumberIndex = atomNumber*3 39:   atomNumberIndex = atomNumber*3
 40:   for j in range(len(dihedrals)): 40:   for j in range(len(dihedrals)):


r18792/perm-prmtop.ff03.py 2017-01-21 10:40:56.693926665 +0000 r18791/perm-prmtop.ff03.py 2017-01-21 10:40:59.234044870 +0000
 20: ##                                                            # 20: ##                                                            #
 21: ## IMPORTANT:                                                 # 21: ## IMPORTANT:                                                 #
 22: ## 1. please change names of terminal amino acid residues     # 22: ## 1. please change names of terminal amino acid residues     #
 23: ##    according to warnings below                             # 23: ##    according to warnings below                             #
 24: ## 2. please change path to libraries                         # 24: ## 2. please change path to libraries                         #
 25: ## 3. program changes the atom order ONLY for amino acid and  # 25: ## 3. program changes the atom order ONLY for amino acid and  #
 26: ##    nucleic residues                                        # 26: ##    nucleic residues                                        #
 27: ##                                                            # 27: ##                                                            #
 28: ############################################################### 28: ###############################################################
 29:  29: 
 30: path = '/home/th368/svn/AMBERTOOLS/dat/leap/lib' 30: path = '/home/csw34/svn/AMBERTOOLS/dat/leap/lib'
 31:  31: 
 32: ######################### 32: #########################
 33: ## some useful functions 33: ## some useful functions
 34: ######################### 34: #########################
 35:  35: 
 36: def exchange_atoms(atom_type, a, aa, residue, dihedrals, currentAtomNumber): 36: def exchange_atoms(atom_type, a, aa, residue, dihedrals, currentAtomNumber):
 37:   find_atom = a[aa.index(residue)].index(atom_type) 37:   find_atom = a[aa.index(residue)].index(atom_type)
 38:   atomNumber = find_atom+currentAtomNumber 38:   atomNumber = find_atom+currentAtomNumber
 39:   atomNumberIndex = atomNumber*3 39:   atomNumberIndex = atomNumber*3
 40:   for j in range(len(dihedrals)): 40:   for j in range(len(dihedrals)):


r18792/perm-prmtop.ff03ua.py 2017-01-21 10:40:56.925937519 +0000 r18791/perm-prmtop.ff03ua.py 2017-01-21 10:40:59.462055423 +0000
 22: ## 0. copy /home/em427/amber9/leap into your AMBER            # 22: ## 0. copy /home/em427/amber9/leap into your AMBER            #
 23: ##    directory since in default AMBER9 there are             # 23: ##    directory since in default AMBER9 there are             #
 24: ##    missing parameters                                      # 24: ##    missing parameters                                      #
 25: ## 1. change names of terminal amino acid residues            # 25: ## 1. change names of terminal amino acid residues            #
 26: ##    according to warnings below                             # 26: ##    according to warnings below                             #
 27: ## 2. change path to libraries                                # 27: ## 2. change path to libraries                                #
 28: ## 3. program changes the atom order ONLY for amino acid      # 28: ## 3. program changes the atom order ONLY for amino acid      #
 29: ##                                                            # 29: ##                                                            #
 30: ############################################################### 30: ###############################################################
 31:  31: 
 32: path = '/home/th368/svn/AMBERTOOLS/dat/leap/lib' 32: path = '/home/csw34/svn/AMBERTOOLS/dat/leap/lib'
 33:  33: 
 34: ######################### 34: #########################
 35: ## some useful functions 35: ## some useful functions
 36: ######################### 36: #########################
 37:  37: 
 38: def exchange_atoms(atom_type, a, aa, residue, dihedrals, currentAtomNumber): 38: def exchange_atoms(atom_type, a, aa, residue, dihedrals, currentAtomNumber):
 39:   find_atom = a[aa.index(residue)].index(atom_type) 39:   find_atom = a[aa.index(residue)].index(atom_type)
 40:   atomNumber = find_atom+currentAtomNumber 40:   atomNumber = find_atom+currentAtomNumber
 41:   atomNumberIndex = atomNumber*3 41:   atomNumberIndex = atomNumber*3
 42:   for j in range(len(dihedrals)): 42:   for j in range(len(dihedrals)):


legend
Lines Added 
Lines changed
 Lines Removed

hdiff - version: 2.1.0