PDEs are a fundamental part of many mathematical models and have been used to formulate problems from many natural and social sciences. This article explores some basic concepts and methods for solving these equations.
Linear and semilinear equations have been the subject of much research, but various other types exist. In particular, hyperbolic and parabolic equations have a wide range of applications.
Basic Concepts
PDEs are a class of differential equations that introduce relations between the various partial derivatives of an unknown multivariable function. They are often used in engineering and physics to model natural phenomena such as heat transfer, wave propagation, diffusion, and electrostatics.
There are four basic types of PDEs: ordinary, first-order, second-order, and third-order. They can be linear, nonlinear, or semilinear.
Unlike ordinary differential equations (ODEs), PDEs cannot be reduced to an ODE. This is because their variables are not homogeneous, meaning their derivatives are not squared or multiplied.
A common approach using symmetry methods, continuous group theory, Lie algebras and differential geometry. This can result in integrable equations, recursion operators, Lax pairs, and Backlund transforms. These techniques may yield existence and uniqueness results (Cauchy-Kowalevski theorem) and proofs of solutions’ important qualitative and quantitative properties.
Solution Methods
A PDE is a type of equation that can have many different possible solutions. Different from ODEs, where there is an analytical solution, the exact answers to PDEs are usually impossible to predict accurately.
For this reason, various numerical methods approximate the analytical solutions you can find in a pde solutions manual. Two of the most common forms are the finite difference and finite element methods.
The Wolfram Language function NDSolve has extensive capability to solve PDEs automatically. This is accomplished by comparing the problem structure to an array of possible numerical algorithms.
The automatic algorithm selection works well, but it is essential to understand the algorithms used. This knowledge can help you better understand the solutions NDSolve provides and use method options to improve efficiency or get better results.
Boundary Conditions
The hardest part about solving PDEs is ensuring that the equations have the specified behavior on their boundary. This is because a solution to a differential equation usually doesn’t have a unique value (integration constants appear in many places).
So, when we solve a system of PDEs on a model, it is often necessary to impose boundary conditions to enforce this behavior. These conditions can be simple (e.g., a Dirichlet boundary condition) or more complex (e.g., a Robin boundary condition), but they are always required on the entire domain.
The most common boundary conditions are the Dirichlet, Neumann and Cauchy boundaries. These are all used to define physical relationships that apply across the boundary. The Dirichlet boundary condition specifies a fixed concentration of the dependent variable, the Neumann boundary conditions specify a fixed dispersive flux, and the Cauchy boundary condition establishes a fixed total mass flux.
Initial Conditions
Often, differential equations model something:
- The flow of heat
- The vibration of a string or surface
- An electrical current
- The motion of planets
Usually, these problems have an initial condition that tells you what the function will be at some point.
These initial conditions can determine the solution to the problem. They can be an arbitrary function or a combination of procedures.
The initial conditions are typically given in the form of an expression u(x,t) that specifies n(x,t) and c(x,t). To solve these systems with pde, you need to code them in MATLAB and select a suitable mesh.
Previously, pdsolve would return a series starting when the limit of c(x,t) is 0. Now, with a few changes in the underlying algorithms, it can also use linear changes in the variables and change the evaluation points of the BC, obtaining the solution for the new variables and then changing back to the original variables.