full rank left annihilator matrix

조회 수: 19 (최근 30일)
Anamika Anamika
Anamika Anamika 2021년 11월 23일
댓글: Anamika Anamika 2021년 11월 24일
Suppose I have a matrix A and I want to find the full rank left annihilator matrix B such that B*A=0. I am using MATLAB.
syms x1 x2 x3 x4 Cdc Cb Lcpl Vfc
A=[Vfc/(x1*Cdc), x4/(x1*Cdc), -x3/Cdc;
0 0 0;
0 0 x1/Lcpl;
0 -1/Cb 0];

채택된 답변

John D'Errico
John D'Errico 2021년 11월 23일
편집: John D'Errico 2021년 11월 23일
Are you asking to find a MATRIX B that will kill off A when you left multiply B*A?
syms x1 x2 x3 x4 Cdc Cb Lcpl Vfc
A=[Vfc/(x1*Cdc), x4/(x1*Cdc), -x3/Cdc;
0 0 0;
0 0 x1/Lcpl;
0 -1/Cb 0];
rank(A)
ans = 3
So A is a 4x3 matrix, that has rank 3. Note that one of the rows of A is entirely zero, so the other three rows of A are independent of each other.
If B left-multiplies A, then B must have size n by 4, since A has 4 rows. Are there ANY row vectors that when multiplied by A will kill it off? That is trivial.
null(A')'
ans = 
So ANY constant times the vector [0 1 0 0] will trivially kill off A, but NO other vector will do so.
And if B is a matrix, then at most it can be a matrix with only ONE row, since there is only one vector that can kill off A.
B = [0 1 0 0];
B*A
ans = 
To within a constant multiplier, that is the ONLY full rank matrix B that exists for this purpose. Of course, if some of the unknown parameters are trivially set to zero, then other vectors may still apply. But for general parameters as you have described, this is the ONLY solution. Honestly, this is a conclusion that we could easily have arrived at using only reasoning from linear algebra, once we observed that A has three linearly independent rows. And that is easily seen by inspection.
  댓글 수: 1
Anamika Anamika
Anamika Anamika 2021년 11월 24일
Thanks a lot for the explanation

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by