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.

 採用された回答

KSSV
KSSV 2017 年 12 月 29 日
編集済み: KSSV 2017 年 12 月 29 日

1 投票

-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.

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeLoops and Conditional Statements についてさらに検索

質問済み:

2017 年 12 月 29 日

編集済み:

2017 年 12 月 29 日

Community Treasure Hunt

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

Start Hunting!

Translated by