indexing a set in an array

2 views (last 30 days)
Paul Gendron
Paul Gendron on 18 Jan 2021
Commented: Paul Gendron on 22 Jan 2021
Dear users, Im trying to find a fast way to index a set of elements of an array that meet some criteria. For instance, Imagine that I have an array A=zeros(Nx,Ny) Nx=1000;Ny=1000. so A(k,l)=0 for all k,l<1000. Now I would like the set of indices, call them SET, that fullfill (k-ko)^2+(l-lo)^2<R^2 From which I can A(SET)=1. In this way with any given distance function I can build indicator functions for arbitrary sets.
  4 Comments
Adam Danz
Adam Danz on 22 Jan 2021
Looks like Matt J hit the nail on the head. ✅
Paul Gendron
Paul Gendron on 22 Jan 2021
He really did, that deal() function is a gem and time saver. Thanks again Matt.

Sign in to comment.

Accepted Answer

Matt J
Matt J on 19 Jan 2021
[k,l]=deal(1:1000);
SET=(k.'-k0).^2+(l-lo).^2 < R^2;

More Answers (0)

Categories

Find more on Data Type Conversion 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!