Can anyone please tell me why I am getting this error?
Show older comments
A =
2 4 1
3 1 4
5 6 0
>> A=finverse(A) Undefined function 'finverse' for input arguments of type 'double'.
>>
Answers (3)
Star Strider
on 27 Aug 2014
Edited: Star Strider
on 27 Aug 2014
1 vote
The finverse function is in the Symbolic Math Toolbox, and creates the inverse of a symbolic function.
You likely want the inv function for your matrix. If you are doing matrix calculations, it is preferable to use the mldivide function, or more directly the (\) (backslant) operator (if possible in your calculations).
3 Comments
Star Strider
on 27 Aug 2014
The easiest way to invert your matrix then is simply to use inv. If you want to use the Symbolic Math Toolbox, declare your A matrix as a symbolic object first:
syms A
A = [2 4 1
3 1 4
5 6 0]
Ainv = inv(A)
It will still be a double data type, so there is no advantage to doing it as a symbolic object.
Christopher Creutzig
on 29 Aug 2014
Your sequence of commands does not create a symbolic matrix. The assignment to A discards the previous symbolic variable A.
A = sym([2 4 1
3 1 4
5 6 0])
inv(A)
ans =
[ -8/15, 2/15, 1/3]
[ 4/9, -1/9, -1/9]
[ 13/45, 8/45, -2/9]
Star Strider
on 29 Aug 2014
@Christopher — Noted. You’re correct.
Image Analyst
on 27 Aug 2014
0 votes
finverse() is not in base MATLAB. Do you think it is suppose to be in one of your toolboxes? If so, which one? List in in the products drops down list below this comment. Or is it a custom function you wrote but did not include here?
2 Comments
Iain
on 27 Aug 2014
Or, is it just a typo?
Andrew Reibold
on 27 Aug 2014
Symbolic Math Toolbox
Categories
Find more on Equation Solving in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!