What is wrong with my code
1 view (last 30 days)
Show older comments
kvsn raju
on 29 Jun 2016
Commented: Rahul agarwal
on 29 Jun 2016
The error message shown is :
Operands to the and && operators must be convertible to logical scalar values.
Error in MainCode>cal_for_tune (line 412)
%----------FIXING THE MAX TIP HEIGHT-----------------------------------------------
My code near that line :
line 411 % ----------------------------------------------------------------------------------
line 412 % ----------FIXING THE MAX TIP HEIGHT-----------------------------------------------
line 413 if((TH_max1 >= 0.4) && (TH_max2 >= 0.4) && (TH_max3 >= 0.4))
BM_Lvr1_max_adj = lim_up_down(10*abs(TH_max1-0.4),0,3);
BM_Lvr2_max_adj = lim_up_down(10*abs((TH_max2+TH_max3)/2-0.4),0,3);
1 Comment
Rahul agarwal
on 29 Jun 2016
the conditions you are checking in the Line 413 is not able to give logical scalar values, check the class of TH_max1, TH_max2, TH_max3. it should be array, not cell.
Accepted Answer
Walter Roberson
on 29 Jun 2016
One of your TH_max* variables is empty or is not a scalar. When you use && then the results of each individual test must be a scalar.
0 Comments
More Answers (1)
Jan Orwat
on 29 Jun 2016
Are TH_max1:3 scalars, vectors or arrays? && and may be used only with scalars. Try:
if(all(TH_max1(:) >= 0.4) && all(TH_max2(:) >= 0.4) && all(TH_max3(:) >= 0.4))
0 Comments
See Also
Categories
Find more on Statistics and Machine Learning Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!