tmp_1(tmp_2 > 0) What does this command mean in Matlab?

I have been given a set of matlab codes presently and asked to write them in some other language. But I cannot figure out what this statement means in matlab. To provide context, tmp_1 and tmp_2 are 2 local variables.
Thanks in advance!

Answers (2)

tmp_2 > 0
is a logical result of the same size as tmp_2 which is true where tmp_2 is greater than 0 and false otherwise.
tmp_1(tmp_2 > 0)
uses this as a mask into tmp_1 which must be the same size and returns only those elements of tmp_1 for which tmp_2 is greater than 0.
In another non-vectorized language, try a for loop, something like
for k = 1 : length(tmp_2)
if tmp_2(k) > 0
tmp_1(k) = whatever....
end
end
Adapt slightly for the specific language you're using.

Tags

No tags entered yet.

Asked:

on 20 Jul 2018

Answered:

on 27 Jul 2018

Community Treasure Hunt

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

Start Hunting!