generating a matrix question

i want to generate a matrix that each element is the sum of its row and column ive tried usin the henkel command but it didnt work is there an alternative or more simple solution thx

 Risposta accettata

A=zeros(3,4);
[ii,jj]=ind2sub(size(A),1:numel(A));
A(1:end)=sum([ii' jj'],2)

3 Commenti

mohamed
mohamed il 11 Dic 2013
thx very much but i dont understand some of the codes like ind2sub abd nume
A=[20 4;3 5]
numel(A) % is number of element in A
ans=
4
A(1)
A(2)
A(3)
A(4)
1,2,3 and 4 are linear indices. to get subscripts use ind2sub
ii=[1 2 1 2] rows
jj=[1 1 2 2] column
Look at
doc numel
doc ind2sub
mohamed
mohamed il 12 Dic 2013
thank you

Accedi per commentare.

Più risposte (1)

Andrei Bobrov
Andrei Bobrov il 11 Dic 2013
Modificato: Andrei Bobrov il 11 Dic 2013
s = [3 4];% let s - size new matrices
A = hankel(2:s(1)+1,s(1)+1:sum(s));
or
A = bsxfun(@plus,(1:s(1))',1:s(2));
or
s = [3 4];
[ii,jj] = ndgrid(1:s(1),1:s(2));
A = ii + jj;

Categorie

Community Treasure Hunt

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

Start Hunting!

Translated by