Diffusion Mathematics: Difference between revisions
Bradley Monk (talk | contribs) No edit summary |
Bradley Monk (talk | contribs) No edit summary |
||
Line 2: | Line 2: | ||
In no particular order, here are some common mathematical concepts often found in diffusion modeling. To simulate and quantify simple diffusion (e.g. 2D Brownian Motion) only requires a working knowledge of basic statistics and trigonometry. Modeling complex forms of diffusion requires the use of vector calculus and differential geometry. There is a thin boundary between simple and complex diffusion and the math becomes dense very quickly. For example, using just a few lines of code, one can easily simulate stochastic diffusion on a flat 2D surface: | In no particular order, here are some common mathematical concepts often found in diffusion modeling. To simulate and quantify simple diffusion (e.g. 2D Brownian Motion) only requires a working knowledge of basic statistics and trigonometry. Modeling complex forms of diffusion requires the use of vector calculus and differential geometry. There is a thin boundary between simple and complex diffusion and the math becomes dense very quickly. For example, using just a few lines of code, one can easily simulate stochastic diffusion on a flat 2D surface: | ||
---- | |||
<syntaxhighlight lang="matlab" line start="1" highlight="1" enclose="div"> | <syntaxhighlight lang="matlab" line start="1" highlight="1" enclose="div"> | ||
% MATLAB CODE % | |||
Ndots = 100; Nsteps = Ndots; | Ndots = 100; Nsteps = Ndots; | ||
D = .5; % Diffusion Rate | D = .5; % Diffusion Rate | ||
dm = 2; % dimensions | dm = 2; % dimensions | ||
tau = 1; % time step | tau = 1; % time step | ||
k = sqrt(dm*D*tau); % stdev of | k = sqrt(dm*D*tau); % stdev of step-size distribution | ||
xyl = ones(2,Ndots); xyds = xyl; | xyl = ones(2,Ndots); xyds = xyl; | ||
Line 18: | Line 19: | ||
gscatter(xyl(1,:),xyl(2,:)); | gscatter(xyl(1,:),xyl(2,:)); | ||
end | end | ||
</syntaxhighlight> | |||
---- | |||
On the other hand, simulating stochastic diffusion on a ruffled 2D membrane is often done using parallel-computing systems at your local university's supercomputer center. However, with an understanding of the mathematical concepts that underlie complex diffusion, we can understand diffusion properties without a powerful computing cluster. I am a neuroscientist, not a mathematician or physicist, and based on my own personal trials and tribulations in modeling diffusion as a non-math expert, here are some concepts I needed to brush up on before getting serious about diffusion modeling... | |||
<br /><br /> | <br /><br /> |
Revision as of 14:05, 3 November 2013
In no particular order, here are some common mathematical concepts often found in diffusion modeling. To simulate and quantify simple diffusion (e.g. 2D Brownian Motion) only requires a working knowledge of basic statistics and trigonometry. Modeling complex forms of diffusion requires the use of vector calculus and differential geometry. There is a thin boundary between simple and complex diffusion and the math becomes dense very quickly. For example, using just a few lines of code, one can easily simulate stochastic diffusion on a flat 2D surface:
% MATLAB CODE %
Ndots = 100; Nsteps = Ndots;
D = .5; % Diffusion Rate
dm = 2; % dimensions
tau = 1; % time step
k = sqrt(dm*D*tau); % stdev of step-size distribution
xyl = ones(2,Ndots); xyds = xyl;
for t = 1:Nsteps
xyds = (k * randn(2,Ndots));
for j = 1:Ndots
xyl(:,j) = xyl(:,j)+xyds(:,j);
end
gscatter(xyl(1,:),xyl(2,:));
end
On the other hand, simulating stochastic diffusion on a ruffled 2D membrane is often done using parallel-computing systems at your local university's supercomputer center. However, with an understanding of the mathematical concepts that underlie complex diffusion, we can understand diffusion properties without a powerful computing cluster. I am a neuroscientist, not a mathematician or physicist, and based on my own personal trials and tribulations in modeling diffusion as a non-math expert, here are some concepts I needed to brush up on before getting serious about diffusion modeling...
Common Mathematical Concepts in Diffusion
Laplace operator
In mathematics the Laplace operator or Laplacian is a differential operator given by the divergence of the gradient of a function on Euclidean space. It is usually denoted by the symbols ∇·∇, ∇2 or ∆. The Laplacian ∆f(p) of a function f at a point p, up to a constant depending on the dimension, is the rate at which the average value of f over spheres centered at p, deviates from f(p) as the radius of the sphere grows.