Matlab programming code understanding -
i have come across matlab code unable understand. if knows code means me in regard.
lambda(:,1) = [randi([1,4], 1,4), randi([1,30],1)*rand]; i know randi return random integer between [min, max]. know, lambda receive? a row values, a column values or only scalar value?
well.. run code , see happens:
[randi([1,4], 1,4), randi([1,30],1)*rand] ans = 4.0000 2.0000 4.0000 1.0000 11.9046 so answer be: row vector 5 entries.
but let's @ more detailed: randi([1,4], 1,4) create row vector of size 1 x 4, containing random integers between [min,max], i.e. between 1 , 4. second part creates 1 integer in range [1,30] , multiplies random number interval (0,1). [x,y] concatenate 2 numbers or vectors. leads row vector of size 1 x 5, saw in beginning.
in end assign lambda(:,1). in matlab first index rows , second columns, select first column of lambda. trying assign 1 x 5 row vector 5 x 1 column vector. luckily matlab smart enough handle that, snippet work anyways. nicer , more clear solution, if created column vector instead of row vector in first place. be
lambda(:,1) = [randi([1,4], 4,1); randi([1,30],1)*rand];
Comments
Post a Comment