how to improve the condition of matrix
Show older comments
K =
1.0e+007 *
1.3131 -0.5000 -0.0909 0.3333 -1.2222 0.1667 0 0 0 0 0 0;
-0.5000 0.6692 0.1667 -0.3636 0.3333 -0.3056 0 0 0 0 0 0;
-0.0909 0.1667 5.9831 -1.7647 -0.4216 -0.3529 -5.4706 1.9510 0 0 0 0;
0.3333 -0.3636 -1.7647 2.7558 -0.3529 0.0784 1.7843 -2.4706 0 0 0 0;
-1.2222 0.3333 -0.4216 -0.3529 2.7574 0.0294 0.2892 -0.1765 -0.0694 0.5000 -1.3333 -0.3333;
0.1667 -0.3056 -0.3529 0.0784 0.0294 1.2990 -0.1765 -0.4608 0.5000 -0.2778 -0.1667 -0.3333;
0 0 -5.4706 1.7843 0.2892 -0.1765 5.8708 -1.6684 -0.6894 0.0606 0 0;
0 0 1.9510 -2.4706 -0.1765 -0.4608 -1.6684 2.9617 -0.1061 -0.0303 0 0;
0 0 0 0 -0.0694 0.5000 -0.6894 -0.1061 0.8422 -0.2273 -0.0833 -0.1667;
0 0 0 0 0.5000 -0.2778 0.0606 -0.0303 -0.2273 0.6414 -0.3333 -0.3333;
0 0 0 0 -1.3333 -0.1667 0 0 -0.0833 -0.3333 1.4167 0.5000;
0 0 0 0 -0.3333 -0.3333 0 0 -0.1667 -0.3333 0.5000 0.6667;
F =
0
37500
0
0
0
75000
0
0
375000
0
375000
37500
these are my k(12*12) and F(12*1) matrix i want to find inv(K)*F but it displays bad condition, i have even multiplied by D matrix as stated above,but problem remains there,so pla can u solve this problem
Answers (1)
Sean de Wolski
on 28 Mar 2011
Do you have boundary conditions applied to your stiffness matrix? If you don't apply boundary conditions the problem is, by definition, ill-posed and the stiffness matrix will be singular.
Also, use
U = K\F;
instead of inv(K)*F.
Categories
Find more on Mathematics and Optimization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!