本文整理汇总了Python中Sire.System.forceFields方法的典型用法代码示例。如果您正苦于以下问题:Python System.forceFields方法的具体用法?Python System.forceFields怎么用?Python System.forceFields使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sire.System
的用法示例。
在下文中一共展示了System.forceFields方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: print
# 需要导入模块: from Sire import System [as 别名]
# 或者: from Sire.System import forceFields [as 别名]
ms = timer.elapsed()
print("%d moves took %d ms" % (nmoves, ms))
PDB().write(system.info().groups().molecules(), "test%3.3d.pdb" % i)
mtsmc = moves.moves()[0].clone()
print("%d accepted, %d rejected, ratio == %f %%" % (mtsmc.nAccepted(), mtsmc.nRejected(), mtsmc.acceptanceRatio()))
# check that the QM and MM energies have been conserved...
new_molpro = MolproFF(space, switchfunc)
new_molpro.setMolproExe(qmff.molproExe())
new_molpro.setEnergyOrigin(qmff.energyOrigin())
system_qmff = system.forceFields().forceField(qmff.ID())
new_molpro.addToQM(system_qmff.molecules(qmff.groups().qm()))
new_molpro.addToMM(system_qmff.molecules(qmff.groups().mm()), {new_molpro.parameters().coulomb(): "charges"})
print("QM energy = %f, new molproff = %f" % (system.forceFields().forceField(qmff.ID()).energy(), new_molpro.energy()))
qmff.change(system.forceFields().molecules())
print("qmff == %f" % qmff.energy())
# get the RDFs
rdfmonitor = system.monitors().monitor(Symbol("RDF"))
rdf = rdfmonitor.getRDF(oxygen, oxygen)
示例2: RigidBodyMC
# 需要导入模块: from Sire import System [as 别名]
# 或者: from Sire.System import forceFields [as 别名]
mc = RigidBodyMC( UniformSampler(all_mols) )
mc.setMaximumTranslation( 0.1 * angstrom )
volmc = VolumeMove( MapAsMolecules(all_mols) )
volmc.setVolumeChangingFunction( UniformVolumeChange(50 * angstrom3) )
moves = WeightedMoves()
moves.add(mc, 125)
moves.add(volmc, 1)
for i in range(1,1001):
print("Running block %d" % i)
timer.start()
moves = system.run(moves, 100000)
print("Took %d ms" % timer.elapsed())
print("Energy = %f | Volume = %f" % (system.forceFields().energy(),
system.info().space().volume()))
print("MC Accept %d Reject %d" % (moves.moves()[0].clone().nAccepted(),
moves.moves()[0].clone().nRejected()))
print("VMC Accept %d Reject %d" % (moves.moves()[1].clone().nAccepted(),
moves.moves()[1].clone().nRejected()))
PDB().write(system.forceFields().molecules(), "test%0004d.pdb" % i)
示例3: System
# 需要导入模块: from Sire import System [as 别名]
# 或者: from Sire.System import forceFields [as 别名]
system = System(groups, ffields, monitors)
mc = RigidBodyMC( UniformSampler(solute) )
mc.setTemperature( 25 * celsius )
mc.setMaximumTranslation( 0.3 * angstrom )
#for i in range(0,50):
# moves = system.run(mc, 10000)
#
# mc = moves.moves()[0].clone()
# print "%d accepted, %d rejected, ratio = %f %%" % \
# (mc.nAccepted(), mc.nRejected(), 100 * mc.acceptanceRatio())
#
# print system.monitors().monitor(ffields.total()).average()
mtsmc = MTSMC(mc, e_fast.function(), 500)
mtsmc.setEnergyComponent(e_slow.function())
for i in range(0,5000):
moves = system.run(mtsmc, 20)
mtsmc = moves.moves()[0].clone()
print("%d accepted, %d rejected, ratio = %f %%" % \
(mtsmc.nAccepted(), mtsmc.nRejected(), 100 * mtsmc.acceptanceRatio()))
print("AVGENERGY: %f" % system.monitors().monitor(ffields.total()).average())
print("ENERGY: %f" % system.forceFields().energy())
sys.stdout.flush()