RegBEM Phoretic
This package allows the user to efficiently solve complex problems in phoretic mobility, such as the motion of multiple Janus particles in a non-trivial domain. The code uses the regularised boundary element approach described in Montenegro-Johnson et al "A regularised singularity approach to phoretic problems".
The code requires the following excellent GNU licensed packages:
DistMesh: http://persson.berkeley.edu/distmesh/
TRIANGLE_FEKETE_RULE: https://people.sc.fsu.edu/~jburkardt/m_src/triangle_fekete_rule/triangle_fekete_rule.html
These should be placed in the "geometry" sub-directory.
With these packages, the submission has all that is required to reproduce the results in the above paper, and I intend to add additional functionality (such as more image systems) as I can.
The submission should be regarded as "research" code, but I have cleaned it up and commented it so that it should be reasonably understandable, when the paper is used as a reference. If you wish to use the code for your research, or collaborate, I can hopefully answer some questions via email (available on my website http://www.damtp.cam.ac.uk/user/tdj23/index.html).
The file "run_examples.txt" demonstrates how to run the Janus and two-sphere example simulations used in the paper. With small changes, these codes can be used with arbitrary quadratic surface mesh input.
Overview of directories:
bem_assembly: routines for boundary element solution of the concentration, gradient and stokes flow using linear panels.
meshes: Example quadratic meshes of geometries
geometry: geometric routines for quadratic elements, as well as Fekete quadrature and DistMesh mesh generator
greens_fun: regularised green's functions for diffusion and stokes flow
plotting: routines to plot an unstructured quadratic triangular mesh in 3D, with colour constant or given as an input function at nodal values.
examples: examples from the above paper.
Cite As
Thomas Montenegro-Johnson (2026). RegBEM Phoretic (https://www.mathworks.com/matlabcentral/fileexchange/53909-regbem-phoretic), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
RegBEM_phoretic/
RegBEM_phoretic/bem_assembly/
RegBEM_phoretic/examples/janus/
RegBEM_phoretic/examples/two_sphere/
RegBEM_phoretic/geometry/
RegBEM_phoretic/greens_fun/
RegBEM_phoretic/meshes/
RegBEM_phoretic/plotting/
| Version | Published | Release Notes | |
|---|---|---|---|
| 1.01 | Small bug fix. Larger improvements (image systems etc) to follow as soon as I can. If you want to use the code, but find it a little unfriendly, please just drop me an email and I will happily help. |
|
|
| 1.0.0.0 |
