Azzera filtri
Azzera filtri

Error In finding a variable inside a nested loop..

1 visualizzazione (ultimi 30 giorni)
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 Commenti
KSSV
KSSV il 7 Mag 2020
When code is run, it says undefined variable m.
satish kumar
satish kumar il 7 Mag 2020
Thanks again KSSV for the respone man. I just forgot to remove that 'm' . i don't need 'm' for now. I see an error in if conditional statement in the nested loop. i am updating my code here again. could you just check it.

Accedi per commentare.

Risposta accettata

Walter Roberson
Walter Roberson il 7 Mag 2020
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.

Più risposte (0)

Categorie

Scopri di più su Graphics Object Programming in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by