我有一个三维(X,Y,Z)的矩形平行六面体:1 x 1 x 10。我想创建一个具有3 x 3 x 21节点和2 x 2 x 20有限元的网格,这些有限元是具有2 x 2 x 2积分点的8节点实体单元。如何使用Python完成此操作并收集所有积分点的坐标?

(图片来源: Anton Zaicenco)
感谢您的关注!
发布于 2014-01-03 03:37:33
虽然我仍然不能完全确定您想要什么,但这里有一个使用numpy.meshgrid打印所有节点的示例:
import numpy
x = numpy.linspace(0, 1, 3)
y = numpy.linspace(0, 1, 3)
z = numpy.linspace(0, 10, 21)
mesh = numpy.meshgrid(x, y, z)
nodes = list(zip(*(dim.flat for dim in mesh)))
for node in nodes:
print(node)尽管这也可以通过三个简单的循环来完成:
for x in numpy.linsapce(0, 1, 3):
for y in numpy.linspace(0, 1, 3):
for z in numpy.linspace(0, 10, 21):
print((x, y, z))有关numpy.meshgrid用法的更多信息,请参阅documentation。
https://stackoverflow.com/questions/20881292
复制相似问题