Finding the determinant without det(a)
显示 更早的评论
I need to physically computate the determinant of 3x3 matrices and lower without using the det(a) function, rather loops. What's causing this error?


1 个评论
Like Max, I'm guessing that matrix a1 isn't the expected size. In the future, it's best to post the code as formatted code instead of pictures so that people can troubleshoot it.
I'm just going to throw this out there. You can reuse the code for calculating the 2x2 case.
A = rand(3);
DA1 = det(A)
DA2 = det33(A)
function D = det22(A)
D = prod(A([1 4])) - prod(A([2 3]));
end
function D = det33(A)
D = A(1,1)*det22(A(2:3,2:3)) - A(1,2)*det22(A(2:3,[1 3])) + A(1,3)*det22(A(2:3,1:2));
end
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!