<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>http://wiki.foofun.cn//index.php?action=history&amp;feed=atom&amp;title=Control_Systems%2FStandard_Forms</id>
	<title>Control Systems/Standard Forms - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.foofun.cn//index.php?action=history&amp;feed=atom&amp;title=Control_Systems%2FStandard_Forms"/>
	<link rel="alternate" type="text/html" href="http://wiki.foofun.cn//index.php?title=Control_Systems/Standard_Forms&amp;action=history"/>
	<updated>2026-04-05T14:28:17Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>http://wiki.foofun.cn//index.php?title=Control_Systems/Standard_Forms&amp;diff=1199&amp;oldid=prev</id>
		<title>Zhang3：创建页面，内容为“{{Control Systems/Page|Eigenvalues and Eigenvectors|MIMO Systems}}  == Companion Form ==  A '''companion form''' contains the coefficients of a corresponding characteristic polynomial along one of its far rows or columns. For example, one companion form matrix is:  :&lt;math&gt;\begin{bmatrix} 0 &amp; 0 &amp; 0 &amp; \cdots &amp; 0 &amp; -a_0 \\                        1 &amp; 0 &amp; 0 &amp; \cdots &amp; 0 &amp; -a_1 \\                        0 &amp; 1 &amp; 0 &amp; \cdots &amp; 0 &amp; -a_2 \\                        0 &amp; 0 &amp;…”</title>
		<link rel="alternate" type="text/html" href="http://wiki.foofun.cn//index.php?title=Control_Systems/Standard_Forms&amp;diff=1199&amp;oldid=prev"/>
		<updated>2022-04-30T12:29:39Z</updated>

		<summary type="html">&lt;p&gt;创建页面，内容为“{{Control Systems/Page|Eigenvalues and Eigenvectors|MIMO Systems}}  == Companion Form ==  A &amp;#039;&amp;#039;&amp;#039;companion form&amp;#039;&amp;#039;&amp;#039; contains the coefficients of a corresponding characteristic polynomial along one of its far rows or columns. For example, one companion form matrix is:  :&amp;lt;math&amp;gt;\begin{bmatrix} 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; -a_0 \\                        1 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; -a_1 \\                        0 &amp;amp; 1 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; -a_2 \\                        0 &amp;amp; 0 &amp;amp;…”&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Control Systems/Page|Eigenvalues and Eigenvectors|MIMO Systems}}&lt;br /&gt;
&lt;br /&gt;
== Companion Form ==&lt;br /&gt;
&lt;br /&gt;
A '''companion form''' contains the coefficients of a corresponding characteristic polynomial along one of its far rows or columns. For example, one companion form matrix is:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{bmatrix} 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; -a_0 \\&lt;br /&gt;
                       1 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; -a_1 \\&lt;br /&gt;
                       0 &amp;amp; 1 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; -a_2 \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; 1 &amp;amp; \cdots &amp;amp; 0 &amp;amp; -a_3 \\&lt;br /&gt;
                       \vdots &amp;amp; \vdots &amp;amp; \vdots &amp;amp;\ddots &amp;amp; \vdots &amp;amp; \vdots \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 1 &amp;amp; -a_{n-1} &lt;br /&gt;
       \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and another is:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{bmatrix} -a_{n-1} &amp;amp; -a_{n-2} &amp;amp; -a_{n-3} &amp;amp; \cdots &amp;amp; -a_1 &amp;amp; -a_0 \\&lt;br /&gt;
                       1 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       0 &amp;amp; 1 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; 1 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       \vdots &amp;amp; \vdots &amp;amp; \vdots &amp;amp;\ddots &amp;amp; \vdots &amp;amp; \vdots \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 1 &amp;amp; 0 &lt;br /&gt;
       \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are two companion forms that are convenient to use in control theory, namely the observable canonical form and the controllable canonical form. These two forms are roughly transposes of each other (just as observability and controllability are dual ideas). When placed in one of these forms, the design of controllers or observers is simplified because the structure of the system is made apparent (and is easily modified with the desired control).&lt;br /&gt;
&lt;br /&gt;
=== Observable Canonical Form ===&lt;br /&gt;
&lt;br /&gt;
'''Observable-Canonical Form''' is useful in a number of cases, especially for designing observers.&lt;br /&gt;
&lt;br /&gt;
The observable-canonical form is as follows:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;A = \begin{bmatrix} -a_1 &amp;amp;  1 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 \\&lt;br /&gt;
                       -a_2 &amp;amp; 0 &amp;amp; 1 &amp;amp; \cdots &amp;amp; 0 \\&lt;br /&gt;
                       \vdots &amp;amp; \vdots &amp;amp;  \vdots &amp;amp; \ddots &amp;amp; \vdots \\&lt;br /&gt;
                       -a_{n-1} &amp;amp;  0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 1 \\&lt;br /&gt;
                       -a_n &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &lt;br /&gt;
       \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B = \begin{bmatrix} b_1 \\ b_2 \\ \vdots \\ b_n \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;C = \begin{bmatrix} 1 &amp;amp;  0 &amp;amp; \cdots &amp;amp; 0 \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Controllable Canonical Form ===&lt;br /&gt;
&lt;br /&gt;
'''Controllable-Canonical Form''' is useful in a number of cases, especially for designing controllers when the full state of the system is known.&lt;br /&gt;
&lt;br /&gt;
The controllable-canonical form is as follows:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;A = \begin{bmatrix} -a_1 &amp;amp; -a_2 &amp;amp; -a_3 &amp;amp; \cdots &amp;amp; -a_{n-1} &amp;amp; -a_n \\&lt;br /&gt;
                       1 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       0 &amp;amp; 1 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; 1 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       \vdots &amp;amp; \vdots &amp;amp; \vdots &amp;amp;\ddots &amp;amp; \vdots &amp;amp; \vdots \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 1 &amp;amp; 0 &lt;br /&gt;
       \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B = \begin{bmatrix} 1 \\ 0 \\ \vdots \\ 0 \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;C = \begin{bmatrix} b_1 &amp;amp; b_2 &amp;amp; b_3 &amp;amp; \cdots &amp;amp; b_n \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;D = \begin{bmatrix} b_0 \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If we have two spaces, space ''v'' which is the original space of the system (''A'', ''B'', ''C'', and ''D''), then we can transform our system into the ''w'' space which is in controllable-canonical form (''A&amp;lt;sub&amp;gt;w&amp;lt;/sub&amp;gt;'', ''B&amp;lt;sub&amp;gt;w&amp;lt;/sub&amp;gt;'', ''C&amp;lt;sub&amp;gt;w&amp;lt;/sub&amp;gt;'', ''D&amp;lt;sub&amp;gt;w&amp;lt;/sub&amp;gt;'') using a transformation matrix ''T&amp;lt;sub&amp;gt;w&amp;lt;/sub&amp;gt;''. We define this transformation matrix as:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;T = \zeta_v \zeta_w^{-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Where &amp;amp;zeta; is the controlability matrix.&lt;br /&gt;
&lt;br /&gt;
Notice that we know beforehand  ''A&amp;lt;sub&amp;gt;w&amp;lt;/sub&amp;gt;'' and ''B&amp;lt;sub&amp;gt;w&amp;lt;/sub&amp;gt;'', since we know both the form of the matrices and the coefficients of the equation (e.g. a linear ODE with constant coefficients or a transfer function).&lt;br /&gt;
&lt;br /&gt;
If we know these two matrices, then we can form &amp;amp;zeta;&amp;lt;sub&amp;gt;w&amp;lt;/sub&amp;gt;. We can then use this matrix to create our transformation matrix.&lt;br /&gt;
&lt;br /&gt;
We will discuss the controllable canonical form later when we discuss state-feedback and closed-loop systems.&lt;br /&gt;
&lt;br /&gt;
=== Phase Variable Form ===&lt;br /&gt;
The '''Phase Variable Form''' is obtained simply by renumbering the phase variables in the opposite order of the controllable canonical form. Thus:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;A = \begin{bmatrix} &lt;br /&gt;
                           0 &amp;amp; 1 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 &amp;amp; 0\\&lt;br /&gt;
                           \vdots &amp;amp; \vdots &amp;amp;\ddots &amp;amp; \vdots &amp;amp; \vdots &amp;amp; \vdots \\&lt;br /&gt;
                           0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 1 &amp;amp; 0 &amp;amp; 0\\&lt;br /&gt;
                           0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 1 &amp;amp; 0\\&lt;br /&gt;
                           0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 &amp;amp; 1\\&lt;br /&gt;
                        -a_n &amp;amp; -a_{n-1} &amp;amp; -a_{n-2} &amp;amp; \cdots &amp;amp; -a_2 &amp;amp; -a_1                                                                   &lt;br /&gt;
       \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B = \begin{bmatrix} 0 \\ 0 \\ \vdots \\ 1 \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;C = \begin{bmatrix} b_n &amp;amp; b_{n-1} &amp;amp; \cdots &amp;amp; b_2 &amp;amp; b_1 \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;D = \begin{bmatrix} b_0 \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Modal Form ==&lt;br /&gt;
&lt;br /&gt;
In this form, the state matrix is a diagonal matrix of its (non-repeated) eigenvalues. The control has a unitary influence on each eigenspace, and the output is a linear combination of the contributions from the eigenspaces (where the weights are the complex residuals at each pole).&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;A = \begin{bmatrix} -p_1 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       0 &amp;amp; -p_2 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; -p_3 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       \vdots &amp;amp; \vdots &amp;amp; \vdots &amp;amp;\ddots &amp;amp; \vdots &amp;amp; \vdots \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; -p_n&lt;br /&gt;
       \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B = \begin{bmatrix} 1 \\ 1 \\ \vdots \\ 1 \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;C = \begin{bmatrix} c_1 &amp;amp; c_2  &amp;amp; \cdots &amp;amp; c_n \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Jordan Form ===&lt;br /&gt;
&lt;br /&gt;
This &amp;quot;almost diagonal&amp;quot; form handles the case where eigenvalues are repeated. The repeated eigenvalues represent a multi-dimensional eigenspace, and so the control only enters the eigenspace once and its integrated through the other states of that small subsystem.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;A = \begin{bmatrix} &lt;br /&gt;
                    -p_1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       0 &amp;amp; -p_1 &amp;amp; 1 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; -p_1 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; 0 &amp;amp; -p_4 &amp;amp; 0 &amp;amp;\cdots &amp;amp; 0 &amp;amp; 0 \\&lt;br /&gt;
                       \vdots &amp;amp; \vdots &amp;amp; \vdots &amp;amp; \vdots &amp;amp; \vdots &amp;amp;\ddots &amp;amp; \vdots &amp;amp; \vdots \\&lt;br /&gt;
                       0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 &amp;amp; -p_n&lt;br /&gt;
       \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;B = \begin{bmatrix} 0 \\ 0 \\ 1 \\ 1 \\ \vdots \\ 1 \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;C = \begin{bmatrix} c_1 &amp;amp; c_2 &amp;amp; \cdots  &amp;amp; c_n \end{bmatrix}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Computing Standard Forms in MATLAB ==&lt;br /&gt;
&lt;br /&gt;
{{Matlab CMD|canon}}&lt;br /&gt;
MATLAB contains a function for automatically transforming a state space equation into a companion (e.g., controllable or observable canonical form) form.&lt;br /&gt;
&lt;br /&gt;
 [Ap, Bp, Cp, Dp, P] = canon(A, B, C, D, 'companion');&lt;br /&gt;
&lt;br /&gt;
{{Matlab CMD|compan}}&lt;br /&gt;
Moving from one companion form to the other usually involves elementary operations on matrices and vectors (e.g., transposes or interchanging rows). Given a vector with the coefficients of a characteristic polynomial, MATLAB can compute a companion form with the coefficients in the top row (there are other 3 possible companion forms not generated by that function)&lt;br /&gt;
&lt;br /&gt;
 compan(P)&lt;br /&gt;
&lt;br /&gt;
Given another vector with the coefficients of a transfer function's numerator polynomial, the &amp;lt;tt&amp;gt;canon&amp;lt;/tt&amp;gt; command can do the same.&lt;br /&gt;
&lt;br /&gt;
 [Ap, Bp, Cp, Dp, P] = canon(tf(Pnum,Pden), 'companion');&lt;br /&gt;
&lt;br /&gt;
To transform a state space equation into a modal (e.g., diagonal) form, the same command can be used.&lt;br /&gt;
&lt;br /&gt;
 [Ap, Bp, Cp, Dp, P] = canon(A, B, C, D, 'modal');&lt;br /&gt;
&lt;br /&gt;
{{Matlab CMD|jordan}}&lt;br /&gt;
However, MATLAB also includes a command to compute the Jordan form of a matrix, which is a modified modal form suited for matrices that have repeated eigenvalues.&lt;br /&gt;
&lt;br /&gt;
 jordan(A)&lt;br /&gt;
&lt;br /&gt;
{{Control Systems/Nav|Eigenvalues and Eigenvectors|MIMO Systems}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Control Systems/Stub}}&lt;/div&gt;</summary>
		<author><name>Zhang3</name></author>
	</entry>
</feed>