Project to develop Modified Poisson-Boltzmann solver for comparing with molecular level simulations.
We are solving a class of Poisson-Boltzmann systems as described below. First, we have poisson equation for charge density.
$$
-\nabla \cdot (\varepsilon(\phi, y_\alpha) \nabla \phi) = \rho(\phi, p)\ in\ \Omega
$$
with mole fractions of species
After simulating we get
First, we'll clone the repository and instantiate the packages. Make sure you have julia 1.11!
git clone https://github.com/IPAM-ECH2025/PoissonBoltzmannIPAM2025.git
julia -e "using Pkg; Pkg.activate(); Pkg.instantiate()"
You can then open one of the notebooks or execute one of the scripts.
.
├── assets # Some data used by the demo code
│ └── FedorovKornyshev.png
├── LICENSE
├── results # Subdirectory with calculation results
├── notebooks
│ └── ... # Various notebooks working with JuliaMPBSolver
├── draftnotebooks
│ └── ... # Various notebooks working without JuliaMPBSolver
├── src
│ └── PoissonBoltzmannIPAM2025.jl # Module with shared code for project
├── packages
│ └── JuliaMPBSolver # Main package
│ ├── Project.toml
│ └── src
│ └── JuliaMPBSolver.jl
├── Project.toml # Julia dependency description
├── README.md
└── scripts
└── ... # Various scripts
- MPB: modified Poisson-Boltzmann
- IC... : ion conserving ...
- ...P : ... with pressure equation
For workflow hints, see
These codes are being developed thanks to IPAM Long Program - Bridging the Gap: Transitioning from Deterministic to Stochastic Interaction Modeling in Electrochemistry