Main Content

Solve general linear and nonlinear PDEs for stationary, time-dependent,
and eigenvalue problems

You can use Partial Differential Equation Toolbox™ to solve linear and nonlinear second-order PDEs for stationary, time-dependent, and eigenvalue problems that occur in common applications in engineering and science.

A typical workflow for solving a general PDE or a system of PDEs includes the following steps:

Convert PDEs to the form required by Partial Differential Equation Toolbox.

Create a PDE model container specifying the number of equations in your model.

Defining 2-D or 3-D geometry and mesh it using triangular and tetrahedral elements with linear or quadratic basis functions.

Specify the coefficients, boundary and initial conditions. Use function handles to specify non-constant values.

Solve and plot the results at nodal locations or interpolate them to custom locations.

`PDEModel` | PDE model object |

`StationaryResults` | Time-independent PDE solution and derived quantities |

`TimeDependentResults` | Time-dependent PDE solution and derived quantities |

`EigenResults` | PDE eigenvalue solution and derived quantities |

BoundaryCondition Properties | Boundary condition for PDE model |

CoefficientAssignment Properties | Coefficient assignments |

GeometricInitialConditions Properties | Initial conditions over a region or region boundary |

NodalInitialConditions Properties | Initial conditions at mesh nodes |

PDESolverOptions Properties | Algorithm options for solvers |

PDEVisualization Properties | PDE visualization of mesh and nodal results |

**Solve Problems Using PDEModel Objects**

Workflow describing how to set up and solve PDE problems using Partial Differential Equation Toolbox.

Set Dirichlet and Neumann conditions for scalar PDEs and systems of PDEs. Use functions when you cannot express your boundary conditions by constant input arguments.

**Solve PDEs with Constant Boundary Conditions****Solve PDEs with Nonconstant Boundary Conditions****No Boundary Conditions Between Subdomains****View, Edit, and Delete Boundary Conditions****Identify Boundary Labels**

**f Coefficient for specifyCoefficients**

Specify the coefficient f in the equation.

**c Coefficient for specifyCoefficients****m, d, or a Coefficient for specifyCoefficients****View, Edit, and Delete PDE Coefficients**

Set initial conditions for time-dependent problems or initial guess for nonlinear stationary problems.

**Solution and Gradient Plots with pdeplot and pdeplot3D**

Plot 2-D and 3-D PDE solutions and their gradients using
`pdeplot`

and `pdeplot3D`

.

**2-D Solution and Gradient Plots with MATLAB® Functions**

Plot 2-D PDE solutions and their gradients using `surf`

,
`mesh`

, `quiver`

, and other MATLAB^{®} functions.

**3-D Solution and Gradient Plots with MATLAB® Functions**

Plot 3-D PDE solutions, their gradients, and streamlines using
`surf`

, `contourslice`

,
`quiver`

, and other MATLAB functions.

**Dimensions of Solutions, Gradients, and Fluxes**

Dimensions of stationary, time-dependent, and eigenvalue results at mesh nodes and arbitrary locations.

**Eigenvalues and Eigenmodes of Square**

Find the eigenvalues and eigenmodes of a square domain.

**Eigenvalues and Eigenmodes of L-Shaped Membrane**

Use command-line functions to find the eigenvalues and the corresponding eigenmodes of an L-shaped membrane.

**Wave Equation on Square Domain**

Solve a standard second-order wave equation.

Compute reflected waves from an object illuminated by incident waves.

**Equations You Can Solve Using PDE Toolbox**

Types of scalar PDEs and systems of PDEs that you can solve using Partial Differential Equation Toolbox.

**Put Equations in Divergence Form**

Transform PDEs to the form required by Partial Differential Equation Toolbox.

Description of the use of the finite element method to approximate a PDE solution using a piecewise linear function.