Transforming vector into triangular matrix

Hi guys,
I've got a 48x1 vector say [x1; x2; x3; x4;...x48]
I want to transform this into a 48x48 matrix that looks like:
x1 0 0 0 ...
x1 x2 0 0 ...
x1 x2 x3 0 ...
x1 x2 x3 x4 ...
....
What are some of the ways to do this? I know I could use diag() but that would only get me 1 diagonal line. Or should I try and use tril()? Thanks!

 Akzeptierte Antwort

Amit
Amit am 2 Feb. 2014

0 Stimmen

Lets call it A Then
A_new = repmat(A,1,48);
A_new = tril(A);

Weitere Antworten (0)

Kategorien

Gefragt:

am 2 Feb. 2014

Kommentiert:

am 2 Feb. 2014

Community Treasure Hunt

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

Start Hunting!

Translated by