pytential helps you accurately evaluate layer potentials (and, sooner or later, volume potentials). It also knows how to set up meshes and solve integral equations.
See here for easy, self-contained installation instructions for Linux and macOS.
It relies on
- numpy for arrays
- boxtree for FMM tree building
- sumpy for expansions and analytical routines
- modepy for modes and nodes on simplices
- meshmode for high order discretizations
- loopy for fast array operations
- pytest for automated testing
and, indirectly,
- PyOpenCL as computational infrastructure
Resources: