Repository: openmm/openmm — pull request #3506 (cpp)
Title: Do not add constraints involving extra particles

Fixes #3499.

Resolved issues:
title: TIP4P waters not compatible with AllBonds?
body: Hi All,

I'm attempting to run a system with TIP4Pew waters using the "AllBond" constraint option, but I get the following error:
```
openmm.OpenMMException: A constraint cannot involve a massless particle
```
I'm assuming this is because of the virtual site on the water molecules.

Here is the script I'm using:
```
import simtk.openmm.app as app
import simtk.openmm as mm
import simtk.unit as unit
from sys import stdout

import numpy as np

prmtop = app.AmberPrmtopFile('tryp_ben.prmtop')
inpcrd = app.AmberInpcrdFile('tryp_ben.inpcrd')
system = prmtop.createSystem(nonbondedMethod=app.PME, nonbondedCutoff=1*unit.nanometer,
        constraints=app.AllBonds)

num_steps = 10000
time_step = 0.002

input_file = "tryp_ben_new.pdb"

mypdb = app.PDBFile(input_file)

integrator = mm.LangevinIntegrator(298.15*unit.kelvin, 1/unit.picosecond, time_step*unit.picoseconds)
platform = mm.Platform.getPlatformByName('CUDA')
properties = {'CudaDeviceIndex': '0', 'CudaPrecision': 'mixed'}
simulation = app.Simulation(prmtop.topology, system, integrator, platform, properties)
simulation.context.setPositions(mypdb.positions)
simulation.context.setPeriodicBoxVectors(*inpcrd.boxVectors)
simulation.minimizeEnergy()
simulation.context.setVelocitiesToTemperature(298.15 * unit.kelvin)
```

I've attached the files one can use to recreate this error.
[tryp_ben.prmtop.zip](https://github.com/openmm/openmm/files/8181237/tryp_ben.prmtop.zip)
[tryp_ben.inpcrd.zip](https://github.com/openmm/openmm/files/8181238/tryp_ben.inpcrd.zip)


## IMPORTANT INSTRUCTIONS

1. If you edit a python file, you MUST run 'make PythonInstall' inside the build directory
2. If you edit a c++ file, you MUST run 'make -j4 && make install" inside the build directory

Hints:

Fix patch:
diff --git a/wrappers/python/openmm/app/internal/amber_file_parser.py b/wrappers/python/openmm/app/internal/amber_file_parser.py
index 26832fe589..e36152a962 100644
--- a/wrappers/python/openmm/app/internal/amber_file_parser.py
+++ b/wrappers/python/openmm/app/internal/amber_file_parser.py
@@ -768,15 +768,18 @@ def readAmberSystem(topology, prmtop_filename=None, prmtop_loader=None, shake=No
 
     # Add constraints.
     isWater = [prmtop.getResidueLabel(i) in ('WAT', 'HOH', 'TP4', 'TP5', 'T4E') for i in range(prmtop.getNumAtoms())]
+    isEP = [a.element is None for a in topology.atoms()]
     if shake in ('h-bonds', 'all-bonds', 'h-angles'):
         for (iAtom, jAtom, k, rMin) in prmtop.getBondsWithH():
-            system.addConstraint(iAtom, jAtom, rMin)
+            if not (isEP[iAtom] or isEP[jAtom]):
+                system.addConstraint(iAtom, jAtom, rMin)
     if shake in ('all-bonds', 'h-angles'):
         for (iAtom, jAtom, k, rMin) in prmtop.getBondsNoH():
-            system.addConstraint(iAtom, jAtom, rMin)
+            if not (isEP[iAtom] or isEP[jAtom]):
+                system.addConstraint(iAtom, jAtom, rMin)
     if rigidWater and shake is None:
         for (iAtom, jAtom, k, rMin) in prmtop.getBondsWithH():
-            if isWater[iAtom] and isWater[jAtom]:
+            if isWater[iAtom] and isWater[jAtom] and not (isEP[iAtom] or isEP[jAtom]):
                 system.addConstraint(iAtom, jAtom, rMin)
 
     # Add harmonic bonds.


Test patch:
diff --git a/wrappers/python/tests/TestAmberPrmtopFile.py b/wrappers/python/tests/TestAmberPrmtopFile.py
index 4473a2d86b..b107e9dede 100644
--- a/wrappers/python/tests/TestAmberPrmtopFile.py
+++ b/wrappers/python/tests/TestAmberPrmtopFile.py
@@ -448,5 +448,14 @@ def testAmberCMAP(self):
                 OpenMM_CMAP_E = simulation.context.getState(getEnergy=True, groups=1<<i).getPotentialEnergy().value_in_unit(kilojoules_per_mole)/conversion
                 self.assertAlmostEqual(OpenMM_CMAP_E, sander_CMAP_E, places=4)
 
+    def testEPConstraints(self):
+        """Test different types of constraints when using extra particles"""
+        prmtop = AmberPrmtopFile('systems/peptide_with_tip4p.prmtop')
+        for constraints in (HBonds, AllBonds):
+            system = prmtop.createSystem(constraints=constraints)
+            integrator = VerletIntegrator(0.001*picoseconds)
+            # If a constraint was added to a massless particle, this will throw an exception.
+            context = Context(system, integrator, Platform.getPlatformByName('Reference'))
+
 if __name__ == '__main__':
     unittest.main()
diff --git a/wrappers/python/tests/systems/peptide_with_tip4p.inpcrd b/wrappers/python/tests/systems/peptide_with_tip4p.inpcrd
new file mode 100644
index 0000000000..99127dab38
--- /dev/null
+++ b/wrappers/python/tests/systems/peptide_with_tip4p.inpcrd
@@ -0,0 +1,46 @@
+default_name
+    85
+   6.1027258   9.4114116   5.1039335   6.5815895  10.1277022   5.6290157
+   6.6678073   9.1230379   4.3177487   5.2086444   9.7657205   4.7621357
+   5.8010133   8.2419298   5.9556322   5.2338195   8.5904194   6.8193516
+   4.9060379   7.2614871   5.1978254   5.2290030   7.1815685   4.1573041
+   4.9489259   6.2745706   5.6619402   3.4965842   7.8237994   5.2678187
+   3.3776621   8.9780360   4.7980651   2.6472232   7.1669020   5.8997283
+   7.0376422   7.5370608   6.4781338   7.9157036   7.1622066   5.7047041
+   7.0652775   7.3158858   7.7952036   6.3169315   7.6633401   8.3789911
+   8.0764491   6.4982978   8.4537730   9.0634999   6.8670277   8.1688606
+   7.9197212   6.6666247   9.9695324   8.6690479   6.0648171  10.4845540
+   8.0657682   7.7128438  10.2415669   6.9244697   6.3515483  10.2875817
+   7.9931502   5.0209894   8.0274701   9.0297108   4.4106384   7.7836349
+   6.9039267   4.4598555   7.9317597   4.8638450  11.1831355   9.8736302
+   4.1346516  10.5621898   9.8644378   4.8794334  11.5468847   8.9890396
+   4.7726236  11.1496591   9.7590789   2.6329636   2.9920417   7.3605727
+   2.8338815   2.3735456   6.6584157   3.4695441   3.4182530   7.5500773
+   2.7657541   2.9679551   7.2948118  11.6032547   4.2363825   3.6652327
+  11.0489985   4.5413440   2.9475194  11.9080957   3.3741621   3.3823900
+  11.5709231   4.1649390   3.5372464   2.6699140   9.6787405   9.4896712
+   2.7570939   9.4003152   8.5789176   2.7420827   8.8695924   9.9959596
+   2.6901212   9.5395278   9.4380524   4.2027790   3.2218855   3.8639297
+   3.7166501   3.1773864   3.0401503   5.0820834   2.9173323   3.6390697
+   4.2524311   3.1769782   3.7295794   0.5083146   4.1661638   6.2786993
+   1.2617567   3.6970865   6.6372025   0.8431777   4.5870678   5.4874468
+   0.6474560   4.1596318   6.2235450   5.4377311   1.1104254   9.6028083
+   5.7316024   1.7256555   8.9303498   4.4874126   1.2190194   9.6268500
+   5.3534380   1.2030977   9.5200769  12.5431809   8.9055182   5.2286458
+  11.6760008   9.0337082   4.8468081  12.3913378   8.3331541   5.9810074
+  12.4132771   8.8479552   5.2760220  10.2580286  10.2519211   7.1265204
+  10.2459042  10.2237519   6.1698049  10.7147126  11.0667847   7.3358240
+  10.3146089  10.3527584   7.0310610   3.0018903   7.5970825  11.3670397
+   2.8021272   6.7560910  10.9540893   2.7438148   7.4819565  12.2820359
+   2.9430006   7.4746080  11.4306793   6.9630906  12.5058599   7.3124894
+   6.0324019  12.6912046   7.4397686   7.3972580  13.3452184   7.4595676
+   6.8995820  12.6364993   7.3478448   2.2680782   5.1300381  10.2420328
+   1.8500766   5.0630853  11.1004605   1.5463903   5.2949704   9.6353352
+   2.1225859   5.1422855  10.2745597  11.0871036   7.0226771   2.3181943
+  10.9127438   7.6505629   1.6181586  10.4907008   7.2778323   3.0231798
+  10.9883767   7.1353536   2.3196085   8.9439794   4.4033560   2.5175984
+   8.7517218   4.6458555   1.6110875   8.3729800   3.6546287   2.6915467
+   8.8458299   4.3392611   2.4235532  11.9946982   8.0588113   7.7954434
+  12.4305976   8.4597111   8.5478050  11.2851347   8.6646517   7.5790687
+  11.9594798   8.1878177   7.8647399
+  13.0633205  13.0633205  13.0633205 109.4712190 109.4712190 109.4712190
diff --git a/wrappers/python/tests/systems/peptide_with_tip4p.prmtop b/wrappers/python/tests/systems/peptide_with_tip4p.prmtop
new file mode 100644
index 0000000000..8d01f9df13
--- /dev/null
+++ b/wrappers/python/tests/systems/peptide_with_tip4p.prmtop
@@ -0,0 +1,431 @@
+%VERSION  VERSION_STAMP = V0001.000  DATE = 03/14/22  14:16:58                  
+%FLAG TITLE                                                                     
+%FORMAT(20a4)                                                                   
+default_name                                                                    
+%FLAG POINTERS                                                                  
+%FORMAT(10I8)                                                                   
+      85      11      56      28      25      17      41      40       0       0
+     228      17      28      17      40      19      30      25      16       1
+       0       0       0       0       0       0       0       2      14       0
+      15
+%FLAG ATOM_NAME                                                                 
+%FORMAT(20a4)                                                                   
+N   H1  H2  H3  CA  HA  CB  HB2 HB3 CG  OD1 OD2 C   O   N   H   CA  HA  CB  HB1 
+HB2 HB3 C   O   OXT O   H1  H2  EPW O   H1  H2  EPW O   H1  H2  EPW O   H1  H2  
+EPW O   H1  H2  EPW O   H1  H2  EPW O   H1  H2  EPW O   H1  H2  EPW O   H1  H2  
+EPW O   H1  H2  EPW O   H1  H2  EPW O   H1  H2  EPW O   H1  H2  EPW O   H1  H2  
+EPW O   H1  H2  EPW 
+%FLAG CHARGE                                                                    
+%FORMAT(5E16.8)                                                                 
+  1.42498386E+00  4.00890600E+00  4.00890600E+00  4.00890600E+00  5.32091160E-01
+  2.07916443E+00 -4.28224050E-01 -3.07956870E-01 -3.07956870E-01  1.49313526E+01
+ -1.47309073E+01 -1.47309073E+01  1.02427548E+01 -1.07311125E+01 -6.96274083E+00
+  4.88539863E+00 -3.18343581E+00  1.94431941E+00 -3.81392739E+00  1.39218372E+00
+  1.39218372E+00  1.39218372E+00  1.40876601E+01 -1.46780627E+01 -1.46780627E+01
+  0.00000000E+00  9.55249411E+00  9.55249411E+00 -1.91049882E+01  0.00000000E+00
+  9.55249411E+00  9.55249411E+00 -1.91049882E+01  0.00000000E+00  9.55249411E+00
+  9.55249411E+00 -1.91049882E+01  0.00000000E+00  9.55249411E+00  9.55249411E+00
+ -1.91049882E+01  0.00000000E+00  9.55249411E+00  9.55249411E+00 -1.91049882E+01
+  0.00000000E+00  9.55249411E+00  9.55249411E+00 -1.91049882E+01  0.00000000E+00
+  9.55249411E+00  9.55249411E+00 -1.91049882E+01  0.00000000E+00  9.55249411E+00
+  9.55249411E+00 -1.91049882E+01  0.00000000E+00  9.55249411E+00  9.55249411E+00
+ -1.91049882E+01  0.00000000E+00  9.55249411E+00  9.55249411E+00 -1.91049882E+01
+  0.00000000E+00  9.55249411E+00  9.55249411E+00 -1.91049882E+01  0.00000000E+00
+  9.55249411E+00  9.55249411E+00 -1.91049882E+01  0.00000000E+00  9.55249411E+00
+  9.55249411E+00 -1.91049882E+01  0.00000000E+00  9.55249411E+00  9.55249411E+00
+ -1.91049882E+01  0.00000000E+00  9.55249411E+00  9.55249411E+00 -1.91049882E+01
+%FLAG ATOMIC_NUMBER                                                             
+%FORMAT(10I8)                                                                   
+       7       1       1       1       6       1       6       1       1       6
+       8       8       6       8       7       1       6       1       6       1
+       1       1       6       8       8       8       1       1       0       8
+       1       1       0       8       1       1       0       8       1       1
+       0       8       1       1       0       8       1       1       0       8
+       1       1       0       8       1       1       0       8       1       1
+       0       8       1       1       0       8       1       1       0       8
+       1       1       0       8       1       1       0       8       1       1
+       0       8       1       1       0
+%FLAG MASS                                                                      
+%FORMAT(5E16.8)                                                                 
+  1.40100000E+01  1.00800000E+00  1.00800000E+00  1.00800000E+00  1.20100000E+01
+  1.00800000E+00  1.20100000E+01  1.00800000E+00  1.00800000E+00  1.20100000E+01
+  1.60000000E+01  1.60000000E+01  1.20100000E+01  1.60000000E+01  1.40100000E+01
+  1.00800000E+00  1.20100000E+01  1.00800000E+00  1.20100000E+01  1.00800000E+00
+  1.00800000E+00  1.00800000E+00  1.20100000E+01  1.60000000E+01  1.60000000E+01
+  1.60000000E+01  1.00800000E+00  1.00800000E+00  0.00000000E+00  1.60000000E+01
+  1.00800000E+00  1.00800000E+00  0.00000000E+00  1.60000000E+01  1.00800000E+00
+  1.00800000E+00  0.00000000E+00  1.60000000E+01  1.00800000E+00  1.00800000E+00
+  0.00000000E+00  1.60000000E+01  1.00800000E+00  1.00800000E+00  0.00000000E+00
+  1.60000000E+01  1.00800000E+00  1.00800000E+00  0.00000000E+00  1.60000000E+01
+  1.00800000E+00  1.00800000E+00  0.00000000E+00  1.60000000E+01  1.00800000E+00
+  1.00800000E+00  0.00000000E+00  1.60000000E+01  1.00800000E+00  1.00800000E+00
+  0.00000000E+00  1.60000000E+01  1.00800000E+00  1.00800000E+00  0.00000000E+00
+  1.60000000E+01  1.00800000E+00  1.00800000E+00  0.00000000E+00  1.60000000E+01
+  1.00800000E+00  1.00800000E+00  0.00000000E+00  1.60000000E+01  1.00800000E+00
+  1.00800000E+00  0.00000000E+00  1.60000000E+01  1.00800000E+00  1.00800000E+00
+  0.00000000E+00  1.60000000E+01  1.00800000E+00  1.00800000E+00  0.00000000E+00
+%FLAG ATOM_TYPE_INDEX                                                           
+%FORMAT(10I8)                                                                   
+       1       2       2       2       3       4       3       5       5       6
+       7       7       6       7       1       2       3       8       3       5
+       5       5       6       7       7       9      10      10      11       9
+      10      10      11       9      10      10      11       9      10      10
+      11       9      10      10      11       9      10      10      11       9
+      10      10      11       9      10      10      11       9      10      10
+      11       9      10      10      11       9      10      10      11       9
+      10      10      11       9      10      10      11       9      10      10
+      11       9      10      10      11
+%FLAG NUMBER_EXCLUDED_ATOMS                                                     
+%FORMAT(10I8)                                                                   
+      12       6       5       4      12       7       8       5       4       3
+       1       1       7       3      10       4       8       7       6       3
+       2       1       2       1       1       3       2       1       1       3
+       2       1       1       3       2       1       1       3       2       1
+       1       3       2       1       1       3       2       1       1       3
+       2       1       1       3       2       1       1       3       2       1
+       1       3       2       1       1       3       2       1       1       3
+       2       1       1       3       2       1       1       3       2       1
+       1       3       2       1       1
+%FLAG NONBONDED_PARM_INDEX                                                      
+%FORMAT(10I8)                                                                   
+       1       2       4       7      11      16      22      29      37      46
+      56       2       3       5       8      12      17      23      30      38
+      47      57       4       5       6       9      13      18      24      31
+      39      48      58       7       8       9      10      14      19      25
+      32      40      49      59      11      12      13      14      15      20
+      26      33      41      50      60      16      17      18      19      20
+      21      27      34      42      51      61      22      23      24      25
+      26      27      28      35      43      52      62      29      30      31
+      32      33      34      35      36      44      53      63      37      38
+      39      40      41      42      43      44      45      -1      64      46
+      47      48      49      50      51      52      53      -1      55      65
+      56      57      58      59      60      61      62      63      64      65
+      66
+%FLAG RESIDUE_LABEL                                                             
+%FORMAT(20a4)                                                                   
+ASP ALA WAT WAT WAT WAT WAT WAT WAT WAT WAT WAT WAT WAT WAT WAT WAT 
+%FLAG RESIDUE_POINTER                                                           
+%FORMAT(10I8)                                                                   
+       1      15      26      30      34      38      42      46      50      54
+      58      62      66      70      74      78      82
+%FLAG BOND_FORCE_CONSTANT                                                       
+%FORMAT(5E16.8)                                                                 
+  5.70000000E+02  4.90000000E+02  6.56000000E+02  3.40000000E+02  3.17000000E+02
+  3.40000000E+02  3.10000000E+02  3.17000000E+02  4.34000000E+02  3.67000000E+02
+  6.56000000E+02  3.40000000E+02  3.40000000E+02  3.10000000E+02  4.34000000E+02
+  3.37000000E+02  5.53000000E+02  5.53000000E+02  5.53000000E+02
+%FLAG BOND_EQUIL_VALUE                                                          
+%FORMAT(5E16.8)                                                                 
+  1.22900000E+00  1.33500000E+00  1.25000000E+00  1.09000000E+00  1.52200000E+00
+  1.09000000E+00  1.52600000E+00  1.52200000E+00  1.01000000E+00  1.47100000E+00
+  1.25000000E+00  1.09000000E+00  1.09000000E+00  1.52600000E+00  1.01000000E+00
+  1.44900000E+00  9.57200000E-01  1.51360000E+00  1.25000000E-01
+%FLAG ANGLE_FORCE_CONSTANT                                                      
+%FORMAT(5E16.8)                                                                 
+  8.00000000E+01  5.00000000E+01  5.00000000E+01  8.00000000E+01  5.00000000E+01
+  3.50000000E+01  6.30000000E+01  7.00000000E+01  5.00000000E+01  5.00000000E+01
+  5.00000000E+01  6.30000000E+01  8.00000000E+01  7.00000000E+01  5.00000000E+01
+  3.50000000E+01  5.00000000E+01  8.00000000E+01  8.00000000E+01  8.00000000E+01
+  3.50000000E+01  6.30000000E+01  5.00000000E+01  5.00000000E+01  5.00000000E+01
+  7.00000000E+01  5.00000000E+01  5.00000000E+01  8.00000000E+01  6.30000000E+01
+%FLAG ANGLE_EQUIL_VALUE                                                         
+%FORMAT(5E16.8)                                                                 
+  2.14501057E+00  2.09439600E+00  2.12755727E+00  2.19911580E+00  1.91113635E+00
+  1.91113635E+00  1.93906163E+00  2.04203610E+00  1.91113635E+00  1.91113635E+00
+  1.91113635E+00  1.93906163E+00  2.10137732E+00  2.03505478E+00  1.91113635E+00
+  1.91113635E+00  1.91113635E+00  1.94080696E+00  1.94080696E+00  2.19911580E+00
+  1.91113635E+00  1.93906163E+00  1.91113635E+00  1.91113635E+00  1.91113635E+00
+  2.04203610E+00  2.06018753E+00  1.91113635E+00  1.91462701E+00  1.92160833E+00
+%FLAG DIHEDRAL_FORCE_CONSTANT                                                   
+%FORMAT(5E16.8)                                                                 
+  2.00000000E+00  2.50000000E+00  0.00000000E+00  1.80000000E+00  8.00000000E-01
+  0.00000000E+00  0.00000000E+00  2.70000000E-01  4.20000000E-01  4.24000000E-01
+  4.59000000E-01  5.80000000E-02  1.54000000E-01  1.55555556E-01  2.00000000E-01
+  2.00000000E-01  4.00000000E-01  7.69000000E-01  0.00000000E+00  3.10000000E-02
+  2.15400000E+00  6.47000000E-01  8.90000000E-02  1.05000000E+01  1.10000000E+00
+%FLAG DIHEDRAL_PERIODICITY                                                      
+%FORMAT(5E16.8)                                                                 
+  1.00000000E+00  2.00000000E+00  2.00000000E+00  2.00000000E+00  3.00000000E+00
+  4.00000000E+00  1.00000000E+00  2.00000000E+00  3.00000000E+00  1.00000000E+00
+  2.00000000E+00  3.00000000E+00  4.00000000E+00  3.00000000E+00  1.00000000E+00
+  2.00000000E+00  3.00000000E+00  2.00000000E+00  3.00000000E+00  4.00000000E+00
+  1.00000000E+00  2.00000000E+00  4.00000000E+00  2.00000000E+00  2.00000000E+00
+%FLAG DIHEDRAL_PHASE                                                            
+%FORMAT(5E16.8)                                                                 
+  0.00000000E+00  3.14159400E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  3.14159400E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  3.14159400E+00  0.00000000E+00  3.14159400E+00
+  3.14159400E+00  3.14159400E+00  0.00000000E+00  3.14159400E+00  3.14159400E+00
+%FLAG SCEE_SCALE_FACTOR                                                         
+%FORMAT(5E16.8)                                                                 
+  1.20000000E+00  1.20000000E+00  1.20000000E+00  1.20000000E+00  1.20000000E+00
+  1.20000000E+00  1.20000000E+00  1.20000000E+00  1.20000000E+00  1.20000000E+00
+  1.20000000E+00  1.20000000E+00  1.20000000E+00  1.20000000E+00  1.20000000E+00
+  1.20000000E+00  1.20000000E+00  1.20000000E+00  1.20000000E+00  1.20000000E+00
+  1.20000000E+00  1.20000000E+00  1.20000000E+00  0.00000000E+00  0.00000000E+00
+%FLAG SCNB_SCALE_FACTOR                                                         
+%FORMAT(5E16.8)                                                                 
+  2.00000000E+00  2.00000000E+00  2.00000000E+00  2.00000000E+00  2.00000000E+00
+  2.00000000E+00  2.00000000E+00  2.00000000E+00  2.00000000E+00  2.00000000E+00
+  2.00000000E+00  2.00000000E+00  2.00000000E+00  2.00000000E+00  2.00000000E+00
+  2.00000000E+00  2.00000000E+00  2.00000000E+00  2.00000000E+00  2.00000000E+00
+  2.00000000E+00  2.00000000E+00  2.00000000E+00  0.00000000E+00  0.00000000E+00
+%FLAG SOLTY                                                                     
+%FORMAT(5E16.8)                                                                 
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00
+%FLAG LENNARD_JONES_ACOEF                                                       
+%FORMAT(5E16.8)                                                                 
+  9.44293233E+05  2.12601181E+03  1.39982777E-01  9.95480466E+05  2.56678134E+03
+  1.04308023E+06  2.01791425E+04  9.14716912E+00  2.27401052E+04  2.01823541E+02
+  8.96776989E+04  1.07193646E+02  9.71708117E+04  1.41077189E+03  7.51607703E+03
+  8.82619071E+05  2.27577561E+03  9.24822270E+05  2.01619733E+04  8.61541883E+04
+  8.19971662E+05  6.06829342E+05  1.02595236E+03  6.47841731E+05  1.12780457E+04
+  5.44261042E+04  5.74393458E+05  3.79876399E+05  6.20665997E+04  5.94667300E+01
+  6.78771368E+04  8.79040886E+02  4.98586848E+03  6.01816484E+04  3.69471530E+04
+  3.25969625E+03  7.87979792E+05  1.63574730E+03  8.33694635E+05  1.61827331E+04
+  7.36215582E+04  7.39175513E+05  5.02600786E+05  5.06742043E+04  6.56136207E+05
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00
+%FLAG LENNARD_JONES_BCOEF                                                       
+%FORMAT(5E16.8)                                                                 
+  8.01323529E+02  2.09604198E+01  9.37598976E-02  7.36907417E+02  2.06278363E+01
+  6.75612247E+02  6.45756063E+01  7.57919667E-01  6.13981767E+01  3.56012899E+00
+  1.36131731E+02  2.59456373E+00  1.26919150E+02  9.41257003E+00  2.17257828E+01
+  6.53361429E+02  1.82891803E+01  5.99015525E+02  5.44372326E+01  1.12529845E+02
+  5.31102864E+02  6.77220874E+02  1.53505284E+01  6.26720080E+02  5.08951803E+01
+  1.11805549E+02  5.55666448E+02  5.64885984E+02  1.13252061E+02  1.93248820E+00
+  1.06076943E+02  7.42992380E+00  1.76949863E+01  9.40505980E+01  9.21192136E+01
+  1.43076527E+01  7.24069102E+02  1.81862545E+01  6.67064884E+02  5.72019842E+01
+  1.22007818E+02  5.91437209E+02  6.09644486E+02  1.01222865E+02  6.53563058E+02
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00  0.00000000E+00
+  0.00000000E+00
+%FLAG BONDS_INC_HYDROGEN                                                        
+%FORMAT(10I8)                                                                   
+      18      21       4      18      24       4      12      15       6       0
+       3       9       0       6       9       0       9       9      54      57
+      12      54      60      12      54      63      12      48      51      13
+      42      45      15      78      75      17      81      75      17      81
+      78      18      90      87      17      93      87      17      93      90
+      18     102      99      17     105      99      17     105     102      18
+     114     111      17     117     111      17     117     114      18     126
+     123      17     129     123      17     129     126      18     138     135
+      17     141     135      17     141     138      18     150     147      17
+     153     147      17     153     150      18     162     159      17     165
+     159      17     165     162      18     174     171      17     177     171
+      17     177     174      18     186     183      17     189     183      17
+     189     186      18     198     195      17     201     195      17     201
+     198      18     210     207      17     213     207      17     213     210
+      18     222     219      17     225     219      17     225     222      18
+     234     231      17     237     231      17     237     234      18     246
+     243      17     249     243      17     249     246      18
+%FLAG BONDS_WITHOUT_HYDROGEN                                                    
+%FORMAT(10I8)                                                                   
+      36      39       1      36      42       2      27      30       3      27
+      33       3      18      27       5      12      18       7      12      36
+       8       0      12      10      66      69      11      66      72      11
+      48      54      14      48      66       8      42      48      16      84
+      75      19      96      87      19     108      99      19     120     111
+      19     132     123      19     144     135      19     156     147      19
+     168     159      19     180     171      19     192     183      19     204
+     195      19     216     207      19     228     219      19     240     231
+      19     252     243      19
+%FLAG ANGLES_INC_HYDROGEN                                                       
+%FORMAT(10I8)                                                                   
+      36      42      45       2      24      18      27       5      21      18
+      24       6      21      18      27       5      15      12      18       9
+      15      12      36      10      12      18      21      11      12      18
+      24      11       9       0      12      15       6       0       9      16
+       6       0      12      15       3       0       6      16       3       0
+       9      16       3       0      12      15       0      12      15      17
+      60      54      63      21      57      54      60      21      57      54
+      63      21      51      48      54      23      51      48      66      24
+      48      54      57      25      48      54      60      25      48      54
+      63      25      45      42      48      27      42      48      51      28
+%FLAG ANGLES_WITHOUT_HYDROGEN                                                   
+%FORMAT(10I8)                                                                   
+      39      36      42       1      36      42      48       3      30      27
+      33       4      18      12      36       7      18      27      30       8
+      18      27      33       8      12      18      27      12      12      36
+      39      13      12      36      42      14       0      12      18      18
+       0      12      36      19      69      66      72      20      54      48
+      66      22      48      66      69      26      48      66      72      26
+      42      48      54      29      42      48      66      30
+%FLAG DIHEDRALS_INC_HYDROGEN                                                    
+%FORMAT(10I8)                                                                   
+      39      36      42      45       1      39      36     -42      45       2
+      36      42      48      51       3      24      18      12      36      14
+      24      18      27      30       3      24      18      27      33       3
+      21      18      12      36      14      21      18      27      30       3
+      21      18      27      33       3      15      12      18      21      14
+      15      12      18      24      14      15      12      18      27      14
+      15      12      36      39       3      15      12      36      42       3
+      12      36      42      45       2       9       0      12      15      14
+       9       0      12      18      14       9       0      12      36      14
+       6       0      12      15      14       6       0      12      18      14
+       6       0      12      36      14       3       0      12      15      14
+       3       0      12      18      14       3       0      12      36      14
+       0      12      18      21      14       0      12      18      24      14
+      63      54      48      66      14      60      54      48      66      14
+      57      54      48      66      14      51      48      54      57      14
+      51      48      54      60      14      51      48      54      63      14
+      51      48      66      69       3      51      48      66      72       3
+      45      42      48      51       3      45      42      48      54       3
+      45      42      48      66       3      42      48      54      57      14
+      42      48      54      60      14      42      48      54      63      14
+      36      48     -42     -45      25
+%FLAG DIHEDRALS_WITHOUT_HYDROGEN                                                
+%FORMAT(10I8)                                                                   
+      39      36      42      48       2      36      42      48      54       1
+      36      42     -48      54       4      36      42     -48      54       5
+      36      42     -48      54       6      36      42      48      66       7
+      36      42     -48      66       8      36      42     -48      66       9
+      36      42     -48      66       6      27      18      12      36      10
+      27      18     -12      36      11      27      18     -12      36      12
+      27      18     -12      36      13      18      12      36      39       3
+      18      12      36      42      15      18      12     -36      42      16
+      18      12     -36      42      17      18      12     -36      42       6
+      12      18      27      30       7      12      18     -27      30      18
+      12      18     -27      30      19      12      18     -27      30      20
+      12      18      27      33       7      12      18     -27      33      18
+      12      18     -27      33      19      12      18     -27      33      20
+      12      36      42      48       2       0      12      18      27      21
+       0      12     -18      27      22       0      12     -18      27      12
+       0      12     -18      27      23       0      12      36      39       3
+       0      12      36      42       3      54      48      66      69       3
+      54      48      66      72       3      42      48      66      69       3
+      42      48      66      72       3      12      42     -36     -39      24
+      18      30     -27     -33      24      48      69     -66     -72      24
+%FLAG EXCLUDED_ATOMS_LIST                                                       
+%FORMAT(10I8)                                                                   
+       2       3       4       5       6       7       8       9      10      13
+      14      15       3       4       5       6       7      13       4       5
+       6       7      13       5       6       7      13       6       7       8
+       9      10      11      12      13      14      15      16      17       7
+       8       9      10      13      14      15       8       9      10      11
+      12      13      14      15       9      10      11      12      13      10
+      11      12      13      11      12      13      12       0      14      15
+      16      17      18      19      23      15      16      17      16      17
+      18      19      20      21      22      23      24      25      17      18
+      19      23      18      19      20      21      22      23      24      25
+      19      20      21      22      23      24      25      20      21      22
+      23      24      25      21      22      23      22      23      23      24
+      25      25       0      27      28      29      28      29      29       0
+      31      32      33      32      33      33       0      35      36      37
+      36      37      37       0      39      40      41      40      41      41
+       0      43      44      45      44      45      45       0      47      48
+      49      48      49      49       0      51      52      53      52      53
+      53       0      55      56      57      56      57      57       0      59
+      60      61      60      61      61       0      63      64      65      64
+      65      65       0      67      68      69      68      69      69       0
+      71      72      73      72      73      73       0      75      76      77
+      76      77      77       0      79      80      81      80      81      81
+       0      83      84      85      84      85      85       0
+%FLAG HBOND_ACOEF                                                               
+%FORMAT(5E16.8)                                                                 
+  0.00000000E+00
+%FLAG HBOND_BCOEF                                                               
+%FORMAT(5E16.8)                                                                 
+  0.00000000E+00
+%FLAG HBCUT                                                                     
+%FORMAT(5E16.8)                                                                 
+  0.00000000E+00
+%FLAG AMBER_ATOM_TYPE                                                           
+%FORMAT(20a4)                                                                   
+N3  H   H   H   CX  HP  2C  HC  HC  CO  O2  O2  C   O   N   H   CX  H1  CT  HC  
+HC  HC  C   O2  O2  OW  HW  HW  EP  OW  HW  HW  EP  OW  HW  HW  EP  OW  HW  HW  
+EP  OW  HW  HW  EP  OW  HW  HW  EP  OW  HW  HW  EP  OW  HW  HW  EP  OW  HW  HW  
+EP  OW  HW  HW  EP  OW  HW  HW  EP  OW  HW  HW  EP  OW  HW  HW  EP  OW  HW  HW  
+EP  OW  HW  HW  EP  
+%FLAG TREE_CHAIN_CLASSIFICATION                                                 
+%FORMAT(20a4)                                                                   
+BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA BLA 
+BLA BLA BLA BLA BLA M   S   E   E   M   S   E   E   M   S   E   E   M   S   E   
+E   M   S   E   E   M   S   E   E   M   S   E   E   M   S   E   E   M   S   E   
+E   M   S   E   E   M   S   E   E   M   S   E   E   M   S   E   E   M   S   E   
+E   M   S   E   E   
+%FLAG JOIN_ARRAY                                                                
+%FORMAT(10I8)                                                                   
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0
+%FLAG IROTAT                                                                    
+%FORMAT(10I8)                                                                   
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0       0       0       0       0       0
+       0       0       0       0       0
+%FLAG SOLVENT_POINTERS                                                          
+%FORMAT(3I8)                                                                    
+       2      16       2
+%FLAG ATOMS_PER_MOLECULE                                                        
+%FORMAT(10I8)                                                                   
+      25       4       4       4       4       4       4       4       4       4
+       4       4       4       4       4       4
+%FLAG BOX_DIMENSIONS                                                            
+%FORMAT(5E16.8)                                                                 
+  1.09471219E+02  1.30633205E+01  1.30633205E+01  1.30633205E+01
+%FLAG RADIUS_SET                                                                
+%FORMAT(1a80)                                                                   
+H(N)-modified Bondi radii (mbondi2)                                             
+%FLAG RADII                                                                     
+%FORMAT(5E16.8)                                                                 
+  1.55000000E+00  1.30000000E+00  1.30000000E+00  1.30000000E+00  1.70000000E+00
+  1.20000000E+00  1.70000000E+00  1.20000000E+00  1.20000000E+00  1.70000000E+00
+  1.50000000E+00  1.50000000E+00  1.70000000E+00  1.50000000E+00  1.55000000E+00
+  1.30000000E+00  1.70000000E+00  1.20000000E+00  1.70000000E+00  1.20000000E+00
+  1.20000000E+00  1.20000000E+00  1.70000000E+00  1.50000000E+00  1.50000000E+00
+  1.50000000E+00  1.20000000E+00  1.20000000E+00  1.50000000E+00  1.50000000E+00
+  1.20000000E+00  1.20000000E+00  1.50000000E+00  1.50000000E+00  1.20000000E+00
+  1.20000000E+00  1.50000000E+00  1.50000000E+00  1.20000000E+00  1.20000000E+00
+  1.50000000E+00  1.50000000E+00  1.20000000E+00  1.20000000E+00  1.50000000E+00
+  1.50000000E+00  1.20000000E+00  1.20000000E+00  1.50000000E+00  1.50000000E+00
+  1.20000000E+00  1.20000000E+00  1.50000000E+00  1.50000000E+00  1.20000000E+00
+  1.20000000E+00  1.50000000E+00  1.50000000E+00  1.20000000E+00  1.20000000E+00
+  1.50000000E+00  1.50000000E+00  1.20000000E+00  1.20000000E+00  1.50000000E+00
+  1.50000000E+00  1.20000000E+00  1.20000000E+00  1.50000000E+00  1.50000000E+00
+  1.20000000E+00  1.20000000E+00  1.50000000E+00  1.50000000E+00  1.20000000E+00
+  1.20000000E+00  1.50000000E+00  1.50000000E+00  1.20000000E+00  1.20000000E+00
+  1.50000000E+00  1.50000000E+00  1.20000000E+00  1.20000000E+00  1.50000000E+00
+%FLAG SCREEN                                                                    
+%FORMAT(5E16.8)                                                                 
+  7.90000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01
+  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01  7.20000000E-01
+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.90000000E-01
+  8.50000000E-01  7.20000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01
+  8.50000000E-01  8.50000000E-01  7.20000000E-01  8.50000000E-01  8.50000000E-01
+  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.00000000E-01  8.50000000E-01
+  8.50000000E-01  8.50000000E-01  8.00000000E-01  8.50000000E-01  8.50000000E-01
+  8.50000000E-01  8.00000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01
+  8.00000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.00000000E-01
+  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.00000000E-01  8.50000000E-01
+  8.50000000E-01  8.50000000E-01  8.00000000E-01  8.50000000E-01  8.50000000E-01
+  8.50000000E-01  8.00000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01
+  8.00000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.00000000E-01
+  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.00000000E-01  8.50000000E-01
+  8.50000000E-01  8.50000000E-01  8.00000000E-01  8.50000000E-01  8.50000000E-01
+  8.50000000E-01  8.00000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01
+  8.00000000E-01  8.50000000E-01  8.50000000E-01  8.50000000E-01  8.00000000E-01
+%FLAG IPOL                                                                      
+%FORMAT(1I8)                                                                    
+       0