GithubHelp home page GithubHelp logo

johnaparker / stoked Goto Github PK

View Code? Open in Web Editor NEW
3.0 4.0 0.0 123 KB

Simulation and visualization of Stokesian dynamics for N interacting particles

License: MIT License

CMake 0.98% C++ 5.32% Python 93.70%
dynamics hydrodynamics brownian-motion

stoked's People

Contributors

johnaparker avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

stoked's Issues

Hydrodynamics of anisotropic particles

For anisotropic particles (ellipsoids), we know the drag tensor of individual particles. In the grand mobility matrix, these can be inserted as the block diagonal elements of self-mobility. The off-block-diagonal elements are based on sphere-sphere coupling, and the best we can do for the coupling is to assume the ellipsoids are sphere-like. Some research has been done on collections of spheroids (see [ref]), but it appears quite complicated.

Implementation

  • Construct the block-diagonal components of the mobility matrix using the self-mobility tensor
  • Approximate the spheroid coupling using an effective radius
  • Check to make sure the resulting mobility matrix is not singular (that is, a Cholesky decomposition is still valid)
  • If there's an interface, again use the effective radius for the ellipsoid-interface coupling

References

Claeys and Brady - 1993 - Suspensions of prolate spheroids in Stokes flow. P.pdf

Many-body hydrodynamics

In the current implementation, the hydrodynamics are pair-wise interactions. The mobility matrix M is constructed pair-wise, and the velocity in over-damped systems is V = M * F. To include many-body hydrodynamics, the mobility matrix must be extended to include higher stress-lets in the fluid field expansion. Then the larger mobility matrix is inverted to obtain the grand resistance matrix, R, which is then truncated to only translational and rotational stress-lets. The truncated R is then inverted to obtain the final mobility M, which now includes many-body terms.

Implementation

  • Literature review to find the equations for the higher order stress-let terms
  • Construct the larger mobility matrix, M (and allow an option to not include higher order stress-lets)
  • Construct the final M by inverted and truncated R, and inverted again to obtain M

References

Brady and Bossis - Stokesian Dynamics.pdf
pages 123-128

Hydrodynamic lubrication theory

Overview

When two particle have a center-to-center distance within 4*radius, there are lubrication hydrodynamic forces. Lubrication forces are expected to be very important in bound nano-dimers. A rough outline for how to implement them:

  • Use the already constructed far-field grand mobility matrix, and invert it to obtain a far-field grand resistance matrix
  • Sum over all pairs of particles within 4*radius. For each pair, calculate the lubrication resistance matrix and add it to the grand resistance matrix. Additionally, the contribution of the far-field grand resistance matrix for that specific pair must be subtracted since it has now been counted twice.
  • Invert the grand resistance matrix to obtain the final grand mobility matrix and use that in the dynamics.

References

Brady and Bossis - Stokesian Dynamics.pdf
Eq.(18) and the surrounding discussion for background theory

Jeffrey and Onishi - 1984 - Calculation of the resistance and mobility functio.pdf
Explicit equations for the lubrication terms in the resistance matrix

1802.08226.pdf
This is supposedly the corrected form of the equations from Jeffrey & Onishi.

2013-W(1).pdf
May have additional useful information

https://github.com/Pecnut/stokesian-dynamics
This appears to be a project that has fully implemented hydrodynamic interactions including lubrication forces. The lubrication forces are discussed explicitly here.

https://github.com/rajeshrin
Another related project

Using a dynamic time-step

Is it a good idea to use a dynamic time-step for an over-damped system? The ideal time-step can be chosen at each time-step by calculating the magnitude of the maximum force vector. The time-step would need an upper limit so that the Brownian motion is not abnormally large.

Test: hydrodynamic correlation

Correlations with hydrodynamic interactions are correct according to the fluctuation-dissipation theorem. Also verify that they are uncorrelated without interactions. And there are single-particle correlations for anisotropic drag particles.

Pairwise sphere interactions for sphere-composite particles

If a single particle is a composition of spheres (like a dimer), then only the net force and net torque effect its dynamics. Stoked would treat this as a single particle. But for certain interactions (sphere electrostatic, collisions, van-der-walls, etc.), the interactions can still be treated more precisely at the sphere-sphere level.

Add a way to tell stoked that a particle is a composite of spheres, and then use that info to obtain the correct forces from sphere-sphere interactions.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.