Abstract
The traditional eigenstructure assignment method is reconsidered in this paper, shedding light on its nature and some of its properties. The approach is through matrix adjugates which enable a more eloquent decomposition compared to the lumped solution usually obtained through matrix null spaces. Based on the new approach, the admissible pair is formalized. The new approach enables an alternative methodology to the determination of the permissible closed loop eigenvector subspaces and the might be termed the companion input-subspace. Such approach renders the method a formulae-based method as and are now obtained formula-wise as opposed to being extracted out of a lumped solution. Compared to the traditional method, the study reveals information such as and are independently and explicitly determined. Moreover, newly assigned eigenvalues always result in , the input matrix does not influence and a fundamental feature of the open loop characteristic polynomial is exposed. Furthermore, closed loop eigenvectors associated with repeated eigenvalues can be explicitly computed by means of differentiation as opposed to null space determination. A special form of system representation is highlighted, which considerably eases the calculations. The myriad concepts pointed out have been demonstrated and authenticated through carefully selected examples involving real, complex, repeated eigenvalues, and two practical systems of an electrical nature.
1. Introduction
Eigenvalue assignment on its own is the first approach one looks for when it comes to stabilization and control of a system’s growth or decay. To address issues such as shape of response, maintaining system robustness, and insensitivity, a need arises to involve the eigenvectors as well as the eigenvalues in system design.
The first introduction of eigenvalue-eigenvector assignment in shaping system response was given in [1,2]. We are focusing on a particular approach namely the eigenstructure assignment, known earlier as the entire-eigenstructure assignment. We refer the reader to some books on the subject matter [3,4], to a survey [5], in addition to [6].
Early works on eigenstructure assignment were conducted by [1,2]. They identified the freedom offered by state feedback in specifying the closed loop eigenvectors as well as the closed loop eigenvalues. In addition, they provided a characterization of all attainable eigenvectors associated with a given set of eigenvalues. Other early researchers were [7,8,9,10] who provided algorithms for obtaining such attainable sets of eigenvectors. Though state and output feedback eigenstructure assignment cannot change uncontrollable eigenvalues, their associated eigenvectors may be chosen to a certain extent to improve the insensitivity and the robustness of the closed-loop system [11]. In a study by [12], the theory of eigenstructure has been applied to more precisely shape the modes involved in a vibrating system. An extensive flight control example is treated in [6]. A mention must be made of a book [13] regarding the application of eigenstructure method to avionics. There, the author has shown that no more than entries of any eigenvector can be chosen arbitrarily. A PhD thesis by [14] investigated the application of eigenstructure assignment to aircraft problems. Furthermore, textbooks’ treatment of eigenstructure is well-explained in [15,16].
Recent applications to a three-axis dynamic flight motion simulator has been conducted in [17]. The authors employed derivative PD state feedback together with a partial subset of the system eigenstructure. Both resulted in a simplified, more economical, and robust approach compared to the traditional eigenstructure approach. The case of large scale systems has been tackled by [18]. Partial eigenstructure assignment was used to derive a new parametric solution. The solution method involved inverses of lower order matrices, resulting in computational load reduction. In [19], the authors addressed a problem with output feedback, where only partial assignment is possible and a trade-off between sensitivity and stability should be exercised. Eigenstructure assignment methods for vibration cancellation and suppression in large space structures have been reviewed in [20]. In particular, a method known as orthogonal eigenstructure has been found to offer significant simplification of the design task. It also facilitates some experience-based design. An approach based on multibody aircraft dynamics rather than the conventional rigid-body configuration has been studied in [21]. The eigenstructure assignment proves a convenient approach since the differences between both types of aircraft are reflected in the eigenvalues and eigenvectors. Consequently, an implementation of a straightforward inner-loop control law accomplished desired aircraft requirements on damping and stiffness.
The eigenstructure method is now a well-established method for eigenvalue-eigenvector assignment using state and output feedback [6]. It is characterized by a determination of an eligible closed loop eigenvector together with an companion input-vector . Both vectors result from a solution method based on the null space of a certain formulation of the feedback used. In its most simple form, the lumped solution is the null space solution of an augmented matrix. Typically, the traditional eigenstructure method gives a lumped solution in the sense that both and are not independently obtained, but have be extracted out of a null space solution (an vector), where is extracted as the top entries and as the bottom entries.
As a numerical value, the null space solution overshadows (conceals) the nature and structure of both and even after decomposing the solution into its constituent parts. Any additional structural information is therefore welcomed as it provides further insight together with additional characterization. Both help in improving intuition, in easing calculations, and in reducing problem dimensionality throughout both analysis and design stages. This task is undertaken by our treatment utilizing the concept of matrix adjugates. We shall interchangeably refer to our method as either the adjugate method or the admissible pair method, while referring to the traditional method as the null space method.
What distinguishes our approach is the fact that the adjugate of a matrix is unique leading to a naturally scaled admissible pair [22,23,24,25]. This is not the case with the usual eigenstructure method as the null space may differ in the values of its entries depending on the method used to determine it. MATLAB provides two approaches to determine the null space which give different answers in terms of the resulting numbers, though both are eligible and lie within the same solution space. From that perspective, our method provides standardization through formula based determination of both and . Such an approach reduces dimensionality and in the theoretical sense enables a form of parallelism.
The adjugate method deals with lower dimensional matrices. It involves matrix manipulation of order , in comparison to manipulation of matrices required by the null space method. The adjugate method accentuates the importance of the open loop characteristic polynomial overshadowed by many eigenvalue assignment methods. The role of is also demystified when adopting the admissible pair approach in the sense that it does not influence . This is not apparent when using the null-space method.
The adjugate method is convenient whenever dealing with matrices of special forms such as the companion form adopted by MATLAB as its default method for control system representation. It turns out that such a form together with the adjugate method provides direct immediate information related to the open loop system such as: stability, the characteristic polynomial, left and right eigenvectors, the derivative of with respect to . Most important, this form provides direct formula-based determination of the closed loop eigenvectors enhancing the explicitness of the adjugate method when it comes to distinct and repeatedly assigned eigenvalues together with their associated eigenvectors.
We begin our study in Section 2 by briefing the eigenstructure involvement in shaping a system time response through left and right eigenvectors. We then outline two convenient approaches to the solution process through an admissible pair in Section 3. We pay a visit to the determination of left and right eigenvectors from the matrix adjugate point of view in Section 4. The core of our study is a formulation of the admissible pair through independent and explicit formula-based relations in Section 5; together with insightful relevant remarks. The tools are matrix adjugates and the open loop characteristic polynomial. Matrix adjugates efficiently lend themselves to a companion form adopted by MATLAB. Such a form simplifies many issues related to open loop and closed loop eigenvector determination; being formalized in Section 6. Extending the null space and a need for repetitive differentiation of the admissible pairs related to identical eigenvalues is proved in Section 7 and shown to be systematic and straightforward. In case of blending between the adjugate and the null space method regarding mixed calculations, a conversion between the two is essential as discussed in Section 8. Our investigation concludes with four examples; fully worked out to demonstrate and validate a number of conceptions introduced throughout the manuscript. The calculation and simulation tool is MATLAB.
Broadly, we summarize the contribution and novelty of our study as follows. The details are within the main body of the manuscript. All serve as advantageous features if compared to the traditional eigenstructure method.
- Contributing independent determination of the two main parameters , together with explicit determination of , rendering our method a formula-based method (Section 5).
- A decoupled computation of the pair , thus enabling parallelism.
- Highlighting an important role played by the usually overlooked open loop characteristic polynomial when it comes to closed loop eigenvalue assignment.
- Presenting a particular matrix form which provides direct information regarding system structure, stability, and many other aspects of systems. Such form significantly eases the eigenvector assignment process (Section 6).
- Providing systematic determination of the closed loop generalized eigenvectors when dealing with repeated eigenvalue assignment (Section 7).
- Manipulating lower order matrices using the adjugate of a matrix.
- Presenting three fully worked out examples to demonstrate the convenience of the adjugate method. Theory related to a commonly encountered electronic circuit is also treated in Section 6. In addition, a practical application concerning a realistic system is presented in Example 4. It concerns a well-known industrial machine, namely the speed control of an armature control DC motor (Section 9).
2. The Eigenstructure Method in Brief
Since the location of eigenvalues alone do not specify a system response completely, a need arises to involve the associated eigenvectors. In doing so, one exercises additional control over the behavior of the system. An established fact concerning multi-input systems, i.e., , is that the same set of eigenvalues can be specified through non-unique feedback matrices. Such non-unique matrices result in markedly unalike responses of a system. This is due to the differences in the eigenvectors assigned leading to systems of diversified structure and hence yielding different responses.
Regarding a simplified system response, things become clearer and informative when examining the forced time response of a linear time-invariant system. It is given by [14].
where , , and stand for a system eigenvalue together with its right and left associated eigenvectors. The role of (1) is discussed further in Example 1 and in full within Appendix A.
Scrutinizing (1), the eigenvalues determine the rate of decay or growth of the time response while the right eigenvectors prescribe the distribution of the modes. Regarding the left eigenvectors and since is a multiplying scalar, it clearly determines the amount each mode participates to the response in both the transient (exemplified by ) and the steady state (exemplified by ).
Moreover, occasionally can be zero with some initial conditions, thus influencing the transient response. When the system is uncontrollable, the impact of the left eigenvectors is even more pronounced and more direct when compared with the impact of the right eigenvectors. This is because is zero irrespective of when is a left eigenvector associated with an uncontrollable eigenvalue, thus, inhibiting the effect of .
Such recognition of the importance of left and right eigenvectors in shaping the dynamic response as exhibited by (1) and the freedom offered in their selection in the multi-input case have justified them a viable approach to systems in analysis and in design in both the transient and the steady state. Essentially, the purpose of eigenstructure control is the utilization of feedback to arrive at a suitable set of a system eigenvalues as well as their associated eigenvectors.
Such utilization is useful in optimizing the contribution of such system modes in the overall response, in organizing and coordinating mode distribution, and in specific cases, as a means of completely eliminating particular contributions if so desired.
3. Adoption of Two Convenient Forms to Determine the Admissible Pairs
The system and controller under considerations are given by
The closed loop system is therefore,
The eigenstructure assignment method involves a feedback matrix which assigns eigenvalues using the pair , where is the associated closed loop eigenvector and is the associated companion input-vector.
As is a closed loop eigenvector pertinent to the eigenvalue , the following holds for any eigenvalue of algebraic multiplicity .
Two convenient rearrangements of (5) are to be used in our investigation. They are:
- (i)
- The null-space method [26] associated with the traditional eigenstructure method [7,8,16], where the system is expressed as.
In which case [27,28,29,30]:
- (ii)
- The adjugate method where the system is expressed as
Using either rearrangement (7), or (8), the feedback matrix is calculated as below. Collectively, considering the assigned eigenvalues such that all are independent [6,9,15],
A note on the use of and not as in many books and research papers. The reason is that the former is the only representation which enables a reformulation as in (8). This is needed to end up with the input matrix not preceded by a negative sign, together with an open loop characteristic polynomial as which is always a monic polynomial irrespective of the system order being even or odd. This is a matter of convenience, minimizing negative signs throughout representations and human errors throughout manipulation.
The solutions of (7) are in general and where is a scalar multiplier. However, standardizing their values somehow is desirable, thus avoiding non-unique choices for eigenvector entries. This is helpful in our investigation; it is accomplished through the utilization of matrix adjugates which are unique. This renders our approach more appealing. Besides, matrix adjugates enable independent determination of the two solutions and , in contrast to the null space method.
4. Right and Left Eigenvectors Revisited in the Light of Matrix Adjugates
The adjugate of a matrix is the transpose of its cofactor matrix [16,22,23,24,25]. Such name will be used instead of the adjoint which is widely used in many contemporary books on matrix theory and linear algebra. The old name “adjoint” nowadays refers to a matrix associated with the adjoint operator, where the adjoint is the conjugate transpose (not the transpose) of the cofactor matrix.
Matrix adjugates and eigenvectors are fundamental in our treatment of the subject matter. Mainly, we shall deal with the adjugate of and not of unless otherwise stated.
Definition 1.
The adjugateof anmatrixis defined as
It is unique and can be evaluated as the transpose of the matrix cofactors of. Additional properties are scattered in almost any book on matrix theory [16,22,23,24,25].
Traditionally, following the definition of right () and left () eigenvectors of matrix as,
or collectively as,
, , and .
Where post-multiplying the second relationship in (12) by ,
Equation (13) shows that and are commutative. Since matrices that commute with a diagonal matrix of distinct elements are themselves diagonal, we conclude that is diagonal, say [18]. A proper ordering of the and columns ensures that. Furthermore, with proper scaling of , one can make . In which case, . That is: the transpose of the left eigenvector matrix is the inverse of a properly scaled right eigenvector matrix. Conveniently, left eigenvectors are usually treated as row vectors .
In light of the adjugate method, an alternative approach to the determination of left and right eigenvectors is the following.
Let be an eigenvalue of , then is singular of zero determinant. Using (10),
When (10) is expressed as,
A column of is a right eigenvectors of .
When using the definition of a left eigenvector as in (11), i.e., , and comparing it with (14) expressed as,
A transposed left eigenvector () is a row of .
N.B.: . Thus, a left eigenvector is a right eigenvector of . It is a column of which is a column of [23,24,25].
Whenever is nonsingular as is the case when assigning an eigenvalue not that of , the adjugate of gives closed loop eigenvectors after post-multiplying by , as will be proved below in Section 5.
5. Formula-Based Approach to the Determination of the Admissible Pair
The null space method [16,24,26] is a general purpose one; however, it is computationally the most demanding as it manipulates matrices of dimension . Besides, it is not a direct method in the sense of not explicitly giving and , neither a formula-based method.
Averting such shortcomings is therefore favorable. Our approach based on matrix adjugates fulfills such ambition as proved below.
Proposition 1.
Fornewly assigned (i.e., not already an eigenvalue of),is given by the open loop characteristic polynomial evaluated at the assigned eigenvalue. Furthermore, the associated closed loop eigenvectorsare given by
Proof.
Using (6)
The solution of (15) is, therefore, given by the null space of . It remains the same solution as that of another matrix obtained by pre- multiplying (15) by any nonsingular matrix [24,27,28]. Since is nonsingular, its inverse is also nonsingular and therefore it qualifies as the pre-multiplying matrix, i.e., (15) has the same solution as the following system of equations [27,28].
which has the same solution as that of
By direct substitution,
The most simple solution is when , giving
and
where , are the coefficients of the open loop characteristic polynomial.
Both as in (20)–(21) are fundamental in our study and conveniently named an admissible pair.
Regarding the closed loop eigenvector , it is most simple, formula-based, taken directly without any concern to elaborate scaling. Regarding intuition, is justifiably interpreted as the open loop characteristic polynomial evaluated at the eigenvalue to be assigned. Besides, is also formula-based and is determined independently of . Note that when , is an column matrix.
Considerable use of (20) and (21) is expected in our treatment of the subject matter with regard to outlining system structure and easing numerical determinations. In addition, MATLAB is used to facilitate all the calculations needed through its readily available functions. We comment on the nature of the two functions, though we adhere to the use of one of them for comparison purposes. □
Remark 1.
- (i)
- Annonzero square matrixcan have any rank betweenand, but the rank of its adjugate is either, or.
Proof.
If is nonsingular, its adjugate is nonsingular, thus of rank .
If has rank , the adjugate is identically a zero matrix as stated in [23,24].
We are left with of rank , which is singular, having a nontrivial null space given by the adjugate. Invoking the following standard theory in linear algebra [23,24]:
In our case, , hence,
The importance of this remark is that the adjugate method can only give at most a single nonzero independent column when a matrix has rank as is the case in many assignment problems concerning eigenvalue reassignment or uncontrollable systems.
This implies that any reassigned eigenvalue using the adjugate method cannot give more than a single closed loop eigenvector even when . □
- (ii)
- Ifis not an eigenvalue ofi.e., newly assigned, thenandcannot be zero andhas rank equal to.
Proof.
Since is not an eigenvalue of A, is nonsingular, implying is non-zero. Since then is non-zero.
Furthermore, using properties of matrix adjugates, is nonsingular having rank . Hence,
Therefore, the closed loop eigenvectors are nonzero and are in number. □
- (iii)
- Abiding by our selection of the admissible pair as in (20) and (21),does not influence zi.
Proof.
Evident from ; obviously independent of .
This fact could not have been thought of while adhering to the null space method. The reason is that the solution given by that method is a lumped solution containing both and where does not address either or as explicitly as the adjugate method. By a lumped solution, we mean an vector where is extracted as the top components and as the bottom components. □
- (iv)
- A Procedure for Shaping the Closed Loop Eigenvectors.
Having settled on desired ratios between no more than components of the closed loop eigenvectors [13], determine a matrix. To do that, obtain a square matrix using the corresponding rows from the matrix initially determined.
To illustrate, consider a two-input system i.e., . To favor a ratio of between the first and third components of a shaped closed loop eigenvector, let
such that is nonsingular. Then, solve for a matrix where
Finally, use as the shaped closed loop eigenvector where
Bear in mind, you only have arbitrary control over closed loop components. Requiring a shaping of more than entries invalidates the method and ends up with a non-square matrix.
6. Instant Matrix Adjugate Related to a Companion Form
The idea is to show how a particular companion form yields direct information related to our study. This form is adopted by MATLAB [31] to obtain a state space representation of linear systems of a form known as a companion form (shown in (25) below).
This form arises out of modelling certain systems such as a series RLC circuit driven by a voltage source taking the inductor current and capacitor voltage, respectively, as the two states and [32]. As a practical application of such a circuit, it may represent the smoothing and filtering stage of a rectifier circuit [31]. A model of such a circuit will be considered in Section 6.1. followed by the relevant analysis.
This form gives direct information to the following:
- Regarding stability: The system is unstable whenever at least a coefficient of positive sign exists in the first row.
- The determinant of is readily available given by .
- The open loop characteristic polynomial coefficients excluding the highest power (which is always 1) are explicitly present as the negated numbers in the first row of ; thus easing the determination of .
- A right open loop eigenvector is a nonzero column of the adjugate. A closed loop eigenvector is obtained after post-multiplying the adjugate matrix by .
- A left open loop eigenvector is the transpose of a nonzero row of the adjugate.
- The derivative of is given by trace () [23,24,25], thus, avoiding differentiation when determining where the derivative is needed in the evaluation of the first generalized eigenvector as derived in Section 7.
Assuming a system matrix of no particular form obtained after modeling a general system. To get the companion matrix form, MATLAB, requires the system to be specified through the coefficients of its characteristic polynomial. To attain that, MATLAB can be used to obtain the characteristic polynomial using , yielding for a third order system.
The coefficients of the new companion form are generated using . The MATLAB and matrices assume the two forms shown below in (25). Note that, is forced to attain the form given in (25) by the nature of the similarity transformation used. For a third order system, the companion form is strictly the following.
It follows that
When is an eigenvalue of , is singular. Therefore, all columns of the adjugate are linearly dependent as proved in Remark 1, Section 5. Using (26), the same eigenvector, but of different numeric values is obtained for the same open loop eigenvalue. Being linearly dependent, the columns representing the eigenvectors are scalar multiples of each other. So choose a convenient one, say . In addition, as explained in Section 4, the rows of the adjugate matrix give the transposed left open loop eigenvectors. Once more, choose a convenient row such as . Convenience may be according to simplicity, minimum number of arithmetic operations, and/or avoiding mixtures of positive and negative signs (for memorizing purposes).
Beware. Some matrices may give zero columns. These cannot be used; one has to select another nonzero column in this case. In this regard is always nonzero irrespective of . It is also the simplest. The information above only applies to open loop systems.
When is not an eigenvalue of , i.e., newly assigned, all columns of are linearly independent and (26) is nonsingular. The corresponding closed loop eigenvector is the one ensuing after post-multiplying by according to (20). With such form as in (25), the closed loop eigenvector is therefore dictated by the special simple form of the input matrix. It is given by
acting as a perfect explicit matrix formula for . The associated nonzero is
For higher order matrices, symbolic MATLAB can be used to determine the matrix adjugate after declaring (may use ) and λ (may use lam) as symbolic variables. For example, for a third order system, use MATLAB to execute.
≫syms lam a1 a2 a3; A = compan([1,a1,a2,a3]); I = eye(size(A)); Aj = adjoint(lam*I −A)
6.1. A Smoothing and Filtering Stage in a Rectifier Circuit
As a practical application, we first model a series circuit in the state space. This smoothing circuit follows the rectification stage and precedes the regulation stage [32,33]. The series circuit consists of a voltage source together with a resistance, an inductance, and a capacitance, all connected in series. The states are chosen to represent the inductor current and the capacitor voltage respectively. The output of the circuit is the capacitor voltage. It can be easily shown that,
In matrix form:
The circuit is not completely in the exact MATLAB form, so we use the following similarity transformation to put it in that form. Let , . The transformed system is now given by
In matrix form,
or,
Equation (35) is not completely in the standard companion form as in (25). The closed loop eigenvectors are now given by
To conform with the form of as in (27), both and in (36) are multiplied by , yielding,
With this form; having specified two eigenvalues and together with their associated and , the feedback matrix is systematically determined as
In essence, when having this form, there is no need to resort to matrix adjugates, nor to null spaces to determine . In addition, since the open loop characteristic polynomial is readily available through the entries in the first row of , is easily determined using (21). Such systematic and explicit determination of the admissible pair stemmed from the use of the matrix adjugate approach and cannot be directly attributed to the traditional method.
7. Derivations for the Case of Repeated Eigenvalues
A modification is needed for the general case of assignment of repeated (identical) eigenvalues of algebraic multiplicity [34]. In this case, all eigenvectors are generated using
Determination of generalized eigenvectors using the null space method requires:
First solving for , then to obtain solve,
The solution pattern repeats for the remaining generalized eigenvectors. Note that a is enforced in the solution as imposed by the formulation in (39).
Essentially, once a method of solution determines the null space, the solution is normalized by dividing it by the nonzero last element of that solution to force it 1. Doing so, the final normalized solution contains and .
Using MATLAB, the function does this by default.
In a quest of a formula-based solutions, an alternative method is to determine as formula-based expressions. This will be derived below. Assume a repeated eigenvalue.
Differentiating both sides of (41) with respect to and rearranging.
Using (39) to get the generalized eigenvector ,
Matching (42) and (43) gives
Repeating the same procedure for the determination of , one gets
Using (39),
Matching (45) and (46) gives,
Generally,
The formula based approach above can be determined symbolically using MATLAB [35] as Example 3 demonstrates. It is conveniently used together with the adjugate method.
The negative signs in (44) to (48) can both be dispensed with without affecting the final determination of . When making consistent sign changes within any admissible pair , remains invariant, i.e.,
8. MATLAB Solutions in Relation to Those Given by the Adjugate Method
In MATLAB, the commands and can be used to solve (15). The function [36] involves a normalization process when determining the null space vectors. By default, it gives answers of unity Euclidian norms. When comparing solutions due to different methods, care must be exercised when using this option. It is not used in our calculations. The following option by MATLAB suffices as it agrees with hand calculations using the row reduced echelon form () method [30].
The MATLAB function gives answers normalized such that the bottom matrix of the solution is an identity matrix , i.e., the solution given by this option is forced to assume the following form which is a standard procedure in linear algebra when determining null spaces of matrices using the method. The subscript refers to MATLAB solutions using .
Relating the answers given by the adjugate method as in (20) and (21) to that given by MATLAB second option goes like this.
Relating the solution in (50) to those given by (20) and (21) represented as block matrices,
Thus, obtaining the following conversions between the two methods.
Equation (52) should be consulted both ways when employing a mixture of the two methods as in Example 3, i.e., a need to do conversion using (52).
9. Examples
Example 1
The case of an invertible B matrix offers maximum control over the selection of the closed loop eigenvectors. Due to the nonsingularity of , either components of the closed loop right eigenvectors or all components of the closed loop left eigenvectors can be arbitrarily assigned. To see this, consider the right eigenvectors given by an matrix. Thus,
Since is square and invertible, a solution for always exists; given by
indicating that both and can be arbitrarily assigned. To assign the left eigenvectors, use to get
Based on the theory above, consider the two-input system below.
As (56) tells, the outputs are the states and . The system is meant to be simple enough to demonstrate the theory presented in Section 2. It can be easily solved even by hand calculation. The detailed solution is presented in Appendix A.
The idea is to show how preserving the same system eigenvalues, yet changing the eigenvectors, can modify the system time response, both in the transient and in the steady state.
The right-eigenvector matrix associated with the and open loop eigenvalues is
Following the theory presented in Appendix A, a substitution of these values for and together with and in (1) is done. In order to compare the ensuing calculations with what MATLAB graphical solution gives, each input is solely activated. MATLAB function [33] gives a time record of each output due to an excitation of a single input. The time history of the responses is shown in Figure 1. As apparent from Figure 1, and due to the first input are not in harmony in the sense that increases positively and increases negatively: an undesirable case in certain applications of mechanical and electrical systems.
Figure 1.
Open loop system unit-step time response.
For the two states, the reader can easily compare the initial values and steady values as given by Figure 1 with those obtained from the state time solutions given in Appendix A. This is done by substituting and , respectively. A perfect match.
The next step is to control the system preserving the eigenvalues and but changing the closed loop eigenvectors to a new arbitrary one, say, . This results in a left-eigenvector matrix.
Using either (54) or (55)
as expected. The closed loop system matrix has and as closed loop eigenvalues, but now with an alternative set of associated eigenvectors; those given by .
The same calculations are repeated for the closed loop system using the new and . The calculations are presented at the end of Appendix A. MATLAB is used once more to do the simulation for the closed loop system. The time response is presented in Figure 2, which shows a different time response resulting from the change in the eigenvectors (note that the eigenvalues are invariant). Due to the first input, both and are now increasing in harmony in contrast to their behavior due to the original set of open loop eigenvectors, a virtue attributed to the new set of closed loop eigenvectors. This value is attributed to the use of eigenstructure assignment.
Figure 2.
Closed loop system unit-step response due to an alternative set of eigenvectors.
The open loop eigenvalues are retained.
Example 2
Munro, ref. [37] considered a linearized time-scaled open loop unstable chemical reactor given by
In our case, for the sake of demonstration, it is desired to assign the following four eigenvalues: −3 ± 8.5i, −0.7, and −6. These values are an approximation to the eigenvalues of the matrix of a model used in [37].
Throughout the examples, 5 decimal significant digits are displayed as given by MATLAB format short. To display 15 digits, format long can be used. With both formats, MATLAB employs number rounding. By default, it uses double precision arithmetic.
Using (20), which is related to the adjugate method.
Considering the second eigenvector within to get , , , and , i.e.,
Hence,
According to (21), the accompanying is
Hence,
To simplify arithmetic, one can employ the real and imaginary parts of the pair and avoid complex number manipulation. To assign , real number arithmetic is only used in the determination of as justified below.
For a general fourth order system, to simplify matters; parts related to the complex eigenvalues and eigenvectors are only accentuated. Let and be associated with a generic eigenvalue say , then,
i.e., we can avoid computations involving complex numbers and only involve real number arithmetic since , , and are all real.
To assign , one may use the first closed loop eigenvector, i.e., is given by
With associated
To assign . For the sake of demonstration, one may use the second closed loop eigenvector associated with , i.e., is given by
With associated
Using (9),
Executing the MATLAB command “ ” verifies the assignment of the four eigenvalues.
Suppose now that the eigenvectors associated with the two eigenvalues and are to be shaped. The ratio of the first to the fourth entries of the shaped closed loop eigenvector pertinent to −0.7 is a ratio of 2:1. The ratio of the second to the third entries of the shaped closed loop eigenvector pertinent to −6 is a ratio of 3:5. Relevant is remark iv in Section 5.
Using (20), the two eigenvectors associated with are
then is calculated as follows (pick first and fourth rows of ).
Consequently,
The two eigenvectors associated with are
then is calculated as follows (pick second and third rows of ).
Finally,
Using (9),
This is a different from that in (72), assigning the same eigenvalues, but different eigenvectors. The combined influence of the old set of eigenvalues with the newly shaped eigenvectors will yield a different time response.
Example 3
Consider the unstable system.
It is required to assign , , and . The open loop characteristic polynomial is.
To assign the two eigenvalues , calculations for one eigenvalue say suffices. Using (20).
Hence,
Using (21),
To assign and
Since is a repeated eigenvalue, one way to determine and is using the first order derivative of both and with respect to as given by (44). MATLAB was used to do that symbolically. In which case, the closed loop eigenvectors in terms of a general are given by.
To validate (87), as already obtained using the adjugate method, using (87) to determine where is the first generalized eigenvector pertinent to . Hence, use (44) to get the first derivative.
Thus, using (9),
Once more, for the sake of exercise and for checking the answer through an alternative approach, the eigenvectors associated with are now determined using the traditional null space method.
Having obtained using the adjugate method, we now use (52) bearing in mind that and
Equation (91) is now used to determine the null space solution for the generalized eigenvector using (40). If , the solution vector is divided by , i.e.,
Using MATLAB ,
Two solutions are obtained. The one ending with a nonzero element for is adopted for . It turns out that already equals , so no need for normalization. Moreover, the other solution given by the first column is . It cannot be used as it results in a singular eigenvector matrix having no inverse. Hence,
The same answer as in (90) as it should be since the system is single input and controllable.
Addendum
To assign four repeated eigenvalues on the imaginary axis, they should have the form and . This is due to the conjugacy of the eigenvalues of real-number matrices. For the sake of simplicity, let the eigenvalues be i, i, −i, and –i. In this case, the adjugate method requires determination of an eigenvector and its derivative for one eigenvalue say i. Utilizing their conjugates, the eigenvectors for the –i eigenvalues are determined. Using the adjugate method together with MATLAB with
and
The remaining two eigenvectors are and ,where the bar indicates complex conjugacy.
The characteristic polynomial and its derivative at are needed, where
Similarly,
Hence, when = 1
resulting in the assignment of i, i, −i, −i as closed loop eigenvalues on the imaginary axis.
In addition, a well-known and interesting problem in discrete systems design is that of dead-beat control, where all eigenvalues are located at the origin. In such case of repeated eigenvalue assignment, we need to differentiate the eigenvector as determined by the adjugate method three times and evaluating all eigenvectors at . Thus, the calculations are considerably simplified. The same is done to the open loop characteristic polynomial and three of its derivatives at to get .
Doing so, we get
Example 4
In this example we consider a model of a practical electrical system; that of a DC motor. DC motors are widely used in control applications such as robotics, tape drives and autotronics. The motor has many advantages, among which are high startup torque and fast response times to starting, stopping, reversing, and acceleration. In addition, to easy control of speed with moderate voltage or current inputs.
Almost any book on control systems goes through the modeling of an armature control DC motor to a certain degree of complexity [16,33,38]. We shall refer to a research paper [38] which tackles an armature controlled DC motor used in robotics. However, the model in that paper has been represented by a block diagram model. We take the liberty and derive a state space model of that motor. To do that, we replace by its equivalent , by for convenience, and adopt the following state variables assignment: for the angular displacement (), for the angular velocity (), and for the armature current (). The output is the angular velocity . The armature voltage is and the load disturbance is .
We obtain the following state space model. It is a two-input, single output model.
In matrix form,
where is the motor moment of inertia, is viscous friction coefficient, is motor constant, is back electromotive force coefficient, and are the armature resistance and inductance, respectively. Numerical values for these coefficients are not given in [38]. Therefore, for the sake of demonstration we use the following values which may pertain to an existing generic DC motor: (source: directindustory.com, 2011). They are: .
Substituting the parameters listed above in (100), we get
The open loop eigenvalues are . As we are concentrating on the speed control of such a motor, with no intention to control the position of the motor, we seek a controller which retains the zero eigenvalue. To speed up the system we choose closed loop eigenvalues which are almost two-folds of the open loop ones, say . Using the adjugate method with eigenvector shaping, the procedure followed in Example 2 and in Example 3 is repeated.
In our design, a closed loop eigenvector together with are associated with . The other two eigenvectors associated with and are shaped with ratios and between the second and third entries of and , respectively.
To avoid any unnecessary repetition, the calculations needed are the same as those carried out in Example 2 and Example 3. We therefore content ourselves with the following final results.
Consequently,
Yielding
The steady state value due to a step input is [33],
were and are steady state values. and as defined in (114) and (115). The armature voltage is and is the disturbing value.
MATLAB function [33] gives a time record of the outputs due to an excitation of a single input at a time. The time history of the motor output is shown in Figure 3.
Figure 3.
Open loop motor speed. Input 1 is armature voltage and input 2 is a step disturbance.
The open loop response is depicted in Figure 3, which shows the motor steady state speed reaching 94 rpm due to a 50 V armature voltage and −9.4 rpm due to a unit step disturbance. Both reached within a time interval of about 1.2 s. Using (115), the exact calculated steady state values are 94.2026 rpm and −9.4239 rpm, respectively, where is now obtained from (111).
The closed loop system response as a result of as in (113) is depicted in Figure 4. It shows the motor steady state speed reaching 337 rpm due to a 50 V armature voltage and −8.8 rpm due to a unit step disturbance. Both were reached within a time interval of about 0.6 s. This gives a clear indication of the effect of feedback in increasing the motor speed and in reducing the time to reach the steady state. Using (115), the exact calculated steady state values are 338.0783 rpm and −8.8235 rpm, respectively.
Figure 4.
Closed loop motor speed. Input 1 is armature voltage and input 2 is step disturbance.
The example undoubtedly demonstrates the role played by the eigenvectors in shaping the system response. Every choice of the ratios of the closed loop eigenvector entries makes a difference on the final speed and the settling time. Experimenting with alternatives values for the ratios proves that. Note that the feedback matrix , the settling time, and the speed will differ every time a ratio is changed, though the closed loop eigenvalues remain invariant at . That is due to the influence of the closed loop eigenvectors in shaping the system response both in the transient and the steady state.
The program used to do the calculations and the simulations acquired for Example 4 are listed in Appendix B. It is provided for validating the results and for readers’ experimentation with alternative ratios of eigenvectors entries.
10. Conclusions
The null space method is a general purpose method, though it is computationally more demanding compared to the adjugate method. Moreover, it is not a direct method for the individual determination of the admissible pair and .
The adjugate method proves a worthy method for exposing internal structures within the eigenstructure assignment problem. With regard to the lumped solution as given by traditional methods, the adjugate method offers decoupled solutions for each component of the admissible pair , which is considered advantageous. A new feature is highlighted and emphasized regarding a fundamental role played by the open loop characteristic polynomial. This point is overshadowed by other methods related to eigenstructure as well as to methods of eigenvalue assignment in general.
Additional insight has been gained by the use of the adjugate method. For the case of assigning a new eigenvalue not that of : has been proved to be nonzero and not influenced by the system input matrix , regardless of a system being controllable or otherwise.
The adjugate method attests itself as a formula-based method. It is explicit and independently determines both and . This is considered an advantage since closed forms methods are pedagogically favorable. Such independent determination of the admissible pair can be looked upon as a form of parallelism which is always desirable.
Special forms ease calculations both in analysis and in design through their readily available information such as the characteristic polynomial and the stability of the open loop system in certain cases. Besides, the columns and rows of the adjugate of represent the right and left eigenvectors and its trace determines the derivative of the characteristic polynomial with respect to . All such features ease analysis and design.
The four examples presented have illustrated the various concepts and notions with the help of MATLAB which proves an admirable software when it comes to control theory studies. MATLAB proves very helpful when it comes to complex number calculations and visualization in addition to its symbolic calculations.
As for shortcomings of the adjugate method, numerical issues may arise as the dimensions of the system get higher; however, this shortcoming also applies to the traditional method. In this case, more numerically efficient methods such as the Faddeev–Leverrier’s algorithm for determining the matrix adjugate may be considered [39]. Special matrix forms other than companion forms are also worth considering in forthcoming studies.
Future works should consider methods which simplify assignment issues related to partial eigenstructure assignment for both cases of controllable and uncontrollable systems, for both single-input and multi-input systems.
Funding
This research received no external funding.
Acknowledgments
The author acknowledges that this research has been carried out while on sabbatical leave (2021–2022 academic year) from the University of Jordan, Amman, Jordan.
Conflicts of Interest
The author declares no conflict of interest.
Nomenclature
| A | System matrix |
| B | Input matrix |
| Signifies the system input | |
| n | Number of states |
| m | Number of inputs |
| ai | General polynomial coefficient |
| vi | Signifies a right eigenvector in general |
| qi | Signifies a left eigenvector in general |
| λ | Signifies an eigenvalue in general |
| Signifies a closed loop eigenvector | |
| Signifies a closed loop eigenvector companion | |
| K | Feedback matrix |
| i | Complex number |
| Complex conjugate | |
| Real | Real part of a complex number |
| Imag | Imaginary part of a complex number |
| Λ | Signifies an upper triangular matrix |
| Adj | Adjugate of a matrix |
| Null | Null space of a matrix |
| Determinant of a matrix | |
| Equals to | |
| rank | Signifies rank of a matrix |
| dim | Signifies dimension of a matrix |
Appendix A. See Example 1
For a linear time invariant system represented by
which shows the role of the left eigenvectors regarding the initial condition in the transient response. Generally, . The forced response is given by
Or, generally,
which shows the role of the left eigenvectors regarding the inputs in the steady state response.
Due to step inputs of amplitude .
For the case of the open loop system considered in example 1, where and , , and
due to the first unit step input.
which shows the role of the left eigenvectors in row multiplying the input.
due to the second unit step input.
For the case of the closed loop system considered in example 1, where and are preserved, but the right eigenvectors are changed to
due to the first unit step input.
which shows the role of the left eigenvectors in row multiplying the input.
due to the second unit step input.
Appendix B. See Example 4
% Example on speed control of a DC motor with disturbing input.
J = 0.0221; b = 0.002953; k = 0.516; R = 2.581; L = 0.0281; % Motor parameters.
% Obtaining system matrices A, B, C, and D.
A = [0 1 0;0 −b/J k/J;0 −k/L −R/L], I = eye(size(A));
B = [0 0;0 −1/J;1/L 0], C = [0,1,0]; D = 0; U = 50; d = 1;
% To determine the feedback controller using the adjugate method.
w1 = [1;0;0], z1 = [0;0], % To assign lambd1 = 0
lam2 = −10; w22 = adj(lam2*I − A)*B, m2 = inv(w22(2:3,:))*[2;−1], % To assign lambd2 = −10
w2 = w22*m2, z2 = polyval(poly(A),lam2)*m2
lam3 = −200; w32 = adj(lam3*I − A)*B,m3 = inv(w32(2:3,:))*[1;−1], % To assign lambd3 = −200
w3 = w32*m3, z3 = polyval(poly(A),lam3)*m3
Kj = [z1 z2 z3]*inv([w1 w2 w3]),% The feedback matrix. Kj changes with other ratios. Try.
Aj = A + B*Kj; % The closed loop system matrix.
Bv = [U*B(:,1), d*B(:,2)]; % Introducing the two input values.
figure(4), step(Aj,Bv,C,D),grid, % The output step response. This is line 17
xss = −inv(Aj(2:3,2:3))*Bv(2:3,:); % Steady state values for x2 and x3. This is line 18
yss = [xss(1,1), xss(1,2)], % Steady state motor speed due to U and d.
% Important Remark: For the open loop response, Replace Aj by A in lines 17–18.
References
- Moore, B.C. On the Flexibility Offered by State Feedback in Multivariable Systems Beyond Closed Loop Eigenvalue Assignment. IEEE Trans. Autom. Control 1976, 21, 689–692. [Google Scholar] [CrossRef]
- Klein, G.; Moore, B.C. Eigenvalue Generalized eigenvector assignment with state feedback. IEEE Trans. Autom. Control 1977, 22, 140–141. [Google Scholar] [CrossRef]
- Liu, G.P.; Patton, R.J. Eigenstructure Assignment for Control System Design; John Wiley & Sons: New York, NY, USA, 1998. [Google Scholar]
- Liu, G.P.; Patton, R.J. Eigenstructure Assignment Toolbox for Use with MATLAB; Pacilantic International Ltd.: Oxford, UK, 1999. [Google Scholar]
- White, B.A. Eigenstructure Assignment: A Survey. Proc. Inst. Mech. Eng. 1995, 209, 1–11. [Google Scholar] [CrossRef]
- Andry, A.N.; Shapiro, E.Y.; Chung, J.C. Eigenstructure assignment for linear systems. IEEE Trans. Aerosp. Electron. Syst. 1983, 19, 711–728. [Google Scholar] [CrossRef]
- Porter, B.; D’Azzo, J.J. Algorithm for the Synthesis of State-Feedback Regulators by Entire Eigenstructure Assignment. Electron. Lett. 1977, 13, 230–231. [Google Scholar] [CrossRef]
- Porter, B. Eigenvalue assignment in linear multivariable systems by output feedback. Int. J. Control 1977, 25, 483–490. [Google Scholar] [CrossRef]
- Porter, B.; D’Azzo, J.J. Closed loop eigenstructure assignment by state feedback in multivariable linear systems. Int. J. Control 1978, 27, 487–492. [Google Scholar] [CrossRef]
- Porter, B.; D’Azzo, J.J. Algorithm for closed loop eigenstructure assignment by state feedback in multivariable linear systems. Int. J. Control 1978, 27, 943–947. [Google Scholar] [CrossRef]
- Kautsky, J.; Nichols, N.; van Dooren, D.P. Robust Pole Assignment in Linear State Feedback. Int. J. Control 1985, 41, 1129–1155. [Google Scholar] [CrossRef]
- Inman, D.J. Vibration with Control; John Wiley & Sons Ltd.: Chichester, UK, 2006. [Google Scholar]
- Srinathkumar, S. Eigenstructure Control Algorithms: Application to Aircraft/Rotorcraft Handling Qualities Design; The Institution of Engineering and Technology IET 74: London, UK, 2011. [Google Scholar]
- Littleboy, D.M. Numerical Techniques for Eigenstructure Assignment by Output Feedback in Aircraft Applications. Ph.D. Thesis, University of Reading, Reading, UK, December 1994. [Google Scholar]
- D’azzo, J.J.; Houpis, C.H. Linear Control Systems: Analysis and Design, 4th ed.; McGraw-Hill: New York, NY, USA, 1995. [Google Scholar]
- Houpis, C.H.; Sheldon, S.N. Linear Control System Analysis and Design with MATLAB, 6th ed.; CRC Press, Taylor & Francis Group: New York, NY, USA, 2014. [Google Scholar]
- Gu, D.K.; Wang, R.Y.; Liu, Y.D.A. A parametric approach of partial eigenstructure assignment for high-order linear systems via proportional plus derivative state feedback. AIMS Math. 2021, 6, 11139–11166. [Google Scholar] [CrossRef]
- Duan, G.R. Circulation algorithm for partial eigenstructure assignment via state feedback. Eur. J. Control 2019, 50, 107–116. [Google Scholar] [CrossRef]
- Bernal, D.; Ulriksen, M.D. Output feedback in the design of eigenstructures for enhanced sensitivity. Mech. Syst. Signal Process. 2018, 112, 22–30. [Google Scholar] [CrossRef]
- Rastgaar, M.; Ahmadian, M.; Southward, S. A review on eigenstructure assignment methods and orthogonal eigenstructure control of structural vibrations. Shock and Vibration. Shock Vib. 2009, 16, 555–564. [Google Scholar] [CrossRef][Green Version]
- Köthe, A.; Luckner, R. Applying Eigenstructure Assignment to Inner-Loop Flight Control Laws for a Multibody Aircraft. CEAS Aeronaut. J. 2022, 13, 33–43. [Google Scholar] [CrossRef]
- Prewett, P. Foundation Mathematics for Science and Engineering Students; Springer: Berlin/Heidelberg, Germany, 2022. [Google Scholar]
- Wikipedia. Adjugate Matrix. 2022. Available online: https://en.wikipedia.org/wiki/Adjugate_matrix (accessed on 1 October 2022).
- Horn, R.A.; Johnson, C.R. Matrix Analysis, 2nd ed.; Cambridge University Press: Cambridge, MA, USA, 2013. [Google Scholar]
- Brookes, M. The Matrix Reference Manual; Imperial College: London, UK, 2021; Available online: http://www.ee.imperial.ac.uk/hp/staff/dmb/matrix/intro.html (accessed on 30 September 2022).
- Wikipedia. Kernel. Available online: https://en.wikipedia.org/wiki/Kernel_(linear_algebra) (accessed on 30 September 2022).
- Lerner, D. Lecture Notes on Linear Algebra; Department of Mathematics, University of Kansas: Kansas, TX, USA, 2008; Available online: https://www-labs.iro.umontreal.ca/~grabus/courses/ift6760_files/LANotes.lerner.pdf (accessed on 30 September 2022).
- Golub, G.H.; van Loan, C.F. Matrix Computations, 4th ed.; Johns Hopkins University Press: Baltimore, MD, USA, 2013. [Google Scholar]
- Garcia, S.R.; Horn, R.A. Block Matrices in Linear Algebra. In PRIMUS: Problems, Resources, and Issues in Mathematics Undergraduate Studies; Taylor & Francis Group, LLC.: New York, NY, USA, 2020; Volume 30, pp. 285–306. [Google Scholar] [CrossRef]
- Beezer, R.A. A First Course in Linear Algebra; Version 3.5.; University of Puget Sound, Congruent Press: Tacoma, WA, USA, 2015; Available online: https://open.umn.edu/opentextbooks/textbooks/5 (accessed on 30 September 2022).
- MATLAB by Mathworks, Command: Compan. 2020. Available online: http://www.mathworks.com/help/control/ref/place.html (accessed on 1 October 2022).
- Neamen, D.A. Microelectronics: Circuit Analysis and Design, 4th ed.; McGraw Hill: New York, NY, USA, 2010. [Google Scholar]
- Ogata, K. Modern Control Engineering, 5th ed.; Prentice Hall: Hoboken, NJ, USA, 2010. [Google Scholar]
- Chen, C.T. Linear System theory and Design, 4th ed.; Oxford University Press: Oxford, UK, 2013. [Google Scholar]
- MATLAB by Mathworks. Command: Diff. Release R2022a. 2022. Available online: https://www.mathworks.com/help/symbolic/diff.html (accessed on 1 October 2022).
- MATLAB by Mathworks. Command: Null. Release R2022a. 2022. Available online: https://www.mathworks.com/help/matlab/ref/null.html (accessed on 1 October 2022).
- Munro, N. Design of Controller for an Open-Loop Unstable Multivariable System Using the Inverse Nyquist Array. Proc. Inst. Electr. Eng. 1972, 119, 1377–1382. [Google Scholar] [CrossRef]
- Foldager, F.; Thomsen, D.; Li, H.; Frederiksen, K.; Andersen, A.; Zhang, X. Electrical-Mechanical Dynamic Modelling and Testing of a Lightweight-Link Robot Manipulator. In Proceedings of the World Congress on Mechanical, Chemical, and Material Engineering (MCM 2015), Barcelona, Spain, 20–21 July 2015; Paper No. 251. pp. 251-1–259-9. [Google Scholar]
- Helmberg, G.; Wagner, P.; Veltkamp, G. On Faddeev-Leverrier’s method for the computation of the characteristic polynomial of a matrix and of eigenvectors. Linear Algebra Its Appl. 1993, 185, 219–233. [Google Scholar] [CrossRef]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the author. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).



