indexing a set in an array

1 visualizzazione (ultimi 30 giorni)
Paul Gendron
Paul Gendron il 18 Gen 2021
Commentato: Paul Gendron il 22 Gen 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 Commenti
Adam Danz
Adam Danz il 22 Gen 2021
Looks like Matt J hit the nail on the head. ✅
Paul Gendron
Paul Gendron il 22 Gen 2021
He really did, that deal() function is a gem and time saver. Thanks again Matt.

Accedi per commentare.

Risposta accettata

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

Più risposte (0)

Categorie

Scopri di più su Performance and Memory in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by