# sdo.requirements.PhasePlaneEllipse Class

**Namespace: **sdo.requirements

**Superclasses: **

Impose elliptic bound on phase plane trajectory of two signals

## Description

Use the `sdo.requirements.PhasePlaneEllipse`

object
to impose an elliptic bound on the phase plane trajectory of two signals
in a Simulink^{®} model. The phase plane trajectory is a plot of
the two signals against each other. You specify the radii, center,
and rotation of the bounding ellipse. You also specify whether you
require the trajectory of the two signals to lie inside or outside
the ellipse.

The following image shows the bounding ellipse and an example of the phase plane trajectory of two signals.

The X-Y plane is the phase plane defined by the two signals. *r _{x}* and

*r*are the radii of the bounding ellipse along the

_{y}*x*and

*y*axes, and

*θ*is the rotation of the ellipse about the center. The ellipse center is at (

_{R}*x*,

_{0}*y*). In the image, the phase plane trajectory of the signals lies within the bounding ellipse for all time-points

_{0}*t*to

_{1}*t*.

_{n}You can use the object as an input to your cost function, and use the `evalRequirement`

command in the cost function to evaluate whether your
test signals satisfy the specified requirement. You can then use the cost function and
`sdo.optimize`

to perform parameter
estimation or response optimization, subject to the satisfaction of the specified
requirement. If you are performing sensitivity analysis, after you generate parameter
samples, you can use the cost function and `sdo.evaluate`

to evaluate the requirement for each generated
sample.

## Construction

creates an
`ellipse_req`

=
sdo.requirements.PhasePlaneEllipse`sdo.requirements.PhasePlaneEllipse`

requirement object and assigns
default values to its properties. Use dot notation to customize the properties.

Use the `evalRequirement`

command to evaluate whether test signals satisfy the
specified requirement.

specifies one or more properties using name-value
arguments. For example, `ellipse_req`

=
sdo.requirements.PhasePlaneEllipse(Name=Value)```
ellipse_req =
sdo.requirements.PhasePlaneEllipse(Type=">=")
```

creates an
`sdo.requirements.PhasePlaneEllipse`

object and specifies the
`Type`

property as an outer bound.

Before R2021a, use commas to separate each name and value, and enclose
`Name`

in quotes. For example, ```
ellipse_req =
sdo.requirements.PhasePlaneEllipse("Type",">=")
```

creates an
`sdo.requirements.PhasePlaneEllipse`

object and specifies the
`Type`

property as an outer bound.

## Properties

## Methods

`copy` | Copy design requirement |

`get` | Get design requirement property values |

`set` | Set design requirement property values |

`evalRequirement` | Evaluate design requirement |

## Copy Semantics

Handle. To learn how handle classes affect copy operations, see Copying Objects.

## Examples

## Version History

**Introduced in R2016b**