【问题标题】:Define a non-cartesian mesh in fipy在 fipy 中定义一个非笛卡尔网格
【发布时间】:2021-09-16 16:59:53
【问题描述】:

我正在尝试模拟在 fipy 中具有 P6mm 对称性的 2D 系统的基本单元,并且我想定义一个描述下述系统的非笛卡尔网格。然而,

mesh = fipy.Grid2D(nx = 10, ny = 10, dx = 1., dy = 1.)

只返回统一的网格。我想改变 FaceVariable,但它似乎只接受布尔变量。我也可以模拟一个与此等效的笛卡尔系统,但会有多余的数据。有人会有更好的方法吗?

或者,我可以这样定义我的系统。这样做有什么异议吗?

【问题讨论】:

  • Grid2D 是一个工厂函数,它根据网格间距生成 UniformGrid2D 或 NonUniformGrid2D。 UniformGrid2D 的文档清楚地表明它会创建矩形网格,但 GridND needs to be clear 的其他文档始终会生成笛卡尔网格。

标签: python-3.x fipy


【解决方案1】:

FiPy 没有为您提供所需的网格类。 UniformGrid2D 可用作等边三角形网格(或六面体网格,如果确实需要)的起点。不过,StackOverflow 并不是合适的场所。如果您愿意,请open an issue。

Gmsh 将生成结构化的三角形网格,但我不确定它是否可以强制生成规则的等边三角形。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2023-03-14
  • 2018-10-12
  • 2018-05-10
  • 1970-01-01
  • 1970-01-01
  • 2023-01-30
  • 1970-01-01
  • 2019-10-16
相关资源
最近更新 更多