Biomod/2012/Titech/Nano-Jugglers/Simulation: Difference between revisions

From OpenWetWare
Jump to navigationJump to search
No edit summary
No edit summary
Line 6: Line 6:


==Purpose of simulations==
==Purpose of simulations==
:In our simulation, we intend to confirm correlation between radius of polystyrene particle and movement of JET.  
::In our simulation, we intend to confirm correlation between radius of polystyrene particle and movement of JET.  


:We are now producing 10um size of JET now, however, we are also thinking about production of smaller size of JET in the future. It is still difficult to confirm the completion of less than 1um size of JET in practical experiment. So, we observe movement of smaller JET by 2D simulation. Theoretically speaking, nano-size or micro-size particles are largely affected by Brownian movement; therefore, radius of particles becomes key parameter which determines movement of JET. For example, movement of JET is more likely to be affected by Brownian motion as the radius of particle is smaller.
::We are now producing 10um size of JET now, however, we are also thinking about production of smaller size of JET in the future. It is still difficult to confirm the completion of less than 1um size of JET in practical experiment. So, we observe movement of smaller JET by 2D simulation. Theoretically speaking, nano-size or micro-size particles are largely affected by Brownian movement; therefore, radius of particles becomes key parameter which determines movement of JET. For example, movement of JET is more likely to be affected by Brownian motion as the radius of particle is smaller.




==Principle of simulations==
==Principle of simulations==
:Our simulator is based on off lattice simulation of random walk. This program is written in MATLAB.
::Our simulator is based on off lattice simulation of random walk. This program is written in MATLAB.


:At each time step, we calculate the x-coordinate and y-cordinate displacement of the particle.Polystyrene beads mainly move by two forces, the reaction force caused by the detachment of the bubbles and Brownian movement. Moreover, we put two types of Brownian movement in this simulation, rotator Brownian movement and translational Brownian movement.  
::At each time step, we calculate the x-coordinate and y-cordinate displacement of the particle.Polystyrene beads mainly move by two forces, the reaction force caused by the detachment of the bubbles and Brownian movement. Moreover, we put two types of Brownian movement in this simulation, rotator Brownian movement and translational Brownian movement.  


==Methods of simulations==
==Methods of simulations==
===Growth and detachment of the bubbles and reaction force===
===Growth and detachment of the bubbles and reaction force===
:To estimate the bubble average detachment rate we use following bubble growth model.
::To estimate the bubble average detachment rate we use following bubble growth model.
:At each time step, we calculate bubble growth, and when the radius of bubble reached fixed maxR, the bubble detaches.
::At each time step, we calculate bubble growth, and when the radius of bubble reached fixed maxR, the bubble detaches.
:Bubble radius growth is estimated by following formula.
::Bubble radius growth is estimated by following formula.
{|style="margin-left:50px"
{|style="margin-left:80px"
|-
|-
|[[ Image:TechJug-sim1.png‎]]
|[[ Image:TechJug-sim1.png‎]]
|-
|-
|
|
:<math>R(t)</math> : the bubble radius at t seconds
::<math>R(t)</math> : the bubble radius at t seconds
:<math>R_0</math> : the initial bubble radius
::<math>R_0</math> : the initial bubble radius
:<math>R_g</math> : the universal gas constant
::<math>R_g</math> : the universal gas constant
:<math>T</math> : temperature
::<math>T</math> : temperature
:<math>P</math> : pressure of the bubble
::<math>P</math> : pressure of the bubble
:<math>k</math> : the catalytic reaction rate constant
::<math>k</math> : the catalytic reaction rate constant
:<math>\alpha</math> : the Langmuir adsorption constant
::<math>\alpha</math> : the Langmuir adsorption constant
:<math>c</math> : hydrogen peroxide concentrations
::<math>c</math> : hydrogen peroxide concentrations
|}
|}
:Substituting value of radius, we can get the average rate of mass change.
::Substituting value of radius, we can get the average rate of mass change.
{|style="margin-left:50px"
{|style="margin-left:80px"
|-
|-
|[[ Image:TechJug-sim2.png‎]]
|[[ Image:TechJug-sim2.png‎]]
|-
|-
|
|
:<math>\Delta m</math> : the mass change induced by a single bubble
::<math>\Delta m</math> : the mass change induced by a single bubble
:<math>\rho_O2</math> : the density of oxygen
::<math>\rho_O2</math> : the density of oxygen
|}
|}
:Finally, velocity of JET causes by detachment of horizontal speed of detached bubbles as following formula.
::Finally, velocity of JET causes by detachment of horizontal speed of detached bubbles as following formula.
{|style="margin-left:50px"
{|style="margin-left:80px"
|-
|-
|[[ Image:TechJug-sim3.png‎]]
|[[ Image:TechJug-sim3.png‎]]
|-
|-
|
|
:<math>N</math> : the number of bubbles
::<math>N</math> : the number of bubbles
:<math>v_0</math> : the initial horizontal speed of a detached bubble
::<math>v_0</math> : the initial horizontal speed of a detached bubble
:<math>\mu</math> : the viscosity of the liquid
::<math>\mu</math> : the viscosity of the liquid
:<math>a</math> : the radius of polystyrene beads
::<math>a</math> : the radius of polystyrene beads
|}
|}


===Rotatory Movement===
===Rotatory Movement===
:In previous section, we got a value of velocity.
::In previous section, we got a value of velocity.
:Next, we calculate the angle from the +y axis to the vertex of Cr hemisphere heads.
::Next, we calculate the angle from the +y axis to the vertex of Cr hemisphere heads.
:Angle of the vertex from the +y axis will change at each time step by rotator Brownian movement,
::Angle of the vertex from the +y axis will change at each time step by rotator Brownian movement,
:and the mean amount of changes is shown as following equation.
::and the mean amount of changes is shown as following equation.
{|style="margin-left:50px"
{|style="margin-left:80px"
|-
|-
|[[ Image:TechJug-sim4.png‎]]
|[[ Image:TechJug-sim4.png‎]]
Line 68: Line 68:
|-
|-
|
|
:<math>D_R</math> : Rotatory diffusion coefficient
::<math>D_R</math> : Rotatory diffusion coefficient
:<math>k_B</math> : Boltzmann constant
::<math>k_B</math> : Boltzmann constant
:<math>\eta</math> : viscosity
::<math>\eta</math> : viscosity
|}
|}
:And also, the variance σ of Brownian rotator changes ∆φ is calculated as following equation.
:And also, the variance σ of Brownian rotator changes ∆φ is calculated as following equation.
{|style="margin-left:50px"
{|style="margin-left:80px"
|-
|-
|[[ Image:TechJug-sim9.png‎]]
|[[ Image:TechJug-sim9.png‎]]
|}
|}
:We get value of rotation using function whose name is “normrnd” in MATLAB. Function “normrnd” returns normal random numbers if we input the value of mean and variance.
::We get value of rotation using function whose name is “normrnd” in MATLAB. Function “normrnd” returns normal random numbers if we input the value of mean and variance.
{|style="margin-left:50px"
{|style="margin-left:80px"
|-
|-
|[[ Image:TechJug-sim5.png‎]]
|[[ Image:TechJug-sim5.png‎]]
|}
|}
:At each time step, we calculate the angle φ by accumulating this amount of change.
::At each time step, we calculate the angle φ by accumulating this amount of change.




:Next, we calculate angle ψ which bubbles start to grow.  
::Next, we calculate angle ψ which bubbles start to grow.  
:The range of ψ is hemispherical surface where Pt particles are conjugated by DNA.
::The range of ψ is hemispherical surface where Pt particles are conjugated by DNA.
:We use uniform random number to determine the value of ψ. Following equation shows that bubbles can grow from anywhere on the hemispherical surface at the same possibility.
::We use uniform random number to determine the value of ψ. Following equation shows that bubbles can grow from anywhere on the hemispherical surface at the same possibility.
{|style="margin-left:50px"
{|style="margin-left:80px"
|-
|-
|[[ Image:TechJug-sim6.png‎]]
|[[ Image:TechJug-sim6.png‎]]
Line 97: Line 97:




:Finally, using these angles, we can find the angle of movement θ from y-axis as following equation.
::Finally, using these angles, we can find the angle of movement θ from y-axis as following equation.
{|style="margin-left:50px"
{|style="margin-left:80px"
|-
|-
|[[ Image:TechJug-sim11.jpg‎]]
|[[ Image:TechJug-sim11.jpg‎]]
Line 104: Line 104:
|}
|}
===Translational Movement===
===Translational Movement===
:We can calculate displacement of x-coordinate and y-coordinate from value of velocity and the angle of movement from y-axis.
::We can calculate displacement of x-coordinate and y-coordinate from value of velocity and the angle of movement from y-axis.
{|style="margin-left:50px"
{|style="margin-left:80px"
|-
|-
|[[ Image:TechJug-sim8.png‎]]
|[[ Image:TechJug-sim8.png‎]]
|}
|}
:JET mainly moves these two displacements at each time step.
::JET mainly moves these two displacements at each time step.
:We are now taking another look at parameters and considering how to deal with these displacements and 2D Brownian translational movement simultaneously.
::We are now taking another look at parameters and considering how to deal with these displacements and 2D Brownian translational movement simultaneously.


==Results of Simulation==
==Results of Simulation==


==Reference==
==Reference==

Revision as of 02:04, 2 September 2012


<html> <head> <style type="text/css"> /* ====================

  主に全体に関わるCSS

   ==================== */ body.mediawiki {

                       font-size: 14px;

background-image:url(http://openwetware.org/images/2/2d/TNJback.png); background-repeat: repeat; font-family: Calibri, Verdana, helvetica, sans-serif; }

               h1 {
                       padding: 0px 20px 5px 20px;
                       font-size: 34px;
                       line-height: 40px;
                       font-weight: bold;
               }
               h2 {
                       padding: 20px 20px 5px 20px;
                       font-size: 25px;
                       color: #000000;
                       text-decoration: none;
                       font-weight: bold; 
              }
               h2 a {
                       color: #eb8300;
               }
               h3 {
                       padding: 20px 20px 5px 20px;
                       font-size: 20px;
                       color: #000;
                       font-decoration: none;
                       font-weight: bold;
               }
               h1.firstHeading {

display: none;

               }

p { text-align: justify; } a:link { color: #00a5ea; text-decoration: none } a:visited { color:#00a5ea; text-decoration: none } a:hover {

                       color: #eb8300;

text-decoration: none } a:active { color:#f29400; text-decoration: none } #content{ margin: 0px 0 0px 0; align: center; padding: 12px 12px 12px 12px; width: 946px; background-color: #ffff; border: 0; } #bodyContent{ width: 970px; margin: 150px auto 0 auto; align: center; background-color: #ffffff; } #globalWrapper{ margin: 20px 0 0 0; width:994px; background-color: #ffffff; margin-left: auto; margin-right: auto } #biomodlink{ position:absolute;top:0px; width:970px;height:20px; background-color: #ffffff; margin:3px auto 3px auto }


/* ====================

  メニューの画像を変更できる部分
  ==================== */

#header {

                       margin: 0 auto 0 auto;
                       position:absolute;
                       top:28px; width:968px;height:189px;

background-color: #FFFFFF; background-repeat: no-repeat;

                       background-image: url(http://openwetware.org/images/7/74/Title-LOGO6.jpg); 

} /* ====================

  以下、特殊なclassに適用される
  ==================== */

#navigation { position:absolute;

                       top:120px; width:970px; height:92px;
                       background-repeat: no-repeat;

color: #0000FF; }

/* ====================

  ここからプルダウン周辺のデザイン
  ==================== */
  1. menu * {

margin: 0; padding: 0; }

  1. menu {
       position:absolute;

font-family: calibri, verdana, sans-serif;

       font-color: #000000;

background-color: transparent; float:left; display: block; }

  1. menu ul {
       position:relative;

float: left; text-align:center; list-style: none; }

  1. menu li {

background-color:yellow;

       position:relative;

float:left;

       width: 136px;

font-size: 23px;

       font-weight: bold;

border:ridge 0px #FFFFFF; }

  1. menu li.ach {

background-color:yellow;

       position:relative;

float:left;

       width: 162px;

font-size: 23px;

       font-weight: bold;

border:ridge 0px #FFFFFF; }

  1. menu li.sup {

background-color:yellow;

       position:relative;

float:left;

       width: 109px;

font-size: 17px;

       font-weight: bold;

border:ridge 0px #FFFFFF; }

  1. menu li.none {

background-color:yellow;

       position:relative;

float:left;

       width: 152px;

font-size: 17px;

       font-weight: bold;

border:ridge 0px #FFFFFF; }

  1. menu a {

color: #000000; display:block; text-decoration: none; }

  1. menu a:hover {

background-color:gold; }

  1. column-one { display:none; width:0px;}

.container{background-color: #ffffff; margin-top:0px} .OWWNBcpCurrentDateFilled {display: none;}

  1. footer{position: center; width: 994px}

@media screen {

   body { background: #F5F5F5 0 0 no-repeat;  /* changed default background */ }

} </style> </head> <BODY> <div id="biomodlink"> <<a href="http://openwetware.org/wiki/Biomod">BIOMOD</a>|<a href="http://openwetware.org/wiki/Biomod/2012">2012</a>|Titech Nano-Jugglers </div> <div id="header"> <div id="navigation"> <div id="menu"> <ul> <li><a href="http://openwetware.org/wiki/Biomod/2012/Titech/Nano-Jugglers"><br>Home<br><br></a></li> <li><a href="http://openwetware.org/wiki/Biomod/2012/Titech/Nano-Jugglers/Team/Students"><br>Team<br><br></a></li> <li><a href="http://openwetware.org/wiki/Biomod/2012/Titech/Nano-Jugglers/Project"><br>Project<br><br></a></li> <li><a href="http://openwetware.org/wiki/Biomod/2012/Titech/Nano-Jugglers/Results">Results<br>&<br>Methods</a></font></li> <li class="ach"><a href="http://openwetware.org/wiki/Biomod/2012/Titech/Nano-Jugglers/Achievements"><br>Achievements<br><br></a> <li class="sup"><a href="http://openwetware.org/wiki/Biomod/2012/Titech/Nano-Jugglers/Protocols"><br>Suppl. Info.<br><br></a></li> <li class="none"><a href="http://openwetware.org/wiki/Biomod/2012/Titech/Nano-Jugglers/Acknowledgement"><br>Acknowledgements<br><br></a></li> </ul> </div> </div> </div> </BODY> </html>


Simulation

Purpose of simulations

In our simulation, we intend to confirm correlation between radius of polystyrene particle and movement of JET.
We are now producing 10um size of JET now, however, we are also thinking about production of smaller size of JET in the future. It is still difficult to confirm the completion of less than 1um size of JET in practical experiment. So, we observe movement of smaller JET by 2D simulation. Theoretically speaking, nano-size or micro-size particles are largely affected by Brownian movement; therefore, radius of particles becomes key parameter which determines movement of JET. For example, movement of JET is more likely to be affected by Brownian motion as the radius of particle is smaller.


Principle of simulations

Our simulator is based on off lattice simulation of random walk. This program is written in MATLAB.
At each time step, we calculate the x-coordinate and y-cordinate displacement of the particle.Polystyrene beads mainly move by two forces, the reaction force caused by the detachment of the bubbles and Brownian movement. Moreover, we put two types of Brownian movement in this simulation, rotator Brownian movement and translational Brownian movement.

Methods of simulations

Growth and detachment of the bubbles and reaction force

To estimate the bubble average detachment rate we use following bubble growth model.
At each time step, we calculate bubble growth, and when the radius of bubble reached fixed maxR, the bubble detaches.
Bubble radius growth is estimated by following formula.
[math]\displaystyle{ R(t) }[/math] : the bubble radius at t seconds
[math]\displaystyle{ R_0 }[/math] : the initial bubble radius
[math]\displaystyle{ R_g }[/math] : the universal gas constant
[math]\displaystyle{ T }[/math] : temperature
[math]\displaystyle{ P }[/math] : pressure of the bubble
[math]\displaystyle{ k }[/math] : the catalytic reaction rate constant
[math]\displaystyle{ \alpha }[/math] : the Langmuir adsorption constant
[math]\displaystyle{ c }[/math] : hydrogen peroxide concentrations
Substituting value of radius, we can get the average rate of mass change.
[math]\displaystyle{ \Delta m }[/math] : the mass change induced by a single bubble
[math]\displaystyle{ \rho_O2 }[/math] : the density of oxygen
Finally, velocity of JET causes by detachment of horizontal speed of detached bubbles as following formula.
[math]\displaystyle{ N }[/math] : the number of bubbles
[math]\displaystyle{ v_0 }[/math] : the initial horizontal speed of a detached bubble
[math]\displaystyle{ \mu }[/math] : the viscosity of the liquid
[math]\displaystyle{ a }[/math] : the radius of polystyrene beads

Rotatory Movement

In previous section, we got a value of velocity.
Next, we calculate the angle from the +y axis to the vertex of Cr hemisphere heads.
Angle of the vertex from the +y axis will change at each time step by rotator Brownian movement,
and the mean amount of changes is shown as following equation.

[math]\displaystyle{ D_R }[/math] : Rotatory diffusion coefficient
[math]\displaystyle{ k_B }[/math] : Boltzmann constant
[math]\displaystyle{ \eta }[/math] : viscosity
And also, the variance σ of Brownian rotator changes ∆φ is calculated as following equation.
We get value of rotation using function whose name is “normrnd” in MATLAB. Function “normrnd” returns normal random numbers if we input the value of mean and variance.
At each time step, we calculate the angle φ by accumulating this amount of change.


Next, we calculate angle ψ which bubbles start to grow.
The range of ψ is hemispherical surface where Pt particles are conjugated by DNA.
We use uniform random number to determine the value of ψ. Following equation shows that bubbles can grow from anywhere on the hemispherical surface at the same possibility.

[math]\displaystyle{ rand() }[/math] : uniform random number


Finally, using these angles, we can find the angle of movement θ from y-axis as following equation.

Translational Movement

We can calculate displacement of x-coordinate and y-coordinate from value of velocity and the angle of movement from y-axis.
JET mainly moves these two displacements at each time step.
We are now taking another look at parameters and considering how to deal with these displacements and 2D Brownian translational movement simultaneously.

Results of Simulation

Reference