back to home

JuliaPDE / SurveyofPDEPackages

Survey of the packages of the Julia ecosystem for solving partial differential equations

290 stars
43 forks
0 issues

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing JuliaPDE/SurveyofPDEPackages in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Source files are only loaded when you start an analysis to optimize performance.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind.in/repo/JuliaPDE/SurveyofPDEPackages)
Preview:Analyzed by RepoMind

Repository Overview (README excerpt)

Crawler view

Survey of PDE Packages State of the ecosystem as of: 03/17/2026 This is a brief list of packages relevant when solving partial differential equations with Julia. The information is mostly gleaned from repositories of packages or from published reports or articles. If • you think something was missed, • you’d like to amend or complement the information, or • you wish your software not to be included, file an issue, or even better, make it a PR. For some projects the actual software is not available (or it is not clear how to get it). In that case the document would at least include a link to the paper or other source of information. Table of contents • General PDE approximation methods • Transform methods • Finite difference methods • Finite element methods • Finite volume methods • Spectral element methods • Boundary element, Boundary integral methods • Mesh free methods and particle methods • Virtual element methods • Multi-method packages • Non-classical methods • Solvers, sparse and hierarchical matrix libraries • Geometry and topology • Mesh and Grid Generation • Postprocessing, visualization • HPC, Parallel processing • Optimization • Miscellanea General PDE approximation methods ApproxFun.jl ApproxFun is a package for approximating functions. It is in a similar vein to the Matlab package Chebfun and the Mathematica package RHPackage. Active and high quality project. DiffEqDocs DifferentialEquations.jl: Efficient Differential Equation Solving in Julia. This is a suite for numerically solving differential equations written in Julia and available for use in Julia, Python, and R. The purpose of this package is to supply efficient Julia implementations of solvers for various differential equations. Equations within the realm of this package include: • Discrete equations (function maps, discrete stochastic (Gillespie/Markov) simulations) • Ordinary differential equations (ODEs) • Split and Partitioned ODEs (Symplectic integrators, IMEX Methods) • Stochastic ordinary differential equations (SODEs or SDEs) • Stochastic differential-algebraic equations (SDAEs) • Random differential equations (RODEs or RDEs) • Differential algebraic equations (DAEs) • Delay differential equations (DDEs) • Neutral, retarded, and algebraic delay differential equations (NDDEs, RDDEs, and DDAEs) • Stochastic delay differential equations (SDDEs) • Experimental support for stochastic neutral, retarded, and algebraic delay differential equations (SNDDEs, SRDDEs, and SDDAEs) • Mixed discrete and continuous equations (Hybrid Equations, Jump Diffusions) • (Stochastic) partial differential equations ((S)PDEs) (with both finite difference and finite element methods) Transform methods julia-pde-benchmark Benchmarking a simple PDE integration algorithm in Julia and other languages. Fourier approach. DFTK.jl The density-functional toolkit is a library of Julia routines for experimentation with plane-wave-based density-functional theory (DFT): it is an engine to solve nonlinear eigenvector equations discretized in a Fourier basis, applied to the Kohn-Sham equations of electronic structure theory (as well as a couple of others). FourierFlows.jl Tools for solving partial differential equations on periodic domains using Fourier-based pseudospectral methods. PencilFFTs.jl Fast Fourier transforms of MPI-distributed Julia arrays that can be used for pseudospectral partial differential equation solvers. Finite difference methods DiffEqOperators.jl Automatic construction of arbitrary order finite difference stencils on regular and irregular grids. Utilizes stencil compilers and matrix-free implementations for low memory high efficiency implementation. sbp.jl Finite difference method, unregistered. SummationByPartsOperators.jl A library of classical summation-by-parts (SBP) operators used in finite difference methods to get provably stable semidiscretisations, paying special attention to boundary conditions. EconPDEs.jl This package solves (systems of) nonlinear ODEs/PDEs arising in economic models (i.e. parabolic/elliptic PDEs arising from HJB equations) The underlying algorithm is based on a combination of upwinding and fully implicit time stepping, using sparse Jacobians. Partial-Differential-Equations Solving partial differential equations using finite difference methods on Julia. hyperbolic_PDE.jl The examples are given from the book Numerical Solution of Hyperbolic Partial Differential Equations by John A. Trangenstein. JuliaIBPM An ecosystem of repositories for solving PDEs with the immersed boundary projection method on staggered Cartesian grids. ParallelStencil.jl Package for writing high-level code for parallel high-performance stencil computations that can be deployed on both GPUs and CPUs ImplicitGlobalGrid.jl Almost trivial distributed parallelization of stencil-based GPU and CPU applications on a regular staggered grid Finite element methods FEniCS.jl FEniCS.jl is a wrapper for the FEniCS library for finite element discretizations of PDEs. Ferrite.jl A simple finite element toolbox written in Julia. It is actually quite powerful, and it is being actively updated. Some parallels with deal.II might help with the learning curve. JuliaFEM The JuliaFEM project develops open-source software for reliable, scalable, distributed Finite Element Method. Maintains an overview page with documentation at http://www.juliafem.org/. NESSie.jl Paper: Efficient and intuitive finite element and boundary element methods for nonlocal protein electrostatics in the Julia language Link GaLerKia-a-unified-Julia-implementation-of-mesh-and-meshfree-based-Galerkin-methods Provide a modern and unified simulation platform for finite element methods, meshfree Galerkin methods and virtual element methods. The platform is being built over three Julia independent libraries: FEMLia (for finite elements), MEMLia (for meshfree methods) and VEMLia (for virtual elements). Makhno.jl HPFEM.jl HP Finite eleme…