"platforms/reference/tests/TestReferenceCustomCVForce.cpp" did not exist on "31d0d857bfeee96e458fa53a99ef17718467802a"
Unverified Commit 8f123ef2 authored by Peter Eastman's avatar Peter Eastman Committed by GitHub
Browse files

Modeller preserves formal charge (#4748)

parent 00e3b767
...@@ -113,7 +113,7 @@ class Modeller(object): ...@@ -113,7 +113,7 @@ class Modeller(object):
for residue in chain.residues(): for residue in chain.residues():
newResidue = newTopology.addResidue(residue.name, newChain, residue.id, residue.insertionCode) newResidue = newTopology.addResidue(residue.name, newChain, residue.id, residue.insertionCode)
for atom in residue.atoms(): for atom in residue.atoms():
newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id) newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id, atom.formalCharge)
newAtoms[atom] = newAtom newAtoms[atom] = newAtom
newPositions.append(deepcopy(self.positions[atom.index])) newPositions.append(deepcopy(self.positions[atom.index]))
for bond in self.topology.bonds(): for bond in self.topology.bonds():
...@@ -127,7 +127,7 @@ class Modeller(object): ...@@ -127,7 +127,7 @@ class Modeller(object):
for residue in chain.residues(): for residue in chain.residues():
newResidue = newTopology.addResidue(residue.name, newChain, residue.id, residue.insertionCode) newResidue = newTopology.addResidue(residue.name, newChain, residue.id, residue.insertionCode)
for atom in residue.atoms(): for atom in residue.atoms():
newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id) newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id, atom.formalCharge)
newAtoms[atom] = newAtom newAtoms[atom] = newAtom
newPositions.append(deepcopy(addPositions[atom.index])) newPositions.append(deepcopy(addPositions[atom.index]))
for bond in addTopology.bonds(): for bond in addTopology.bonds():
...@@ -172,7 +172,7 @@ class Modeller(object): ...@@ -172,7 +172,7 @@ class Modeller(object):
if needNewResidue: if needNewResidue:
newResidue = newTopology.addResidue(residue.name, newChain, residue.id, residue.insertionCode) newResidue = newTopology.addResidue(residue.name, newChain, residue.id, residue.insertionCode)
needNewResidue = False; needNewResidue = False;
newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id) newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id, atom.formalCharge)
newAtoms[atom] = newAtom newAtoms[atom] = newAtom
newPositions.append(deepcopy(self.positions[atom.index])) newPositions.append(deepcopy(self.positions[atom.index]))
for bond in self.topology.bonds(): for bond in self.topology.bonds():
...@@ -248,7 +248,7 @@ class Modeller(object): ...@@ -248,7 +248,7 @@ class Modeller(object):
else: else:
# Just copy the residue over. # Just copy the residue over.
for atom in residue.atoms(): for atom in residue.atoms():
newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id) newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id, atom.formalCharge)
newAtoms[atom] = newAtom newAtoms[atom] = newAtom
newPositions.append(deepcopy(self.positions[atom.index])) newPositions.append(deepcopy(self.positions[atom.index]))
for bond in self.topology.bonds(): for bond in self.topology.bonds():
...@@ -548,7 +548,7 @@ class Modeller(object): ...@@ -548,7 +548,7 @@ class Modeller(object):
if residue in residueTemplates: if residue in residueTemplates:
newResidueTemplates[newResidue] = residueTemplates[residue] newResidueTemplates[newResidue] = residueTemplates[residue]
for atom in residue.atoms(): for atom in residue.atoms():
newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id) newAtom = newTopology.addAtom(atom.name, atom.element, newResidue, atom.id, atom.formalCharge)
newAtoms[atom] = newAtom newAtoms[atom] = newAtom
newPositions.append(deepcopy(self.positions[atom.index])) newPositions.append(deepcopy(self.positions[atom.index]))
for bond in self.topology.bonds(): for bond in self.topology.bonds():
...@@ -1479,7 +1479,7 @@ class Modeller(object): ...@@ -1479,7 +1479,7 @@ class Modeller(object):
lipidResNum += 1 lipidResNum += 1
for atom in residue.atoms(): for atom in residue.atoms():
newAtom = membraneTopology.addAtom(atom.name, atom.element, newResidue, atom.id) newAtom = membraneTopology.addAtom(atom.name, atom.element, newResidue, atom.id, atom.formalCharge)
newAtoms[atom] = newAtom newAtoms[atom] = newAtom
membranePos += pos membranePos += pos
for bond in resBonds[residue]: for bond in resBonds[residue]:
...@@ -1494,7 +1494,7 @@ class Modeller(object): ...@@ -1494,7 +1494,7 @@ class Modeller(object):
for (residue, pos) in addedWater: for (residue, pos) in addedWater:
newResidue = membraneTopology.addResidue(residue.name, solventChain, residue.id, residue.insertionCode) newResidue = membraneTopology.addResidue(residue.name, solventChain, residue.id, residue.insertionCode)
for atom in residue.atoms(): for atom in residue.atoms():
newAtom = membraneTopology.addAtom(atom.name, atom.element, newResidue, atom.id) newAtom = membraneTopology.addAtom(atom.name, atom.element, newResidue, atom.id, atom.formalCharge)
newAtoms[atom] = newAtom newAtoms[atom] = newAtom
membranePos += pos membranePos += pos
for bond in resBonds[residue]: for bond in resBonds[residue]:
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment