solvepde
and solvepdeeig
functions to solve PDE equations and eigenvalue problemsNew solver functions for PDEModel
:
solvepde
replaces assempde
, pdenonlin
, hyperbolic
,
and parabolic
.
solvepdeeig
replaces pdeeig
.
To use the new solvers, include PDE coefficients in your model
using specifyCoefficients
. Include
initial conditions in your model using setInitialConditions
.
The new solvers return results as one of the three new objects:
StationaryResults
—
Returned by solvepde
for a stationary PDE model.
TimeDependentResults
—
Returned by solvepde
for a timedependent PDE
model.
EigenResults
—
Returned by solvepdeeig
.
StationaryResults
and TimeDependentResults
objects
contain solution gradients at the nodes.
The specifyCoefficients
function
specifies equation coefficients as a property of PDEModel
.
The setInitialConditions
function
specifies initial conditions as a property of PDEModel
.
Create a quadratic mesh for 2D problems using generateMesh
with GeometricOrder
set
to 'quadratic'
.
The evaluateGradient
function
enables you to interpolate the gradient of a StationaryResults
or TimeDependentResults
object
at arbitrary points in the geometry.
assembleFEMatrices
to assemble finite element matricesThe assembleFEMatrices
function
assembles finite element matrices for independent factoring and solution
using linear algebra methods. It replaces assempde
, assema
,
and assemb
for matrix assembly.
The createPDEResults
function
returns results as one of the three new objects, depending on the
type of the PDE problem.
A StationaryResults
object
for a stationary PDE model. StationaryResults
contains
the solution of PDE and its gradients at the nodal locations.
A TimeDependentResults
object
for a timedependent PDE model. TimeDependentResults
contains
the solution of PDE and its gradients at the nodal locations.
A EigenResults
object
for an eigenvalue problem.
createPDEResults
no longer
creates an object of type PDEResults
.
The syntax of createPDEResults
has
changed to accommodate creating the new result types for timedependent
and eigenvalue problems.
To create the TimeDependentResults
object
for a timedependent problem, use the syntax createPDEResults(pdem,u,utimes,'timedependent')
,
where utimes
is a vector of solution times.
To create the EigenResults
object
for an eigenvalue problem, use the syntax createPDEResults(pdem,eigenvectors,eigenvalues,'eigen')
.
EigenResults
has different property names
than PDEResults
. Update any eigenvalue scripts
that use PDEResults
property names.
Functionality  What Happens When You Use It?  Use This Instead  Compatibility Considerations 

wbound  Still runs  No replacement  New features and the recommended workflow are not compatible with this function. For the recommended workflow, see Solve Problems Using PDEModel Objects. 
pdeadgsc and pdeadworst  Still runs  No replacement  New features and the recommended workflow are not compatible with these functions. For the recommended workflow, see Solve Problems Using PDEModel Objects. 
assempde , assema , assemb , hyperbolic , parabolic , pdenonlin  Still runs  solvepde and assembleFEMatrices  To solve PDE problems, use For the recommended workflow, see Solve Problems Using PDEModel Objects. 
pdeeig and sptarn  Still runs  solvepdeeig  To solve PDE eigenvalue problems, use For the recommended workflow, see Solve Problems Using PDEModel Objects. 
poimesh , poiasma , poicalc , poiindex , poisolv  Still runs  solvepde  To solve Poisson's equations, use 
pdejmps  Still runs  No replacement  New features and the recommended workflow are not compatible with this function. For the recommended workflow, see Solve Problems Using PDEModel Objects. 
pdesmech  Still runs  PDE app  Use the PDE app instead of 
dst and idst  Still runs  No replacement  Remove all instances of dst and idst . 
tri2grid and pdeintrp  Still runs  interpolateSolution  Use the interpolation function interpolateSolution provided
by StationaryResults , TimeDependentResults and EigenResults . 
pdeprtni  Still runs  No replacement 

pdemdlcv  Still runs  No replacement  Remove all instances of pdemdlcv . 
pde  Warns  createpde  Use The 
pdeGeometryFromEdges  Warns  geometryFromEdges  Use Although 
pdeBoundaryConditions  Warns  applyBoundaryCondition  Replace all instances of Although 
Loading a  Errors  applyBoundaryCondition  Recreate the Boundary Conditions using 
Function handle for specifying nonconstant boundary conditions
and coefficients of the form  Still runs.  @f(region,state)  Use

geometryFromMesh
functionThe geometryFromMesh
function
creates 3D geometry from a finite element mesh, or from a triangulated
surface mesh. For details, see the function reference page or Create
and View 3D Geometry.
createPDEResults
functionThe createPDEResults
function
converts a PDE solution into a PDEResults
object.
The PDEResults
object allows you to interpolate
the solution using interpolateSolution
.
For details, see the reference pages.
You can now solve partial differential equations with 3D geometry.
To do so, there is a new workflow that combines the geometry, mesh,
and boundary conditions into a PDEModel
object.
You can also use this workflow for 2D geometry. For details, see Solve
Problems Using PDEModel Objects.
To specify problem coefficients or boundary conditions in 3D geometry, you can use strings with a syntax similar to that of a 2D problem. There is a new way of writing functions for coefficients in 3D geometries. For details, see PDE Coefficients and Boundary Conditions.
To accommodate both 2D and 3D geometry, the format of boundary
condition objects changed from that introduced in R2014b. The new
object is BoundaryCondition
Properties, and calling pdeBoundaryConditions
now
warns that it will be removed in a future release. If you saved a pdeBoundaryConditions
object
in an R2014bformat MAT file, then loading that file in R2015a can
produce an error. Additionally, the syntax for specifying nonconstant
boundary conditions has changed. Functions written in the previous
syntax continue to work for now.
R2014b Syntax  R2015a Syntax 

function bcMatrix = myfun(problem,region,state)  function bcMatrix = myfun(region,state) 
For details, see Changes to Boundary Conditions Object From R2014b.
The main toolbox solvers now support problems with 3D geometry.
For a listing of functions that do or do not support 3D geometry,
see Functions
That Support 3D Geometry. Solvers take a model
argument
instead of the previous b
, p
, e
, t
arguments.
For details, see the function reference pages.
Import the geometry for a 3D problem in the STL file format
using the importGeometry
function.
For details, see Create
and View 3D Geometry.
Create finite element meshes using the generateMesh
function.
For 3D geometry, the meshes consist of tetrahedra. See Mesh Data for
[p,e,t] Triples: 3D.
The pdeplot3D
function
plots solutions on the boundaries of 3D geometry. For details, see Plot 3D Solutions.
There are two new featured examples related to linear elasticity that have 3D geometry:
There is also a new example of plotting slices through a 3D solution: Contour Slices Through a 3D Solution.
To run the examples at the MATLAB^{®} command line:
echodemo StrainedBracketExample echodemo Eigenvaluesofa3DPlateExample echodemo ContourSlices3DExample
pdebound
and pdegeom
reference pages removedThe pdebound
and pdegeom
reference
pages have been replaced by the Boundary Conditions and 2D Geometry documentation
categories.
To specify PDE boundary conditions in a modular fashion, per
edge or set of edges, use a pdeBoundaryConditions
specification.
For details, see Steps
to Specify a Boundary Conditions Object.
pdeInterpolant
object for solution interpolationInterpolate a PDE solution to a set of points using evaluate
on
an interpolant. Create the interpolant using pdeInterpolant
.
hyperbolic
solverYou can include damping in the hyperbolic
solver
in matrix form. There is a new example of dynamics
of a damped cantilever beam that shows how to use this feature.
hyperbolic
and parabolic
solversYou can disable the display of internal ODE solution details
that the hyperbolic
and parabolic
solvers
report. To disable the display, set the Stats
namevalue
pair to 'off'
.
There is a new example of eigenvalues of a circular membrane. View the example here. To run the example at the MATLAB command line:
echodemo eigsExample
The meshing (geometry triangulation) functions in initmesh
and adaptmesh
provide
an enhancement option for increased meshing speed and robustness.
Choose the enhanced algorithm by setting the MesherVersion
namevalue
pair to 'R2013a'
. The default MesherVersion
value
of 'preR2013a'
gives the same mesh as previous
toolbox versions.
The enhancement is available inpdetool
from
the Mesh > Parameters > Mesher version menu.
There is a new example of heat distribution in a radioactive rod. View the example here. To run the example at the MATLAB command line:
echodemo radioactiveRod
You can now solve parabolic and hyperbolic equations whose coefficients
depend on the solution u or on the gradient of u.
Use the parabolic
or hyperbolic
commands,
or solve the equations using pdetool
. For details,
see the function reference pages.
pdegplot
labels edges and subdomainspdegplot
now optionally labels:
The edges in the geometry
The subdomains in the geometry
To obtain these labels, set the edgeLabels
or subdomainLabels
namevalue
pairs to 'on'
. For details, see the pdegplot
reference
page.
There is a new example of uniform pressure load on a thin plate. View the example here. To run the example at the MATLAB command line:
echodemo clampedSquarePlateExample
There is a new example of nonlinear heat transfer in a thin plate. View the example here. To run the example at the MATLAB command line:
echodemo heatTransferThinPlateExample
There is a new example of a system of coupled PDEs. View the example here. To run the example at the MATLAB command line:
echodemo deflectionPiezoelectricActuator
pdesmech
shear strain calculation change The pdesmech
function
now calculates shear strain according to the engineering shear strain
definition. This has always been the documented behavior. However,
the previous calculation was performed according to the tensor shear
strain calculation, which gives half the value of the engineering
shear strain.
pdesmech
now returns shear strain values
exactly twice as large as before.
Release  Features or Changes with Compatibility Considerations 

R2016a  
R2015b  Functionality being removed or changed 
R2015a  Equation coefficients and boundary conditions for 3D problems 
R2014b  None 
R2014a  None 
R2013b  None 
R2013a  None 
R2012b  pdesmech shear strain calculation change 
You can also select a location from the following list: