Skip to content

Commit

Permalink
testing of topology in graph
Browse files Browse the repository at this point in the history
  • Loading branch information
Koen Visscher committed May 22, 2018
1 parent 410b1d0 commit dcc6eb8
Show file tree
Hide file tree
Showing 3 changed files with 86 additions and 9 deletions.
10 changes: 2 additions & 8 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,5 @@ name = "pypi"
[packages]
mdstudio = {path = "../../mdstudio/", editable = true}
local = {path = "./", editable = true}

mdstudio = {path = "../../mdstudio/", editable = true}
local = {path = "./", editable = true}
cerise_client = ">=0.2.4"
numpy = "*"
pyparsing = "*"
panedr = ">=0.2"
retrying = ">=1.3.3"
lie_graph = "*"
numpy = "*"
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
packages=find_packages(),
package_data={'lie_topology': ['data/*']},
py_modules=[distribution_name],
install_requires=['mdstudio', 'numpy'],
install_requires=['mdstudio', 'numpy','lie_graph'],
include_package_data=False,
zip_safe=True,
classifiers=[
Expand Down
83 changes: 83 additions & 0 deletions tests/__main__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
from lie_graph import GraphAxis
from enum import Enum

class NodeType(Enum):
Atom = 1
Molecule = 2
Group = 3
Angle = 4
Dihedral = 5

class EdgeType(Enum):
Bond = 1
Angle = 2
Dihedral = 3

if __name__ == '__main__':

print('running debug version of lie_topology')
system = GraphAxis()

# testing a molecule graph setup
system = GraphAxis()
system.add_node(type=NodeType.Atom, name='H1', atom_number='0', element='H')
system.add_node(type=NodeType.Atom, name='H2', atom_number='1', element='H')
system.add_node(type=NodeType.Atom, name='C1', atom_number='2', element='C')
system.add_node(type=NodeType.Atom, name='H3', atom_number='3', element='H')
system.add_node(type=NodeType.Atom, name='C2', atom_number='4', element='C')
system.add_node(type=NodeType.Atom, name='H4', atom_number='5', element='H')
system.add_node(type=NodeType.Atom, name='H5', atom_number='6', element='H')
system.add_node(type=NodeType.Atom, name='C3', atom_number='7', element='C')
system.add_node(type=NodeType.Atom, name='H6', atom_number='8', element='H')
system.add_node(type=NodeType.Atom, name='H7', atom_number='9', element='H')
system.add_node(type=NodeType.Atom, name='H8', atom_number='10', element='H')

system.add_node(type=NodeType.Molecule, name='Propane')

angle_1_nid = system.add_node(type=NodeType.Angle)

print(system)
print(system.query_nodes(query={'element':'H'}))
print(system.query_nodes(query={'name':'H8'}))
print(system.query_nodes(query={'type':NodeType.Atom}))
print(system.query_nodes(query={'type':NodeType.Molecule}))

system.add_edge(system.query_nodes(query={'name':'H1'}).nid,
system.query_nodes(query={'name':'C1'}).nid,
type=EdgeType.Bond)
system.add_edge(system.query_nodes(query={'name':'H2'}).nid,
system.query_nodes(query={'name':'C1'}).nid,
type=EdgeType.Bond)
system.add_edge(system.query_nodes(query={'name':'C1'}).nid,
system.query_nodes(query={'name':'H3'}).nid,
type=EdgeType.Bond)
system.add_edge(system.query_nodes(query={'name':'C1'}).nid,
system.query_nodes(query={'name':'C2'}).nid,
type=EdgeType.Bond)
system.add_edge(system.query_nodes(query={'name':'C2'}).nid,
system.query_nodes(query={'name':'H4'}).nid,
type=EdgeType.Bond)
system.add_edge(system.query_nodes(query={'name':'C2'}).nid,
system.query_nodes(query={'name':'H5'}).nid,
type=EdgeType.Bond)
system.add_edge(system.query_nodes(query={'name':'C2'}).nid,
system.query_nodes(query={'name':'C3'}).nid,
type=EdgeType.Bond)
system.add_edge(system.query_nodes(query={'name':'C3'}).nid,
system.query_nodes(query={'name':'H6'}).nid,
type=EdgeType.Bond)
system.add_edge(system.query_nodes(query={'name':'C3'}).nid,
system.query_nodes(query={'name':'H7'}).nid,
type=EdgeType.Bond)
system.add_edge(system.query_nodes(query={'name':'C3'}).nid,
system.query_nodes(query={'name':'H8'}).nid,
type=EdgeType.Bond)

system.add_edge(angle_1_nid, system.query_nodes(query={'name':'H1'}).nid, type=EdgeType.Angle)
system.add_edge(angle_1_nid, system.query_nodes(query={'name':'C1'}).nid, type=EdgeType.Angle)
system.add_edge(angle_1_nid, system.query_nodes(query={'name':'H3'}).nid, type=EdgeType.Angle)

#system.add_node(type=Type.Molecule, node=system )
print ( "___TEST_EDGES__" )
print(system)
print(system.query_edges(query={'type':EdgeType.Angle}))

0 comments on commit dcc6eb8

Please sign in to comment.