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 comentarios

What floating point zero error?
What inputs should we give when we run the code?
Manish
Manish el 5 de Dic. de 2018
Editada: Manish el 5 de Dic. de 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.

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Mathematics en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 5 de Dic. de 2018

Comentada:

el 5 de Dic. de 2018

Community Treasure Hunt

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

Start Hunting!

Translated by