What is wrong with my code

조회 수: 3 (최근 30일)
kvsn raju
kvsn raju 2016년 6월 29일
댓글: Rahul agarwal 2016년 6월 29일
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
Rahul agarwal
Rahul agarwal 2016년 6월 29일
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.

댓글을 달려면 로그인하십시오.

채택된 답변

Walter Roberson
Walter Roberson 2016년 6월 29일
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.

추가 답변 (1개)

Jan Orwat
Jan Orwat 2016년 6월 29일
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))

카테고리

Help CenterFile Exchange에서 Troubleshooting in Polyspace Products for Ada에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by