# Significance of a singular matrix

1. Nov 7, 2007

### transient_itch

So I have a system of equations (composed of force and moment eqns) and I can split them up into matrices which will then look like this:
Ax = B
I know the matrices A and B are correct, because when I plug in known values for x from a working prog, I get the correct values for B. So that must mean A and B are correct, right?
HOWEVER, I am not able to invert A so that I may solve x = inv(A) * B.
The determinant of A is 0, so it's a singular matrix.
So what is the significance of an singular matrix?
Maybe there are redundant eqns involved? Am I looking at a statically indeterminant problem?
How does one fix this?

2. Nov 7, 2007

### HallsofIvy

Staff Emeritus
A singular matrix doesn't have an inverse! And yes, that means that the rows making up the matrix A are not independent which, in turn, means that the equations you are using are not independent- at least one is just a combination of the others. You don't have enough data to solve those equations.

3. Nov 29, 2009

### freak_1909

Singularity of a matrix means that it becomes discontinuous at that point: take for example a black hole: it has a radius zero, which means that its gravitational force becomes undefined then; the same case here is when the adjoint of the co-efficient matrix we got is to be divided by the inverse, which is zero. Thus, the matrix is undefined there.

This is not a dead end . We have numerical methods like Gauss-Siedel and Jacobi iteration to find out the solution, that is, X.

let the eqn be of 3 variables, i.e., f(x1, x2, x3) = 0.

then we can write it as:
a11x1 + a12x2 + a13x3 = b1.......1
a21x1 + a22x2 + a23x3 = b2.......2
a31x1 + a32x2 + a33x3 = b3.......3

then take initial gues values of x2(0) & x3(0). Put in eqn 1 n get x1(1).
Put x1(1), x3(0) n get x2(1) from eqn 2.
Put x1(1), x2(1) n get x3(1) from eqn 3.

Now we have the second guess values as: x1(1), x2(1) & x3(1).
Relaxation: x1(after iteration) = (some weightage)*x1(after iteration) + (1-weightage)*x1(before iteration).

same for x2 and x3.
Repeat the iterations till you get:
abs{x1(k+1),x2(k+1), x3(k+1) - x1(k),x2(k),x3(k)} < tolerance.

this will be your final set of x1, x2, x3 values.
:)
Hope this helps.
The jacobi iteration is simpler than this: Google it yourself.
:)
here's a reference: http://www.math-linux.com/spip.php?article48

4. Nov 29, 2009

### freak_1909

5. Nov 30, 2009

### mnb96

Hello,
I don't know what is your application, so my hint maybe not be useful.
However, if you cannot invert that matrix you can still find the pseudoinverse of A (a.k.a. Moore-Penrose inverse, or generalized inverse).
This will give you the vector x which "gets closest" to the solution in terms of L2-norm. Namely, it is a closed form solution for the following:

$${argmin}_{x}|Ax-b|_2$$

See: http://en.wikipedia.org/wiki/Moore–Penrose_pseudoinverse

Last edited: Nov 30, 2009
6. Nov 30, 2009

### freak_1909

WELL, THERE IS A LOT OF WAYS TO SOLVE YOUR PROBLEM!
First Gauss-Seidel, then Jacobi.
Now Moore-Penrose.
I just remembered one more: Gauss-Jordan elimination method of finding a MATRIX INVERSE
http://mathworld.wolfram.com/Gauss-JordanElimination.html

P.S.: ARE YOU AN ENGINEERING STUDENT?

7. Nov 30, 2009

### freak_1909

try using a software named MATLAB: it has readymade methods of finding matrix inverse if you don't need to show to your professor/teacher how you got the answer matrix: X

8. Nov 30, 2009

### mnb96

Are you sure the methods you mentioned still work when the matrix A is singular?

I thought the Moore-Penrose pseudoinverse was the only one that provides the "best solution" in terms of least squares.
Keep also in mind that the Moore-Penrose pseudoinverse works also when A is not a square matrix!

9. Nov 30, 2009

### freak_1909

cent percent sure! we have used it in our FORTRAN classes to solve sums.... fresh out of grad...can't be mistaken

10. Dec 1, 2009

### trambolin

That means your truss topology or whatever you are working on is overconstrained. Similar to defining a plane with 4 points.