Biomod/2011/Caltech/DeoxyriboNucleicAwesome/Simulation
From OpenWetWare
(Starting to talk about MATLAB code) 
(Discussing MATLAB code) 

Line 17:  Line 17:  
==MATLAB Code==  ==MATLAB Code==  
+  At the core of the simulation is a function which runs runs one random walk on an origami of specified size. It can run in both a cargobearing (onecargo onegoal) and a purely randomwalk mode. The former has cargo positions corresponding to our particular origami preprogrammed and starting with multiple (specified by user) walkers at random locations on the origami, and terminates when all of the cargos have been "sorted" to the goal location (the x axis). The latter runs one walker starting at a specified location, and terminates when that walker reaches the specified irreversible track location. The function returns a log reporting when cargos were picked up and dropped off, and a count of the number of steps the simulation took.  
+  
+  This function is utilized by separate cargobearing and randomwalk data collection programs that call the function many times over a range of parameters to test traits including expected randomwalk duration and cargo collection rate:  
+  <code>  
+  </code>  
==RandomWalk Simulation==  ==RandomWalk Simulation== 
Revision as of 20:30, 22 June 2011
Friday, October 24, 2014

Simulations
OverviewOur proposed sorting mechanism depends very heavily on a particular randomwalking mechanism that has not been demonstrated in literature before. The verification of this mechanism is thus a vital step in our research. Verification of the random walk in one dimension is fairly straightforward: as discussed in <LINK TO THE EXPERIMENTAL DESIGN SECTION>, a onedimensional track is easy to construct, and will behave like a standard 1D random walk, showing an average translation on the order of after n steps. Thus, we should expect the time it takes to get to some specific level of fluorescence to be proportional to the square of the number of steps we start the walker from the irreversible substrate. If we can, in an experiment, record the fluorescence over time when the walker is planted at different starting points and show that that fluorescence varies by this relationship, we'll have fairly certainly verified onedimensional random walking. Our particular case of 2D random walking, however, is not as easily understood, especially considering the mobility restrictions (ability to move to only 4 of 6 surrounding locations at any particular time) of our particular walker. As a control for the verification of 2D random walking, though, we still need to get an idea how long the random walk should take, and how that time will change as we start the walker at different points on the origami. We opt to do this by simulating the system with a set of movement rules derived from our design. We also use the same basic simulation (with a few alterations and extra features) to simulate our entire sorting system in a onecargo, onegoal scenario, to give us some rudimentary numbers on how long sorting should take, with one vs multiple walkers. Basic parameters and assumptions:
MATLAB CodeAt the core of the simulation is a function which runs runs one random walk on an origami of specified size. It can run in both a cargobearing (onecargo onegoal) and a purely randomwalk mode. The former has cargo positions corresponding to our particular origami preprogrammed and starting with multiple (specified by user) walkers at random locations on the origami, and terminates when all of the cargos have been "sorted" to the goal location (the x axis). The latter runs one walker starting at a specified location, and terminates when that walker reaches the specified irreversible track location. The function returns a log reporting when cargos were picked up and dropped off, and a count of the number of steps the simulation took. This function is utilized by separate cargobearing and randomwalk data collection programs that call the function many times over a range of parameters to test traits including expected randomwalk duration and cargo collection rate:
RandomWalk Simulation 