I am getting a strange error on the array operation. Please help.

s = size(n3);
for l1 = 1:s(1)
m(l1,1) = (n3(l1,1))^(2.6666667);
end
This is a simple loop. In this, I am trying to calculate the n3^2.6666667. But, I am getting a complex number output. Variable n3 varies between -0.7 to 0.7. So, there is no chance of getting a complex value. I checked with the individual values like -0.7^2.6666667 so on. What is the error? I couldn't understand. Kindly help in this.

 Réponse acceptée

KSSV
KSSV le 29 Déc 2017
Modifié(e) : KSSV le 29 Déc 2017
-0.7^2.6666667 this check is not correct.....you should check for (-0.7)^2.6666667. Note that roots of negative numbers can be complex. I don't think this is any strange.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by