# TuningGoal.Poles

Constraint on control system dynamics

## Description

Use `TuningGoal.Poles`

to constrain the closed-loop
dynamics of a control system or of specific feedback loops within the control system. You can use
this tuning goal for control system tuning with tuning commands, such as
`systune`

or `looptune`

. A `TuningGoal.Poles`

goal can ensure a minimum decay rate or minimum damping of the poles
of the control system or loop. It can also eliminate fast dynamics in the tuned
system.

## Creation

### Syntax

### Description

creates a default template for constraining the closed-loop pole locations. The minimum decay
rate, minimum damping constant, and maximum natural frequency define a region of the complex
plane in which poles of the component must lie. Set `Req`

= TuningGoal.Poles(`mindecay`

,`mindamping`

,`maxfreq`

)`mindecay`

= 0,
`mindamping`

= 0, or `maxfreq`

= `Inf`

to skip any of the three constraints.

constrains the poles of the sensitivity function measured at a specified location in the
control system. (See `Req`

= TuningGoal.Poles(`location`

,`mindecay`

,`mindamping`

,`maxfreq`

)`getSensitivity`

(Simulink Control Design) for information about
sensitivity functions.) Use this syntax to narrow the scope of the tuning goal to a particular
feedback loop.

If you want to constrain the poles of the system with one or more feedback loops opened,
set the `Openings`

property. To limit the enforcement of this tuning goal to
poles having natural frequency within a specified frequency range, set the
`Focus`

property. (See Properties.)

### Input Arguments

## Properties

## Examples

## Tips

`TuningGoal.Poles`

restricts the closed-loop dynamics of the tuned control system. To constrain the dynamics or ensure the stability of a single tunable component, use`TuningGoal.ControllerPoles`

.

## Algorithms

When you tune a control system using a `TuningGoal`

, the software converts
the tuning goal into a normalized scalar value *f*(*x*).
*x* is the vector of free (tunable) parameters in the control system. The
software then adjusts the parameter values to minimize
*f*(*x*), or to drive
*f*(*x*) below 1 if the tuning goal is a hard
constraint.

For `TuningGoal.Poles`

,
*f*(*x*) reflects the relative satisfaction or violation of
the goal. For example, if you attempt to constrain the closed-loop poles of a feedback loop to a
minimum damping of ζ = 0.5, then:

*f*(*x*) = 1 means the smallest damping among the constrained poles is ζ = 0.5 exactly.*f*(*x*) = 1.1 means the smallest damping ζ = 0.5/1.1 = 0.45, roughly 10% less than the target.*f*(*x*) = 0.9 means the smallest damping ζ = 0.5/0.9 = 0.55, roughly 10% better than the target.

## Version History

**Introduced in R2016a**

## See Also

`looptune`

| `systune`

| `looptune (for slTuner)`

(Simulink Control Design) | `systune (for slTuner)`

(Simulink Control Design) | `viewGoal`

| `evalGoal`

| `tunableTF`

| `tunableSS`

| `TuningGoal.ControllerPoles`