fem_3d网格划分

 

 

需要的变量


 

pos:点的位置

nie:各单元点的全局编码

ndi:dirichlet面的点和需要强加的值(第一类边界条件)

ns:第三类边界条件

p_corner:用来记录角上的点

relation_e:单元之间的位置关系

步骤1:建立初始四面体


 1.首先分割各个面

2.遍历所有在角上的面,其与相邻的三个顶点形成四面体,可以对该四面体进行初始化的条件为:

a.该四面体在物体内部(可利用四个点的顺序判断)

b.首先考虑三面边界的四面体

c.没有其他点在该四面体内部

删除掉该四面体后,更新边界面:

a.如果该四面体两面为边界,则更新边界

b.如果该四面体三面为边界,则删除一点

重复上述过程,直至结束

需要的函数


 1.is_tetrahedron([ip1,ip2,ip3,ip4])

判断四个点是否可以组成四面体:满足逆时针上原则

2.is_in_tetrahedron(ip_test,[ip1,ip2,ip3,ip4])

判断一个点是否在四面体内部

3.

步骤2:填充内部点


 

 

需要的函数


 

 

其他函数


 

1.draw_object

绘制立体的函数

posted @ 2017-07-31 11:19  I know you  阅读(...)  评论(...编辑  收藏