triple "and" condition

1 view (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)

Categories

Find more on Matrices and Arrays 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!