EigenResults

PDE eigenvalue solution and derived quantities

Description

An `EigenResults` object contains the solution of a PDE eigenvalue problem in a form convenient for plotting and postprocessing.

• Eigenvector values at the nodes appear in the `Eigenvectors` property.

• The eigenvalues appear in the `Eigenvalues` property.

Creation

There are several ways to create an `EigenResults` object:

• Solve an eigenvalue problem using the `solvepdeeig` function. This function returns a PDE eigenvalue solution as an `EigenResults` object. This is the recommended approach.

• Solve an eigenvalue problem using the `pdeeig` function. Then use the `createPDEResults` function to obtain an `EigenResults` object from a PDE eigenvalue solution returned by `pdeeig`. Note that `pdeeig` is a legacy function. It is not recommended for solving eigenvalue problems.

Properties

expand all

Finite element mesh, returned as a FEMesh Properties object.

Solution eigenvectors, returned as a matrix or 3-D array. The solution is a matrix for scalar eigenvalue problems, and a 3-D array for eigenvalue systems. For details, see Dimensions of Solutions, Gradients, and Fluxes.

Data Types: `double`

Solution eigenvalues, returned as a vector. The vector is in order by the real part of the eigenvalues from smallest to largest.

Data Types: `double`

Object Functions

 `interpolateSolution` Interpolate PDE solution to arbitrary points

Examples

collapse all

Obtain an `EigenResults` object from `solvepdeeig`.

Create the geometry for the L-shaped membrane. Apply zero Dirichlet boundary conditions to all edges.

```model = createpde; geometryFromEdges(model,@lshapeg); applyBoundaryCondition(model,'dirichlet', ... 'Edge',1:model.Geometry.NumEdges, ... 'u',0);```

Specify coefficients `c = 1`, `a = 0`, and `d = 1`.

`specifyCoefficients(model,'m',0,'d',1,'c',1,'a',0,'f',0);`

Create the mesh and solve the eigenvalue problem for eigenvalues from 0 through 100.

```generateMesh(model,'Hmax',0.05); ev = [0,100]; results = solvepdeeig(model,ev)```
```results = EigenResults with properties: Eigenvectors: [5669x19 double] Eigenvalues: [19x1 double] Mesh: [1x1 FEMesh] ```

Plot the solution for mode 10.

`pdeplot(model,'XYData',results.Eigenvectors(:,10))`

Version History

Introduced in R2016a