Question: Using MATLAB, You will write a function to calculate the determinant of a matrix. It should work for any size matrix . Remember that the
Using MATLAB,
You will write a function to calculate the determinant of a matrix. It should work for any size matrix. Remember that the determinant can be calculated by multiplying the diagonal elements of an upper right triangular matrix. Your function will take a matrix passed to it and put it in upper right triangular form. You will work down the diagonal beginning at row 1 column 1, then row 2 column 2, etc. Note that the row and column numbers are the same on the diagonal. You will put zero in each column below the diagonal elements by making linear combinations of rows. Before you make linear combinations down a column, swap rows (if needed) to put the row with the largest value on the diagonal. Also remember, each time you swap rows, the determinant changes sign so count of how many row swaps are necessary and adjust the sign of the determinant accordingly. A matrix must be square to have a determinant. If the matrix passed to your function is not square, return the text Matrix must be square.
There are functions included that you MUST use in your function. These will be local functions that follow your main function. You must use ALLthe functions. The functions are: RowComp(matrix, row, col) which returns the row with the largest absolute value in the column passed to the function beginning at the row passed to the function; Swap(matrix, row1, row2) which returns a matrix with row1 and row2 exchanged; and LinComb(matrix, row1, row2, alpha) which returns a matrix with row2 replaced by row1*alpha+row2. These functions will make your function much easier to write and debug.
Your function will be checked with a different matrix of a different size. Dont forget comments and use reasonable variable names.
Exampleif the matrix passed to the function is the determinant is 102.
Interim steps in the calculation:
1. Swap row 3 and row 1
5 2 -2 5
3 4 7 2
1 5 9 3
3 1 7 -3
2. Zeros in column 1
5.0000 2.0000 -2.0000 5.0000
0 2.8000 8.2000 -1.0000
0 4.6000 9.4000 2.0000
0 -0.2000 8.2000 -6.0000
3. Swap row 2 and row 3
5.0000 2.0000 -2.0000 5.0000
0 4.6000 9.4000 2.0000
0 2.8000 8.2000 -1.0000
0 -0.2000 8.2000 -6.0000
4. Zeros in column 2
5.0000 2.0000 -2.0000 5.0000
0 4.6000 9.4000 2.0000
0 0 8.6087 -5.9130
0 0 2.4783 -2.2174
5. Continue until all rows have been completed and zeros are in all columns below the diagonal.
6. Calculate the determinant by multiplying all the diagonal terms together and adjust the sign of the determinant by the number of row swaps.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
