ExactFieldSolutions.jl

Full field solutions are essential for the verification of numerical codes that are based on the solution of Partial Differential Equations (PDE). They allow for checking if numerical solutions are meaningful in eyeball norm but, more importantly, they allow for the quantification of discretisation errors. This quantification further enables to check whether numerical solutions converge to exact solutions at expected theoretical rates. ExactFieldSolutions compiles full field solutions for 1D, 2D and 3D PDE problems including Poisson-type and mechanical problems (Stokes, elasticity). Contributions are welcome and full field solutions to other problems (electric, magnetic, MHD) are more than welcome. Feel free to make a PR.

ExactFieldSolutions benefits from automatic differentiation tools available within the Julia ecosystem (e.g., ForwardDiff). These allow to evaluate fluxes and sources terms in a simplified way. See this manufactured solution for the 2D Poisson problem.

Please note that ExactFieldSolutions is a registered package, so you can install it simply by typing add ExactFieldSolutions in package mode.

Poisson 2D

Sevilla et al. (2018)

alt text

Poisson 3D

Sevilla et al. (2018)

alt text

Diffusion 1D

Diffusion of a 1D Gaussian

alt text

Diffusion 2D

Diffusion of a 2D Gaussian

alt text

Stokes 2D

Viscous inclusion - Schmid & Podladchikov (2003)

alt text

Double corner flow - Moulas et al., (2021)

alt text

Donea & Huerta (2003)

alt text

SolKz - Zhong et al. (1996)

alt text

SolCx - Zhong et al. (1996)

alt text

Elasticity 2D

Elastic plate with a hole

alt text

Benchmarking

1D diffusion: Finite Difference Method (FDM) with backward-Euler integration and spatial staggering

alt text