Design Optimizations for DNA Nanostructures II: Symmetries in the Octet Truss
Presented By: Thomas Dickerson and Andrew ParentSaint Michael’s College
With Collaboration from:Jacob Girard, Brian Goodhue, Daniel Lewis, Andrew Gilbert, Mary Spuches, and Dan Koch
OutlineIntroductory Information
Basic Definitions Labeling of TilesDefinitions II Labeling of RotationsOctahedral Group
Accomplishing the GoalsProblem Statement Computer Science ApproachApproach to Code Axis/Generator Correspondence
Exhaustive Case FinderCode Overview Program FlowIssues
ResultsTile Results Code Correctness
2
Basic DefinitionsTile
◦A vertex with arms attached.
3
Labeling of TilesArms are labeled based on what
plane they are in, in the cuboctahedron.◦Labeled: ‘α’, ‘β’ and ‘γ’
Each plane has four arms thus:◦α1, α2, α3, α4, β1, β2, …, γ3, γ4.
A quick example:◦α1 α2 β1 - 3 arm tile.
4
Labeling of Tiles (cont.)Cube Octahedron Arms 3 Armed Tile example
5
Definitions IILexicographically Minimal
◦A tile is lex-minimal when it has its arms in positions that are in the lowest orders, like a form of alphabetical order for tiles.
Unique◦A unique tile type is the canonical
representative for the group of tiles that are rotationally isomorphic to it.
6
Octahedral Group
7
The point group of symmetries for the cuboctahedron (and others).• Is of order 48• Includes inversions• Inversions are bad• Has a pure rotational subgroup of
order 24
Labeling of RotationsEach rotation defined by a set of
arms.◦Arms define either a face or a vertex
on the cuboctahedron’s surface.◦ Axis of rotation oriented through the
cuboctahedron’s centroid.Varies based on axis of rotation.
◦Three major types – divisible by: 120° – 3 arms. – eg. α1β1γ1 @ 120° 180° – 1 arm. – eg. α1 @ 180° 90° – 4 arms. – eg. β2β3γ2γ3 @ 90°
◦All rotations are counterclockwise.8
9
GraphingNaming Tiles
Schlegel diagramsIt is very helpful to be able to picture these molecules in two dimensions.
Examples of Rotation Labeling
α1β1γ1 @ 120°
α1 @ 180°
β2β3γ2γ3 @ 90°
10
Problem StatementFinding all lex-minimal
tiles.Two approaches:
◦By hand Pros: Easy to visualize,
immediate satisfaction. Cons: Slow, potentially
inaccurate.◦Computer Science
Pros: Fast, 100% correct (assuming the code is correct).
Cons: Difficult to visualize, results come all at once as a final product.
11
Approach to CodeGenerating the combinations
◦Solve Hamming distance problem for n arms. Tiles are created in sorted order. Generates a bitstring, such as the following:
“110010000000” a 3 arm tile, namely α1 α2 β1
Eliminating Duplicate Tiles◦Use a combination of rotations and
angular grouping to identify duplicates. Angular grouping reduces the overhead of
the rotation stage.Generators
◦Represent all axes of rotation with 3 operations. 12
Axis-Generator Correspondence
Single Rotation GeneratorsIdentity Noneα1β1γ1 @ 120° (α1β1γ1)α1β1γ1 @ 240° (α1β1γ1)2
α2β4γ1 @ 120° (α1β1γ1)2 (β2β3γ2γ3)3 α1α2β4γ1 @ 240° (α1β1γ1) (β2β3γ2γ3)2
α3β4γ4 @ 120° (α1β1γ1) (β2β3γ2γ3) α1α3β4γ4 @ 240° (α1β1γ1)2 (β2β3γ2γ3) α1α4β1γ4 @ 120° (α1β1γ1)2 (β2β3γ2γ3)2
α4β1γ4 @ 240° (α1β1γ1) (β2β3γ2γ3)3 α1α1 @ 180° α1α2 @ 180° (β2β3γ2γ3)2 α1β1 @ 180° (α1β1γ1)2 (β2β3γ2γ3)β2 @ 180° (α1β1γ1)2 (β2β3γ2γ3)2 α1γ1 @ 180° (α1β1γ1) (β2β3γ2γ3)3
γ2 @ 180° (α1β1γ1) (β2β3γ2γ3)2 α1α1α2γ1γ2 @ 90° (α1β1γ1)2 α1α1α2γ1γ2 @ 180° (β2β3γ2γ3) α1α1α2γ1γ2 @ 270° (α1β1γ1)2 (β2β3γ2γ3)3
α1α4β1β2 @ 90° (α1β1γ1) (β2β3γ2γ3)α1α4β1β2 @ 180° (β2β3γ2γ3)3 α1α1α4β1β2 @ 270° (α1β1γ1) α1β2β3γ2γ3 @ 90° (β2β3γ2γ3)β2β3γ2γ3 @ 180° (β2β3γ2γ3)2
β2β3γ2γ3 @ 270° (β2β3γ2γ3)3
13
Exhaustive Case FinderComprised of four classes
◦Combo Generates every possible n-armed tile
◦CuboctahedronLUT Lookup table used to group the cases
generated by Combo based on the angles between arm pairs
◦CuboctahedronSymmetry This performs the generator rotations in order
to remove duplicates and distinguish between inversions
◦AngleWrapper Wraps arrays representing angles between
arm-pairs to override Java's built-in array comparison behavior (performs a shallow element comparison rather than a simple object-reference comparison) 14
Program Flow
Combo List removeCopies calcGroupings
CuboctahedronLUT
computeAngles
getResultantGroupings
CuboctahedronSymmetry
printRot
areSymmetric
AngleWrapper
IssuesSome tiles may not be useful in
building actual structures.Generates duplicates as “unique”
tiles.◦Certain tiles are rotationally
isomorphic to their inversion These cases can not be identified using
only the rotations which are legal under the octahedral group
Four additional generator rotations are necessary α1 and α2 @ 60° and 120° Only valid for tiles which lie entirely in a single hexagonal plane
16
Results Tiles Found
◦ 1 arm – 1◦ 2 arm – 4◦ 3 arm – 10◦ 4 arm – 26◦ 5 arm – 37◦ 6 arm – 48◦ 7 arm – 38◦ 8 arm – 27◦ 9 arm – 13◦ 10 arm – 5◦ 11 arm – 1
17
Results Continued.Note that the number of tiles
with n arms and tiles with (12 – n) arms are unequal◦This is because of the extra
rotations.
Code Correctness
19
We used the Orbits and Stabilizers theorem as a self check.
o Number of rotations that leave a tile fixed (stabilizer subgroup) times number of new positions for the tile (orbit of the tile) is the order of the tile’s symmetry group
The sum of the order of the orbits for all n-armed tiles is 12Cn.
Acknowledgements
03/10/10