Error In finding a variable inside a nested loop..
6 ビュー (過去 30 日間)
古いコメントを表示
I am getting an error of "Operands to the || and && operators must be convertible to logical scalar values". Here, I need to plot figure(2), figure(3). i don't understand how to solve this. Any help is very much appreciated. I am attachhing my code here.
2 件のコメント
採用された回答
Walter Roberson
2020 年 5 月 7 日
The code you posted cannot encounter that error unless you uncomment some code. If you do uncomment, then
elseif lambdat(:,:) > 0.34522 pi/2 - lambdam pi/2 + lambdam 0.34522 < lambdat(:,:) &&
What would be the intent of that code? MATLAB would parse it like
elseif lambdat(:,:) > 0.34522
pi/2 - lambdam
pi/2 + lambdam
0.34522 < lambdat(:,:) &&
complete with an error because the statement is not finished on the line.
Your lambdat is a non-scalar. When you test a non-scalar in an if or elseif the condition is only considered true if all of the values are non-zero . So if some of the lambdat values are > 0.34522 but not all of them are, then the condition would fail.
You should probably be using logical indexing, or else using a loop so you are only testing one value at a time.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Graphics Object Programming についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!