|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 glandetian 于 2015-9-3 16:33 编辑
用间断有限元方法计算某问题,最终需要用tecplot等软件将结果显示出来。
为了高精度地显示计算结果,我们总是想把单元划分得更细一些,比如,一个单元分成4个单元来显示。(当然,有时候4个都还嫌少)
而tecplot不能显示太多的zone,所以需要重新做单元编号、节点编号的工作,将所有的单元合并成一个zone。
单元编号还好说,新增加了单元,就在原来单元编号的基础上增加就行了。
可是节点编号就比较麻烦,因为边是相邻单元共享的。
这里,以四边形单元为例,提供一种在原来单元和节点编号的基础上的、新节点的节点编号方法,抛砖引玉
如图所示,设某单元原来的节点编号是1,2,3,4,现在要将这个单元划分为4个单元,需要新增加5个节点
首先,增加中心的那个节点,这个节点的编号比较好办,只需要在原来节点编号的基础上顺延就可以了。图中,假设中间的节点编号顺延至100。
其次,在每条边的中点增加一个节点,节点先编号为一个实数,这个实数由整数部分和小数部分组成。整数部分是这条边上原来的两个节点编号较小的那个整数,小数部分是较大的那个整数,最后在末尾加一个数字1。这样可以保证在同一个位置,节点的编号是唯一的。图中,第一条边,原来的节点编号是1和2,那么中间的节点编号就是1.21,第二、三、四条边类似。在最后加一个数字1,是为了防止一种情况:比如,一号节点是9,二号节点是10,四号节点是100,如果不加一个数字1,那么,第一和第四条边中间的节点编号就都是9.1了。加了数字1,那么,第一条边中间节点编号就是9.101,而第四条边的中间节点编号是9.1001,不同了。
对所有的单元都按上面的办法细分为4个单元,并作节点编号,最后,将所有的非整数的节点编号放到一个一维数组里,做一个从小到大的排序工作,那么,每一个非整数的节点编号都对应一个排列序号,我们把这个序号加上原来网格的节点编号的最大值,就是新加节点的编号了,这个编号是整数。
这样就完成了新网格的节点和单元的编号工作。
如果您有更好的方法,请不吝赐教!谢谢! ^_^
|
|