triple "and" condition

6 views (last 30 days)
sani
sani on 27 Oct 2020
Commented: Walter Roberson on 27 Oct 2020
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 Comment
Walter Roberson
Walter Roberson on 27 Oct 2020
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

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!