MATLAB: Conditional logic if possible empty result query

find

m1= find((d1 <= r & x(source) < x & x<= x(destination) | ...
d1 <= r & y(source) & y(destination)
This code is not responsible to what I need I need if the first condition give me an empty vector choose the second condition to provide the value for m1

Best Answer

Then separate the two and add the conditional..
condition1 = d1<=r & x(source)<x & x<=x(destination); % first condition logical array
if isempty(condition1)
m1=find(d1<=r & y(source) & y(destination));
else
m1=find(condition1);
end