Partial Differential Equation Solvers

Back to iFlow home page

A partial differential equation (PDE) is a differential equation that involves partial derivatives of a multivariate function. There are multiple numerical methods for solving PDEs. For example, the finite difference methods (FDM) solve them by approximating derivatives with finite differences. Both the spatial and temporal domains can be discretized into a finite number of small steps, and the value of the solution at these discrete points is approximated by solving a system of linear equations.

Two-dimensional stationary PDEs

The Steady State FDM Solver block can be used to solve second-order linear PDEs in the general form shown as follows:

A∂²φ/∂x² + 2B∂²φ/∂x∂y + C∂²φ/∂²y + D∂φ/∂x + E∂φ/∂y + Fφ + G = 0

Typically, x and y are Cartesian coordinates and φ represents a physical property such as temperature or concentration. In the following subsections, we show how iFlow can be used to solve some of the special cases of the above PDE.

Heat equation

When A=C and B=D=E=F=G=0, we have the heat equation:

∂²φ/∂x² + ∂²φ/∂²y = 0

Click HERE to play with the above example

Poisson's equation

When A=C=1, B=D=E=F=0, and G=f(x, y), we have the Poisson's equation:

∂²φ/∂x² + ∂²φ/∂²y + f(x,y) = 0

Click HERE to play with the above example

Convection-diffusion equation

When A=C=1, B=F=G=0, D=-u, and E=-v, we have the convection-diffusion equation:

∂²φ/∂x² + ∂²φ/∂²y - u∂φ/∂x - v∂φ/∂y = 0

where u and v are the advection or drift velocities in x and y directions, respectively.

Click HERE to play with the above example

Back to iFlow home page