2
$\begingroup$

First off, long time reader, first time poster. Thanks in advanced for all the help this site has offered!

So the question!

I have two matrices in the form of the variables A and b that are inputs to my matlab function (posted below). I would like to calculate the significant figures used for the matrix inverse operation (matrix division) from the result A, b matrices. However, I have no idea where to start (matlab or mathmatically) to go about this approach. Help?

More context, using a square linear system (Ax=b) and I am seeing if its singular or nonsingular and trying to find a solution(s).

% x = answer % y = 0 if no solution, 1 if nonsingular, 2 if many solutions % z = p is number of sig figs % function [ x, y, z ] = squareLinSysSolv(A, b)   if det(A) == 0     % Matrix is singular and therefor many solutions     x = A\b;     y = 0; % Used as place holder to compile     z = 5; % Used as place holder to compile elseif det(A) ~= 0     % Matrix does not equal to zero (perhaps a number very close to it or     % far from it) and therefor has a unique solution.     x = A\b;     y = 1; % Used as place holder to compile     z = 5; % Used as place holder to compile end end 

Edit: To make it a bit clear, z should be some integer which approximates (ceiling or floor value) a decimal number of significant figures at which A\b were calculated at.

Test Cases: Test/Spec sheet of what is expected. Both A and b are matrices and the result should be something like so.

A =     1.5000    2.3000    7.9000     6.1000    3.2000   13.0000    13.0000   21.0000   76.0000  b =      1      3      5 >> [x,y,z] = squareLinSysSolv(A,b) % the result of x = A\b x =      0.8580     3.0118    -0.9132 % determinant is not equal to zero y =       1 % Amount of sig figs/precision in calculation z =       15 

1 Answers 1