У меня есть начальный (10 x 2) вектор v1, и (100 x 10 x 10) матрица Cos. Глагол диада 'move' возвращает другой (10 x 2) вектор с использованием (10 x 10) i-й матрицы из Cos в качестве входа.
$Cos
100 10 10
$v1
10 2
v1
0.89 0.91
0.01 0.24
0.88 0.43
0.43 0.32
0.85 0.84
0.27 0.31
0.1 0.11
0.49 0.9
0.2 0.28
0.66 0.96
(0{Cos) move v1
1 1
0.426426 0
0.819478 0.304798
0.66484 0.0362481
0.505905 0.278294
0.149514 0.0516271
0 0.40583
0.233825 0.759351
0.03464 0.630262
0.502968 0.686788
Я хочу сделать матрицу, использующую рекурсию, такую, чтобы
$p
100 10 2
как
0{p =: (0{Cos) move (v1)
1{p =: (1{Cos) move (p0)
2{p =: (2{Cos) move (p1)
...
В настоящее время я читаю рекурсивный раздел (1: `) из вики на языке J, но я немного растерялся.
Должен ли я просто использовать цикл, используя ^ :?
Заранее спасибо