four summation containing loop
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
jana nassereddine
il 1 Mag 2021
Commentato: jana nassereddine
il 2 Mag 2021
hey, I wrote this code for 4 summation in matlab, and i still have one problem in " n= n+ Term5*G" where n give NAN answer and I can't figure out why!!!
the code is:
clear,
f12=[]; n=0;
x= [0; 4]; y= [0; 2]; H=[0; 2]; E=[0; 3];
for l=1:2
for k=1:2
for j=1:2
for i=1:2
Term1= (y(j)-H(k))*(x(i)^2+E(l)^2)^0.5 ;
Term2= atan((y(j)-H(k))/(x(i)^2+E(l)^2)^0.5);
Term3= -0.25*(x(i)^2+E(l)^2-(y(j)-H(k))^2) ;
Term4= log(x(i)^2+E(l)^2+(y(j)-H(k))^2);
Term5= (-1)^(i+j+k+l);
G= (1/(2*pi))*(Term1*Term2+Term3*Term4);
n= n+ Term5*G;
end
end
end
end
f12 = (1/(x(2)-x(1))*(y(2)-y(1)))*n;
0 Commenti
Risposta accettata
Jan
il 1 Mag 2021
Modificato: Jan
il 1 Mag 2021
Use the debugger to stop the code, when a NaN occurs:
dbstop naninf
Then run your code again. It stops in the first iteration, l=k=j=i=1 in:
Term2 = atan((y(j) - H(k)) / (x(i)^2 + E(l)^2)^0.5)
% ^^^^^^^^^^^^^^^^ This is zero
By the way, sqrt(x) is faster than x^0.5 .
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!