Can anyone please tell me why I am getting this error?
이전 댓글 표시
A =
2 4 1
3 1 4
5 6 0
>> A=finverse(A) Undefined function 'finverse' for input arguments of type 'double'.
>>
답변 (3개)
Star Strider
2014년 8월 27일
편집: Star Strider
2014년 8월 27일
1 개 추천
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
Star Strider
2014년 8월 27일
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
2014년 8월 29일
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
2014년 8월 29일
@Christopher — Noted. You’re correct.
Image Analyst
2014년 8월 27일
0 개 추천
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?
카테고리
도움말 센터 및 File Exchange에서 Equation Solving에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!