Giter VIP home page Giter VIP logo

rigidmultiblobswall's Introduction

Rigid Multiblobs in half-space

Rotational and Translational Diffusion of Confined Rigid Bodies by Steven Delong, Florencio Balboa, Blaise Delmotte, Brennan Sprinkle and Aleksandar Donev ([email protected]) Courant Institute of Mathematical Sciences.

This package contains several python codes to run simulations of rigid bodies made out of rigidly connected blobs, and confined above a a single wall (floor). These codes can compute the mobility of complex shape objects, solve mobility or resistance problems for suspensions of many bodies or run deterministic or stochastic dynamic simulations. If the object happens to be a sphere, we also provide a faster and more accurate alternative to the rigid multiblob method, which uses Lubrication corrections to improve the performance of nearfield hydrodynamic calculations.

For the theory behind the numerical methods consult the references:

  1. Brownian Dynamics of Confined Rigid Bodies, S. Delong, F. Balboa Usabiaga, and A. Donev, The Journal of Chemical Physics, 143, 144107 (2015). DOI arXiv

  2. Hydrodynamics of suspensions of passive and active rigid particles: a rigid multiblob approach F. Balboa Usabiaga, B. Kallemov, B. Delmotte, A. Pal Singh Bhalla, B. E. Griffith, and A. Donev, Communications in Applied Mathematics and Computational Science, 11, 217 (2016). DOI arXiv

  3. Brownian dynamics of condined suspensions of active microrollers, F. Balboa Usabiaga, B. Delmotte and A. Donev, The Journal of Chemical Physics, 146, 134104 (2017). DOI arXiv

  4. Large Scale Brownian Dynamics of Confined Suspensions of Rigid Particles, B. Sprinkle, F. Balboa Usabiaga, N. Patankar and A. Donev, The Journal of Chemical Physics, 147, 244103 (2017) DOI arXiv

  5. Driven dynamics in dense suspensions of microrollers by B. Sprinkle, E. B. van der Wee and Y. Luo and M. Driscoll, and A. Donev, in press in Soft Matter, 2020 DOI arXiv

  6. Reconfigurable microbots folded from simple colloidal chains by T. Yang, B. Sprinkle, Y. Guo, J. Qian, D. Hua, A. Donev, D. W.M. Marr, and N. Wu, PNAS, 202007255, 2020 DOI

Several example scripts for simulating immersed rigid bodies near a single wall are present in subfolders.

For usage see doc/README.md.

Software organization

  • doc/: documentation.
  • body/: it contains a class to handle a single rigid body.
  • Lubrication/ A small class which implements our fast lubrication corrected sheme for fluctuating colloidal suspensions above a wall. Instalation instructions are included in ./Lubrication/README.md. The directory ./Lubrication/Lubrication_Examples contains an example from [5], see documentation in ./Lubrication/Lubrication_Examples/Uniform_Rollers/README.md as well as [6], see documentation ./Lubrication/Lubrication_Examples/Magnetic_Chain_With_Twist/README.md.
  • cRigid_cFibers/ Two small classes which implement our rigid multiblob method in a fast C++ code, and our flexible fibers method in a similar C++ code.
  • boomerang/: older stochastic example from [1], see documentation boomerang/README.md.
  • sphere/: the folder contains an example to simulate a sphere whose center of mass is displaced from the geometric center (i.e., gravity generates a torque), sedimented near a no-slip wall in the presence of gravity, as described in Section IV.C in [1]. Unlike the boomerang example this code does not use a rigid multiblob model of the sphere but rather uses the best known (semi)analytical approximations to the sphere mobility. See documentation doc/boomerang.txt.
  • many_bodyMCMC/: Markov Chain Monte Carlo code for rigid bodies.
  • mobility/: it has functions to compute the blob mobility matrix M and the product Mf using CPUs or GPUs, see [2].
  • multi_bodies/: codes to run many-body simulations, based on [3] (minimally-resolved active rollers) and primarily on [4] (general many-particle case).
  • quaternion_integrator/: it has a small class to handle quaternions and the schemes to integrate the equations of motion, see [1] and [4].
  • stochastic_forcing/: it contains functions to compute the product M^{1/2}z necessary to perform Brownian simulations, see [3] and [4].
  • utils.py: this file has some general functions that would be useful for general rigid bodies (mostly for analyzing and reading trajectory data and for logging).

rigidmultiblobswall's People

Contributors

fbusabiaga avatar sddelong avatar brennansprinkle avatar blackwer avatar adonev avatar blaisedelmotte avatar patrick-mooney avatar rbnvrw avatar zhe-chen-95 avatar raulppelaez avatar

Stargazers

 avatar

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.