How to get smith form of a matrix in matlab

3 views (last 30 days)
When i tried this code: syms x A = [x^2 + 3, (2*x - 1)^2; (x + 2)^2, 3*x^2 + 5] S = smithForm(A) I got following error: Undefined function or method 'smithForm' for input arguments of type 'sym'. How to resolve this.

Accepted Answer

Roger Stafford
Roger Stafford on 25 Mar 2016
Edited: Walter Roberson on 25 Mar 2016
  3 Comments
sakshi ahuja
sakshi ahuja on 25 Mar 2016
Edited: sakshi ahuja on 25 Mar 2016
When i used mupad, then it is succesfully givivng me smith form but when i tried to evaluate [S, U, V]; it is showing error. Error is in this line: [S, U, V] := linalg::smithForm(A, All)
Walter Roberson
Walter Roberson on 25 Mar 2016
The MATLAB interface to smithform is available only from R2015b. Before that you need to interface into the MuPAD linalg routine.
sakshi, are you executing those commands inside a MuPAD notebook? If you are then what error message are you receiving?

Sign in to comment.

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!