필터 지우기
필터 지우기

triple "and" condition

조회 수: 5 (최근 30일)
sani
sani 2020년 10월 27일
댓글: Walter Roberson 2020년 10월 27일
Hello,
I have a script that part of it is checking that the values of the table line are in the region of interest and then save it to other arrays.
When I added a 3rd condition (marked in underline) to the if function, I started to get error messege (not detailing what's wrong).
this is the script:
for i=2:length(Ge_find)
if ( (coince_table.time_stamp(Ge_find(i)) - coince_table.time_stamp(Ge_find(i)-1)) >= coince_win_LL ...
&& (coince_table.time_stamp(Ge_find(i)) - coince_table.time_stamp(Ge_find(i)-1)) <=coincesh_win_UL)...
&& (coince_table.detector((Ge_find(i)-1)) == 0)
Delta(r) = (coince_table.time_stamp(Ge_find(i)) - coince_table.time_stamp(Ge_find(i)-1));
Ge_energy(r)= coince_table.energy(Ge_find(i));
scint_energy(r) = coince_table.energy(Ge_find(i)-1);
Ge_timestamp (r) = coince_table.time_stamp(i);
scint_timestamp (r) = coince_table.time_stamp(Ge_find(i)-1);
row = Ge_find(i);
r = r+1;
end
end
How can I add this condition?
P.s I also tryed this:
if and( (coince_table.time_stamp(Ge_find(i)) - coince_table.time_stamp(Ge_find(i)-1)) >= coince_win_LL ...
&& coince_table.time_stamp(Ge_find(i)) - coince_table.time_stamp(Ge_find(i)-1)) <=coincesh_win_UL, (coince_table.detector((Ge_find(i)-1)) == 0)
But it didn't work.
  댓글 수: 1
Walter Roberson
Walter Roberson 2020년 10월 27일
We do not know the size of the variables, so it is difficult to say.
By the way, I suggest
for i=2:length(Ge_find)
tsdiff = coince_table.time_stamp(Ge_find(i)) - coince_table.time_stamp(Ge_find(i)-1);
if tsdiff >= coince_win_LL && ...
tsdiff <= coincesh_win_UL && ...
coince_table.detector((Ge_find(i)-1)) == 0
stuff
end
end

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

답변 (0개)

카테고리

Help CenterFile Exchange에서 Lighting, Transparency, and Shading에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by