Skip to main content
U.S. flag

An official website of the United States government

Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

FiPy: A Finite Volume PDE Solver Using Python

Published

Author(s)

Daniel Wheeler, Jonathan E. Guyer, James A. Warren

Abstract

The solution of coupled sets of partial differential equations (PDEs) is ubiquitous in continuum models for phase transformations, such as in phase field or level et simulations. We are developing an object-oriented PDE solver, written in the Python scripting language, based on a standard finite volume (FV) approach.Numerous PDE solvers exist using a variety of languages and numerical approaches. Many are proprietary, expensive and difficult to customize. They are generally not tailored to the specific needs of phase transformation modeling. As a result, materials scientists spend considerable resources repeatedly developing limited tools for specific problems. Because of the specialized knowledge required, these tools often do not take advantage of more advanced numerical techniques that would permit simulation of larger systems for longer times.Our approach, combining the FV method and Python, provides a tool that is extensible, powerful and freely available. The framework includes terms for transient diffusion, convection, and standard sources, enabling the solution of arbitrary combinations of coupled elliptic, hyperbolic and parabolic PDEs, including higher-order expressions such as Cahn-Hilliard. Program flow is entirely under user control, using the high-level Python scripting language.
Citation
International Journal of Web Services Research

Keywords

finite volume, level set, object oriented, partial differential equation, phase field, Python

Citation

Wheeler, D. , Guyer, J. and Warren, J. (2005), FiPy: A Finite Volume PDE Solver Using Python, International Journal of Web Services Research (Accessed April 25, 2024)
Created September 1, 2005, Updated June 2, 2021