【发布时间】:2013-02-27 14:38:13
【问题描述】:
我有一个有限元程序的结果,该程序在三维空间中的规则间隔网格位置给出了各种感兴趣的测量值(例如温度、密度、压力)。
值沿每个坐标等间距分布,但不同坐标的间距可能不同。例如,
x1 = [0, 0.1, 0.2, ..., 1.0] (a total of NX1 pts)
x2 = [0, 0.5, 1.0, ..., 20] (a total of NX2 pts)
x3 = [0, 0.2, 0.4, ..., 15] (a total of NX3 pts)
软件输出的结果格式如下:
x1_1, x2_1, x3_1, f_x, g_x, h_x
x1_1, x2_1, x3_2, f_x, g_x, h_x
x1_1, x2_1, x3_3, f_x, g_x, h_x
...
x1_1, x2_2, x3_1, f_x, g_x, h_x
x1_1, x2_2, x3_2, f_x, g_x, h_x
x1_1, x2_2, x3_3, f_x, g_x, h_x
...
x1_2, x2_1, x3_1, f_x, g_x, h_x
x1_2, x2_1, x3_2, f_x, g_x, h_x
x1_2, x2_1, x3_3, f_x, g_x, h_x
...
其中 f_x、g_x、h_x 是特定网格点的感兴趣度量。
我想把上面的数据格式转换成f、g、h的(NX1 x NX2 x NX3)个numpy数组。
一些结果集相当大 (80 x 120 x 100)。
有没有人有任何提示可以有效地进行这种转换?
【问题讨论】:
-
有没有办法可以提供一些 Python 代码形式的小样本数据来说明你的问题?我不确定我是否理解你的输出格式以及你说你想要数组“for”f、g 和 h 时的意思。