MATLAB: создать большую матрицу, повторяя элементы вектора, с увеличением шага для каждого столбца

В MATLAB у меня есть вектор x длины n, где n обычно равно O (10), и я хотел бы построить высокую матрицу A размера [n ^ m, m], где m снова равно 0 (10). Матрица имеет своеобразный вид: если n = 4 и m = 6, пусть

x=[x1; x2; x3; x4]

тогда А

   x1 x1 x1 x1 x1 x1
   x2 x1 x1 x1 x1 x1
   x3 x1 x1 x1 x1 x1
   x4 x1 x1 x1 x1 x1
   x1 x2 x1 x1 x1 x1
   x2 x2 x1 x1 x1 x1
   x3 x2 x1 x1 x1 x1
   x4 x2 x1 x1 x1 x1
   x1 x3 x2 x1 x1 x1
   .               .         
   .               . 
   .               .
   x4 x4 x4 x4 x4 x4

На практике каждый столбец получается путем повторения элементов x с увеличением шага для каждого столбца. Как я могу это сделать? Если возможно, я бы предпочел эффективное (векторизованное) решение, потому что, как вы можете видеть, количество строк в A экспоненциально увеличивается с m. Спасибо большое,

Sergio

РЕДАКТИРОВАТЬ: ой, извините! Я забыл, что мне также нужно построить вектор V размером [n ^ m, 1], основанный на векторе w, имеющем одинаковую длину x

w=[w1; w2; w3; w4]

V является

   w1^6
   w2*w1^5
   w3*w1^5
     .
     .
     .
   w4^6

Надеюсь, дрянная графика достаточно ясна. В любом случае, V является вектором столбца длины n ^ m. Угадайте, я мог бы создать матрицу B из w, точно так же, как создать матрицу A из x, а затем использовать prod (B, 2)?

Ответы на вопрос(5)

Ваш ответ на вопрос