How to resolve floating point zero error in the following code

for i=1:3
for j=1:3
for k=1:z
p=Q(i,j,k)*(Z(k+1)-Z(k));
q=Q(i,j,k)*(Z2(k+1)-Z2(k));
r=Q(i,j,k)*((Z(k+1))^3-(Z(k))^3);
A(i,j)= A(i,j)+p;
B(i,j)= B(i,j)+q;
D(i,j)= D(i,j)+r;
end
end
end

6 commentaires

What floating point zero error?
What inputs should we give when we run the code?
Manish
Manish le 5 Déc 2018
Modifié(e) : Manish le 5 Déc 2018
2
1/1000
0
0
0
0
0
Okay, so what should we be paying attention to?
Your ABD matrix is nearly singular, with rcond about 1e-9 . inv() of it is not going to be all that accurate. You should strive to avoid using inv(), preferring to use \
abd = inv(ABD); R1 = abd*[Nx;Ny;Nxy;Mx;My;Mxy];
would be better as
R1 = ABD \ [Nx;Ny;Nxy;Mx;My;Mxy];
okay i will do that but;
in ABD matrix ABD(1,3) = ABD(2,3) = ABD(3,1) = ABD(3,2) = 0
and i ain't getting that
There is no way to to resolve it ?
Because i have to display the ABD matrix and
if i use A(A~= 0) = 0;
whole A matrix is resulting in zero matrix although every element is not approximately zero.

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Mathematics dans Centre d'aide et File Exchange

Question posée :

le 5 Déc 2018

Commenté :

le 5 Déc 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by