- 积分
- 33
- 注册时间
- 2005-6-2
- 仿真币
-
- 最后登录
- 1970-1-1
|
发表于 2009-10-28 09:20:23
|
显示全部楼层
来自 美国
本帖最后由 smarten 于 2009-10-30 13:47 编辑
- u = {{a, b, f}, {c, d, e}}
- t = {{u, 0 u}, {0 u, u}}
- dim = Dimensions[t]
- l13 = Table[{i, j}, {i, dim[[1]]}, {j, dim[[3]]}] //
- Flatten[#, {1, 2}] &;
- Flatten[t, {{1, 3}, {2, 4}}] // MatrixForm
- Map[Flatten[#, {1, 2}(*Flatten based on 2,4*)] &,
- Map[t[[#[[1]], All, #[[2]], All]] &, l13](*Flatten based on {1,
- 3}*)] // MatrixForm
- l41 = Table[{i, j}, {j, dim[[4]]}, {i, dim[[1]]}] //
- Flatten[#, {1, 2}] &
- Flatten[t, {{4, 1}, {3, 2}}] // MatrixForm
- Map[Flatten[#, {2, 1}(*Flatten based on {3,2}*)] &,
- Map[t[[#[[1]], All, All, #[[2]]]] &, l41](*Flatten based on {4,
- 1}*)] // MatrixForm
- Flatten[t, {{4, 2, 1}, {3}}] // MatrixForm
- l421 = Table[{i, j, k}, {k, dim[[4]]}, {j, dim[[2]]}, {i, dim[[1]]}] //
- Flatten[#, {1, 2, 3}] &;
- Map[Flatten[#, {1}(*Flatten based on {3}*)] &,
- Map[t[[#[[1]], #[[2]], All, #[[3]]]] &, l421](*Flatten based on {4,
- 2,1}*)] // MatrixForm
- Flatten[t, {{4, 2, 1, 3}}] // MatrixForm
- l4213 = Table[{i, j, k, l}, {l, dim[[4]]}, {j, dim[[2]]}, {i,
- dim[[1]]}, {k, dim[[3]]}] // Flatten[#, {1, 2, 3, 4}] &
- Map[t[[#[[1]], #[[2]], #[[3]], #[[4]]]] &,
- l4213](*Flatten based on {4,2,1,3}*)// MatrixForm
复制代码 当然了,你也可以用原来的u = {{a, b}, {c, d}}试一下。 |
|