https://github.com/llnl/echemfem
Finite Element Method for Electrochemical Transport (EchemFEM)
https://github.com/llnl/echemfem
discontinuous-galerkin electrochemistry finite-element-method firedrake python
Last synced: 5 months ago
JSON representation
Finite Element Method for Electrochemical Transport (EchemFEM)
- Host: GitHub
- URL: https://github.com/llnl/echemfem
- Owner: LLNL
- License: mit
- Created: 2022-07-13T16:49:21.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-08-27T18:56:46.000Z (8 months ago)
- Last Synced: 2024-09-16T22:05:10.342Z (7 months ago)
- Topics: discontinuous-galerkin, electrochemistry, finite-element-method, firedrake, python
- Language: Python
- Homepage:
- Size: 604 KB
- Stars: 20
- Watchers: 8
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# EchemFEM
[](https://zenodo.org/badge/latestdoi/513600791)
[](https://doi.org/10.21105/joss.06531)
This code provides Finite Element solvers for electrochemical transport.
Both continuous Galerkin (CG) and discontinuous Galerkin (DG) schemes are provided. The DG scheme for electroneutral Nernst-Planck is described in [Roy et al., 2023](https://doi.org/10.1016/j.jcp.2022.111859). The CG scheme uses SUPG for the advection-migration term.The following transport mechanisms are available: diffusion, advection, electromigration. EchemFEM supports both non-porous and porous cases. The ionic potential can either be described using an electroneutrality constraint or a Poisson equation. In the porous case, the electronic potential can be described by a Poisson equation.
Some finite size effects are also implemented. For example, the generalized modified Poisson-Nernst-Planck model (GMPNP) is used in the examples of [FireCat](https://github.com/LLNL/firecat), coupling in with a microkinetics model.LLNL-CODE-837342
## Documentation
User guide and API documentation can be found here [documentation](https://software.llnl.gov/echemfem/index.html).
## Installation
Please install the open-source finite element library [Firedrake](https://www.firedrakeproject.org/download.html).
To install EchemFEM, simply run the following in the parent echemfem folder:
```
pip install -e .
```
The documentation has more details about installation and running the code.