MATLAB Answers

Rank on symbolic matrices

6 views (last 30 days)
Ohad Shapira
Ohad Shapira on 4 Apr 2021
Edited: Bruno Luong on 7 Apr 2021
Hey all,
I'm trying to figure out the rank of several (sym) matrices that I am working on and the built-in 'Rank' function gives me different answer.
As I saw in the help, It's not reliable and I can't trust it ("rank returns an incorrect result because the outputs of intermediate steps are not simplified").
Is there a different way to get the rank of my matrices?
TIA
  9 Comments
Ohad Shapira
Ohad Shapira on 5 Apr 2021
Thanks, most of my problems are solved in this forum.
BTW, your scenario:

Sign in to comment.

Answers (1)

Aditya Patil
Aditya Patil on 7 Apr 2021
Rank does not take identities satisfied by functions into account. As a workaround, substitute values into variables, and then calculate rank. See Rank Function Does Not Simplify Symbolic Calculations more further details.
  2 Comments
Bruno Luong
Bruno Luong on 7 Apr 2021
May be you can select p arbitrary combinations of values of your variables and substitute in then calculation of the rank after substitution.
If the ranks obtained after substitution give the identical result then it is ikely this holds true for almost all values.
I would suggest select p as the size of the matrix (n) + 1 or larger, because the determinant is a polynomial of order n, threfore has n+1 DOFs.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by