mesh.py 文件源码

python
阅读 41 收藏 0 点赞 0 评论 0

项目:nekpy 作者: NekBox 项目源码 文件源码
def get_mesh_data(self):
    import numpy as np
    letters = [chr(97+i) for i in range(26)] + [chr(65+i) for i in range(26)]
    mesh = " {:11d}  {:d} {:11d}           NEL,NDIM,NELV".format(np.prod(self.n), 3, np.prod(self.n))
    for e in range(self.elements.shape[0]):
      ix = int(np.rint((self.elements[e,0] - self.root[0])/self.delta[0]))
      iy = int(np.rint((self.elements[e,4] - self.root[1])/self.delta[1]))
      iz = int(np.rint((self.elements[e,8] - self.root[2])/self.delta[2]))
      mesh += "\n            ELEMENT {:11d} [{:5d}{:1s}]  GROUP  0\n".format(e+1, iz+1, letters[(ix+iy*self.n[0]) % 52]) 
      mesh += "  {: 13.10E}  {: 13.10E}  {: 13.10E}  {: 13.10E} \n".format(*(self.elements[e, 0: 4].tolist())) 
      mesh += "  {: 13.10E}  {: 13.10E}  {: 13.10E}  {: 13.10E} \n".format(*(self.elements[e, 4: 8].tolist())) 
      mesh += "  {: 13.10E}  {: 13.10E}  {: 13.10E}  {: 13.10E} \n".format(*(self.elements[e, 8:12].tolist())) 
      mesh += "  {: 13.10E}  {: 13.10E}  {: 13.10E}  {: 13.10E} \n".format(*(self.elements[e,12:16].tolist())) 
      mesh += "  {: 13.10E}  {: 13.10E}  {: 13.10E}  {: 13.10E} \n".format(*(self.elements[e,16:20].tolist())) 
      mesh += "  {: 13.10E}  {: 13.10E}  {: 13.10E}  {: 13.10E} ".format(*(self.elements[e,20:24].tolist())) 
    return mesh
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号