problem with the rank of controllability of a system

1 view (last 30 days)
I have this system given below
A=[-3.87695312500000e-06,-0.000377259521484375,-1.54541015625000e-06,-2.47435565751281e-05,0;
-0.000383031005859375,-0.0438680297851563,-0.000171501464843750,-0.00287715774129662,0;
-1.68273925781250e-06,-0.000184232788085938,-3.42102050781250e-06,-1.20840625134364e-05,0;
-0.0288955468750000,-3.30957816406250,-0.0129358593750000,-0.452124041742296,0.00180860517844498;
0,0,0,119.959269051020,-1.23669349537147]
B=[-0.000202364643587302;-0.0235307725101629;-9.88292445427022e-05;-1.42966622638009;0];
C=eye(5);
D=zeros(5,1);
the rank of the controlablity matrix gives me the following matrix
co=ctrb(A,B);
>> co=[-0.000202364643587302,4.42531724232830e-05,-1.98625050253011e-05,1.70702903536278e-05,-2.16416261767110e-05;-0.0235307725101629,0.00514571834133656,-0.00230959374267344,0.00198491754360988,-0.00251646821219010;-9.88292445427022e-05,2.16119945020915e-05,-9.70028879196148e-06,8.33665147162803e-06,-1.05691645905590e-05;-1.42966622638009,0.724270529374834,-0.654670725177827,0.844370048676126,-1.19908774023253;0,-171.501715503486,298.978019307210,-448.277993397705,655.672492400879]
Rank (co) returns 4 where as it seems it should be 5?
  1 Comment
Kamran
Kamran on 25 Mar 2022
For the given system, I can develop an lqr with following paratmers
R=diag([1e1,1e3,1e1,1e2,10]);
Q=1e2;
K=lqr(A,B,R,Q);
So I dont understand the rank of controlablity martix be 4 and not 5.

Sign in to comment.

Answers (1)

Sachin Lodhi
Sachin Lodhi on 19 Dec 2023
Edited: Sachin Lodhi on 19 Dec 2023
Hi Kamran,
The controllability matrix 'co' has a rank of 4 instead of 5 because the first row is just the third row multiplied by 2. It means that these two rows are linearly dependent.
In terms of rank, which measures the dimension of the row or column space (the maximum number of linearly independent rows or columns), having two linearly dependent rows reduces the rank of the matrix by at least one.
So, in matrix ‘co’ of [5 x 5] dimension, if two rows are the same, the number of linearly independent rows would be '5-1 = 4', and thus the rank of the matrix would be 4.
I hope this helps.
Best Regards,
Sachin

Categories

Find more on Matrix Computations in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!