本文整理汇总了Python中pele.utils.disconnectivity_graph.DisconnectivityGraph.calculate方法的典型用法代码示例。如果您正苦于以下问题:Python DisconnectivityGraph.calculate方法的具体用法?Python DisconnectivityGraph.calculate怎么用?Python DisconnectivityGraph.calculate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pele.utils.disconnectivity_graph.DisconnectivityGraph
的用法示例。
在下文中一共展示了DisconnectivityGraph.calculate方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_basic
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def test_basic(self):
dgraph = DisconnectivityGraph(self.tsgraph)
dgraph.calculate()
dgraph.plot()
layout = dgraph.get_tree_layout()
dgraph.draw_minima(self.db.minima()[:2])
示例2: make_disconnectivity_graph
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def make_disconnectivity_graph(system, database, vinputs, vtargets):
from pele.utils.disconnectivity_graph import DisconnectivityGraph, database2graph
import matplotlib.pyplot as plt
graph = database2graph(database)
dg = DisconnectivityGraph(graph, nlevels=5, center_gmin=True, Emax=50.0, subgraph_size=3)
dg.calculate()
pot = system.get_potential()
validation_energy = lambda m: pot.getValidationEnergy(m.coords, vinputs, vtargets)
vmin = min(graph.nodes(), key=lambda m: validation_energy(m))
labels = {vmin : "vmin"}
print vmin.energy, min(database.minima(), key = lambda m : validation_energy(m)).energy
# for m in graph.nodes():
# print m.energy
for t in database.transition_states():
print t.minimum1.energy, t.minimum2.energy, t.energy
if abs(t.minimum1.energy-12.1884413947)<0.1 or abs(t.minimum2.energy-12.1884413947)<0.1:
print t.minimum1.energy, t.minimum2.energy, t.energy
# for u,v,data in graph.edges(data=True):
# ts = data["ts"]
# if abs(u.energy-12.1884413947)<0.1 or abs(v.energy-12.1884413947)<0.1:
# print u.energy, v.energy, ts.energy
dg.plot()
dg.label_minima(labels)
plt.show()
示例3: test_connect
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def test_connect(): # pragma: no cover
nmol = 5
boxvec = np.array([5,5,5])
rcut = 2.5
system = OTPBulk(nmol,boxvec,rcut)
db = test_bh()
# X1 = db.minima()[0].coords
# X2 = db.minima()[1].coords
# import pele.angleaxis.aaperiodicttransforms as md
# a = md.MeasurePeriodicRigid(system.aatopology, transform=TransformPeriodicRigid())
# b = MinPermDistBulk(boxvec, a, transform=TransformPeriodicRigid())
# dist, x1, x2 = b(X1,X2)
min1, min2 = db.minima()[0], db.minima()[1]
# from pele.landscape import ConnectManager
# manager = ConnectManager(db, strategy="gmin")
# for i in xrange(db.number_of_minima()-1):
# min1, min2 = manager.get_connect_job()
connect = system.get_double_ended_connect(min1, min2, db)
connect.connect()
from pele.utils.disconnectivity_graph import DisconnectivityGraph, database2graph
import matplotlib.pyplot as plt
# convert the database to a networkx graph
graph = database2graph(db)
dg = DisconnectivityGraph(graph, nlevels=3, center_gmin=True)
dg.calculate()
dg.plot()
plt.show()
示例4: test_2_minima
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def test_2_minima(self):
db = create_random_database(nmin=3, nts=1)
tsgraph = database2graph(self.db)
dgraph = DisconnectivityGraph(tsgraph, include_gmin=True)
dgraph.calculate()
dgraph.plot()
示例5: test_gmin_not_connected
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def test_gmin_not_connected(self):
m0 = self.db.get_lowest_energy_minimum()
self.db.addMinimum(m0.energy - 10., m0.coords)
tsgraph = database2graph(self.db)
dgraph = DisconnectivityGraph(tsgraph, include_gmin=True)
dgraph.calculate()
dgraph.plot()
示例6: make_disconnectivity_graph
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def make_disconnectivity_graph(system, database, fname='dg.pdf', **kwargs):
import matplotlib.pyplot as plt
from pele.utils.disconnectivity_graph import DisconnectivityGraph, database2graph
graph = database2graph(database)
dg = DisconnectivityGraph(graph, **kwargs)
dg.calculate()
dg.plot(linewidth=1.5)
plt.savefig(fname)
示例7: test_Emax
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def test_Emax(self):
emax = self.db._highest_energy_minimum().energy
m1 = self.db.addMinimum(emax-5.1, [0.])
m2 = self.db.addMinimum(emax-5.2, [0.])
self.db.addTransitionState(emax-5, [0.], m1, m2)
self.db.addMinimum(emax-5.3, [0.]) # so this will need to be removed
dgraph = DisconnectivityGraph(self.tsgraph, Emax=emax-2, subgraph_size=1, order_by_energy=True)
dgraph.calculate()
dgraph.plot()
示例8: make_disconnectivity_graph
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def make_disconnectivity_graph(database):
from pele.utils.disconnectivity_graph import DisconnectivityGraph, database2graph
import matplotlib.pyplot as plt
graph = database2graph(database)
dg = DisconnectivityGraph(graph, nlevels=3, center_gmin=True)
dg.calculate()
dg.plot()
plt.show()
示例9: test_disconn_graph
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def test_disconn_graph(self,database):
from pele.utils.disconnectivity_graph import DisconnectivityGraph
from pele.landscape import TSGraph
import matplotlib.pyplot as plt
graph = TSGraph(database).graph
dg = DisconnectivityGraph(graph, nlevels=3, center_gmin=True)
dg.calculate()
dg.plot()
plt.show()
示例10: _build_disconnectivity_graph
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def _build_disconnectivity_graph(self, **params):
if self.database is not None:
db = self.database
apply_Emax = "Emax" in params and "T" not in params
if apply_Emax:
self.graph = database2graph(db, Emax=params['Emax'])
else:
self.graph = database2graph(db)
dg = DisconnectivityGraph(self.graph, **params)
dg.calculate()
self.dg = dg
示例11: _compute_barriers
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def _compute_barriers(self, graph, min1):
"""for each minimum graph compute the (approximate) energy barrier to min1"""
# this is a local import to avoid cyclical imports
from pele.utils.disconnectivity_graph import DisconnectivityGraph
dgraph = DisconnectivityGraph(graph, nlevels=self.nlevels)
dgraph.calculate()
tree = dgraph.tree_graph
energy_barriers = dict()
self._recursive_label(tree, min1, energy_barriers)
return energy_barriers
示例12: test_color_groups
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def test_color_groups(self):
dgraph = DisconnectivityGraph(self.tsgraph)
dgraph.calculate()
groups = [ self.db.minima()[:5],
self.db.minima()[5:10],
self.db.minima()[10:15],
self.db.minima()[15:18],
]
dgraph.color_by_group(groups)
dgraph.plot(linewidth=2.)
if _show:
from matplotlib import pyplot as plt
plt.title("color by group")
示例13: test_color_groups_many
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def test_color_groups_many(self):
dgraph = DisconnectivityGraph(self.tsgraph)
dgraph.calculate()
groups = []
for m in self.db.minima():
groups.append([m])
if len(groups) > 13:
break
dgraph.color_by_group(groups)
dgraph.plot(linewidth=2.)
if _show:
from matplotlib import pyplot as plt
plt.title("color by group")
示例14: make_graph
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def make_graph(database):
# make a graph from the database
graph = database2graph(database)
# turn the graph into a disconnectivity graph
dg = DisconnectivityGraph(graph,
nlevels=5,
center_gmin=False,
order_by_energy=True)
dg.calculate()
print "number of minima:", dg.tree_graph.number_of_leaves()
dg.plot()
dg.show()
示例15: test_color_value
# 需要导入模块: from pele.utils.disconnectivity_graph import DisconnectivityGraph [as 别名]
# 或者: from pele.utils.disconnectivity_graph.DisconnectivityGraph import calculate [as 别名]
def test_color_value(self):
dgraph = DisconnectivityGraph(self.tsgraph)
dgraph.calculate()
def minimum_to_value(m):
if m.energy < 5.:
return m.energy
else:
return None
dgraph.color_by_value(minimum_to_value)
dgraph.plot(linewidth=2.)
dgraph.label_minima({self.db.minima()[0]: "gmin",
self.db.minima()[1]: "2nd lowest"})
if _show:
from matplotlib import pyplot as plt
plt.title("color by value")
dgraph.show()