Difference between revisions of "Sierpinski triangle in the aTAM"

From self-assembly wiki
Jump to navigation Jump to search
(Sierpinski Triangle tiles)
(X-Axis tiles)
Line 18: Line 18:
 
Next we will define the perimeter or boundary tiles that assemble for the Northern and Eastern edge of the '''SEED''' tile.
 
Next we will define the perimeter or boundary tiles that assemble for the Northern and Eastern edge of the '''SEED''' tile.
 
===X-Axis tiles===
 
===X-Axis tiles===
#Again, right click the Tiletype editor and click ''Insert New.'' The tile name will be '''X.''' Sit and think for a moment about which sides of the tile will have glue, and what the strength of those glues should be.
+
#Again, right click the Tiletype editor and click ''Insert New.'' The tile name will be '''X.''' Before you move on answer these questions:
#OK. If you figured it out congratulations! If not don't worry! Look at the picture of the '''SEED''' tile, along the East edge there is a glue of strength 2. Recall that for this exercise we are thinking of the '''SEED''' as the origin of a graph, where the East edge represents the ''x'' axis. If we then place an '''X''' tile along the East edge of the '''SEED''', then the Western edge of the '''X''' tile must also have a glue strength of 2. Because we want our assembly to grow indefinitely, we also give the Eastern edge of '''X''' a glue strength of 2.
+
#*For each side of '''X''', what is the strength of the glue?
 +
#*How will each side of the tile '''X''' be labeled?
 +
#Look at the picture of the '''SEED''' tile, along the East edge there is a glue of strength 2. Recall that for this exercise we are thinking of the '''SEED''' as the origin of a graph, where the East edge represents the ''x'' axis. If we then place an '''X''' tile along the East edge of the '''SEED''', then the Western edge of the '''X''' tile must also have a glue strength of 2. Because we want our assembly to grow indefinitely, we also give the Eastern edge of '''X''' a glue strength of 2.
 
#The attributes of your '''X''' tile will be as follows:
 
#The attributes of your '''X''' tile will be as follows:
 
#*Name: X
 
#*Name: X
Line 31: Line 33:
 
#*Display: Default
 
#*Display: Default
 
Notice that the North edge of the '''X''' tile has a glue strength of 1. This is to give the interior of the assembly a place to bind.
 
Notice that the North edge of the '''X''' tile has a glue strength of 1. This is to give the interior of the assembly a place to bind.
 +
 
===Y-Axis tiles===
 
===Y-Axis tiles===
 
#The '''Y''' tiles will bond to the Northern edge of the '''SEED''' and will represent the ''y'' axis. The '''Y''' tile will have the same values as the '''X''' tile but rotated 90 degrees clock wise. When you need to create a new tile in TAS that is a rotation of a tile you've already made there is a convenient shortcut you can use.  
 
#The '''Y''' tiles will bond to the Northern edge of the '''SEED''' and will represent the ''y'' axis. The '''Y''' tile will have the same values as the '''X''' tile but rotated 90 degrees clock wise. When you need to create a new tile in TAS that is a rotation of a tile you've already made there is a convenient shortcut you can use.  

Revision as of 15:19, 21 May 2013

Introduction

In this tutorial we will implement the Sierpienski triangle using ISU TAS. To complete this tutorial you will need to create and define seven unique tiles, so before we begin make sure you've familiarized yourself with the basics of the software.

Implementation

SEED tile

  1. Open ISU TAS. You should see the three windows that you are familiar with from previous tutorials. If there are any old assemblies still loaded in any of the three windows go ahead and make a new tile assembly. On the Simulation Window click File -> New tile assembly system.
  2. It is now time to create your SEED tile. If you've completed the TAS Hello World <link -> Hello World Tutorial> tutorial this will be no problem. As the name SEED suggests, this is the point from which your TAS will assemble <link -> def assembly>. For now you can think of the SEED as the origin of a 2 dimensional grid. <Is this accurate?>
  3. The attributes of your SEED tile will be as follows:
    • Name: SEED
    • Label:
    • North: Strength = 2, Label = 2
    • East: Strength = 2, Label = 2
    • South: Strength = 0, Label = 0
    • West: Strength = 0, Label = 0
    • Tile Color: Red
    • Text Color: Default
    • Display: Default.

Next we will define the perimeter or boundary tiles that assemble for the Northern and Eastern edge of the SEED tile.

X-Axis tiles

  1. Again, right click the Tiletype editor and click Insert New. The tile name will be X. Before you move on answer these questions:
    • For each side of X, what is the strength of the glue?
    • How will each side of the tile X be labeled?
  2. Look at the picture of the SEED tile, along the East edge there is a glue of strength 2. Recall that for this exercise we are thinking of the SEED as the origin of a graph, where the East edge represents the x axis. If we then place an X tile along the East edge of the SEED, then the Western edge of the X tile must also have a glue strength of 2. Because we want our assembly to grow indefinitely, we also give the Eastern edge of X a glue strength of 2.
  3. The attributes of your X tile will be as follows:
    • Name: X
    • Label:
    • North: Strength = 1, Label = 1
    • East: Strength = 2, Label = 2
    • South: Strength = 0, Label = 0
    • West: Strength = 2, Label = 2
    • Tile Color: Red
    • Text Color: Default
    • Display: Default

Notice that the North edge of the X tile has a glue strength of 1. This is to give the interior of the assembly a place to bind.

Y-Axis tiles

  1. The Y tiles will bond to the Northern edge of the SEED and will represent the y axis. The Y tile will have the same values as the X tile but rotated 90 degrees clock wise. When you need to create a new tile in TAS that is a rotation of a tile you've already made there is a convenient shortcut you can use.
  2. Copy and paste the X tile that is in your Tiletype editor. The new tile should have a name of X(2). Right click X(2) and select Rotate(CW) -> 90 degrees.
  3. After you change the name of X(2) to Y the attributes of your Y tile will be as follows:
    • Name: Y
    • Label:
    • North: Strength = 2, Label = 2
    • East: Strength = 1, Label = 1
    • South: Strength = 2, Label = 2
    • West: Strength = 0, Label = 0
    • Tile Color: Red
    • Text Color: Default
    • Display: Default

At this point it is a good idea to load SEED, X, and Y into the Simulation Window and make sure they assemble as expected. It should look like this: <insert picture>

Sierpinski Triangle tiles

  1. There are four more tiles to define. To build the Sierpinski triangle we can think about the next four tiles in terms of a double input XOR gate<link>. The two unique input edges of the tile are along the West and South edges, while the output will be expressed along the North and East edges.
XOR LOGIC
Input Output
00 0
01 1
10 1
11 0
  1. Use the skills you learned to create SEED, X, and Y to make the last four tiles that express the logic in the above table.
  2. Finally, load the current tile set into the simulator, place a SEED tile and fast forward the assembly. Your results should look like this: <link picture>