Я новичок в numpy и пытаюсь найти способ Pythonic :) для создания обычной трехмерной сетки точек.
С numpy функция ndindex почти делает то, что я хочу, но я понимаю, что она работает только с целыми числами.
import numpy as np
ind=np.ndindex(2,2,1)
for i in ind:
print(i)
>>>(0, 0, 0)
(0, 1, 0)
(1, 0, 0)
(1, 1, 0)
Я в основном хочу того же, но использую поплавки для определения значений.
Я определяю размеры коробки и количество частей x, z и z.
Начнем с создания линейных пространств x, y и z.
import numpy as np
corner1 = [0.0, 0.0, 0.0]
corner2 = [1.0, 1.0, 1.0]
nx, ny, nz = 5, 3, 7
xspace = np.linspace(corner1[0], corner2[0], nx)
yspace = np.linspace(corner1[1], corner2[1], ny)
zspace = np.linspace(corner1[2], corner2[2], nz)
Теперь, как я должен объединить их, чтобы получить массив всех точек в моей сетке? Спасибо за уделенное время!
ndindex
возвращает генератор, а не массив. Но это не на 100% ясно из вопроса. - person senderle   schedule 18.05.2012