def assign_charges(self, s, charges='default'): """pysimm.forcefield.Pcff.assign_charges Default Pcff charge assignment. Gasteiger is also an option. Args: s: :class:`~pysimm.system.System` charges: default Returns: None """ if charges == 'gasteiger': print('adding gasteiger charges') gasteiger.set_charges(s) elif charges == 'default': print('adding default PCFF charges') for p in s.particles: p.charge = 0 for b in s.bonds: n1 = b.a.type.eq_bond or b.a.type.name n2 = b.b.type.eq_bond or b.b.type.name btype = self.bond_types.get('%s,%s' % (n1, n2)) if btype: btype = btype[0] if btype.name == '%s,%s' % (n1, n2): b.a.charge += float(btype.q1) b.b.charge += float(btype.q2) elif btype.name == '%s,%s' % (n2, n1): b.a.charge += float(btype.q2) b.b.charge += float(btype.q1)
def assign_charges(self, s, charges='default'): """pysimm.forcefield.Tip3p.assign_charges Tip3p specific charge assignment. There are none. Args: s: pysimm.system.System charges: default Returns: None """ if charges == 'gasteiger': print('adding gasteiger charges') gasteiger.set_charges(s) elif charges == 'default': print('adding default TIP3P charges') for p in s.particles: p.charge = 0 for b in s.bonds: n1 = b.a.type.eq_bond or b.a.type.name n2 = b.b.type.eq_bond or b.b.type.name btype = self.bond_types.get('%s,%s' % (n1, n2)) if btype: btype = btype[0] if btype.name == '%s,%s' % (n1, n2): b.a.charge += float(btype.q1) b.b.charge += float(btype.q2) elif btype.name == '%s,%s' % (n2, n1): b.a.charge += float(btype.q2) b.b.charge += float(btype.q1)
def assign_charges(self, s, charges='gasteiger'): """pysimm.forcefield.Gaff.assign_charges Charge assignment. Gasteiger is default for now. Args: s: :class:`~pysimm.system.System` charges: gasteiger Returns: None """ if charges == 'gasteiger': print('adding gasteiger charges') gasteiger.set_charges(s)