If Condition with array of elements
이전 댓글 표시
Can anyone help me how to write this condition
if (ra >= 1.12246*sigma)
uw=0.0;
end
Here my ra is any array of elements like and the condition should satisfy each element of an array.
So how should i write it
채택된 답변
추가 답변 (2개)
Actually you don't need to do anything. In MATLAB, the if function already is defined to be satisfied IFF every element of the conditional array is non-zero.
The documentation states this clearly "An evaluated expression is true when the result is nonempty and contains all nonzero elements (logical or real numeric). Otherwise, the expression is false."
So you example will calculate the code within the if, only if all of (ra >= 1.12246*sigma) are true.
If you only need some of them to be true, then you will need to use an any.
David Young
2014년 9월 28일
You should try to state more clearly what is not working. Give an example set of initial values, say what you expect the result to be, and say what result you actually get. Without this, it's really hard to help you.
All the same, here's a guess. Maybe you need:
uw(ra >= 1.12246*sigma) = 0.0;
This applies the test to each element of ra and sets the corresponding element of uw to zero if the element of ra passes the test.
카테고리
도움말 센터 및 File Exchange에서 Logical에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!