首页/文章/ 详情

ANSYS的编号压缩命令NUMCMP暗藏杀招

3年前浏览4555

用法:NUMCMP,Label

解释:该命令对Label项(如NODE、ELEM、KP、LINE、AREA、VOLU、MAT、TYPE、REAL、CP、CE或ALL)等进行编号压缩,即将不连续的编号改为连续的编号。

用途:在创建几何模型过程中,图素编号不连续是很正常的,尤其是布采用尔运算建模。因此,为了便于方便建模或数据处理,经常会执行编号压缩命令。

问题:通常对NODE、ELEM、KP、LINE、AREA、VOLU进行编号压缩或所有这些进行编号压缩,往往会执行“NUMCMP,ALL”,这就会对所有图素或定义项(如MAT、TYPE、REAL)等进行压缩。如果MAT、TYPE、REAL在定义时确实是不连续的,则在执行“NUMCMP,ALL”后,编号自然成为连续的。这会导致未定义、属性混乱等致命错误,而有些错误还不易发现。

举例1:编号压缩导致未定义(如实常数等)

finish$/clear$/prep7

et,1,beam189

mp,ex,1,2e11

mp,prxy,1,0.3

mp,ex,8,1.9e11

mp,prxy,8,0.2

sectype,1,beam,rect

secdata,0.2,0.2

k,1

k,2,6

k,3,6,3

l,1,2

l,2,3

lsel,s,,,1

latt,1,,1,,,3,1

lsel,s,,,2

latt,1,,1,,,1,8

lsel,all

numcmp,all !单元网格划分后使用了编号压缩命令

!mplist查看只有材料号1和2,材料号8已消失

esize,0.5

lmesh,all

dk,1,all

fk,3,fx,1000

/solu

solve !出现未定义材料号8的错误

错误提示

举例2:赋予的单元属性非己所愿

/prep7

et,1,link8

et,2,shell181

mp,ex,1,2e5

mp,prxy,1,0.31

r,2,10 !壳厚

r,4,1200 !杆面积

r,6,30 !壳厚

blc4,,,200,100 !为简单起见,仅仅创建一个面

!----此间有很多建模操作从略

numcmp,all !建模过程中使用编号压缩命令

aatt,1,2,2

!赋予2号实常数,原意板厚10,但实际上2号实常数已是1200的值

esize,10

mshkey,1

amesh,all

/eshape,1

eplot !厚度显示不正确

image.png

无单元厚度显示-带单元厚度显示

小结:在网格划分之前执行“numcmp,all”命令,如果定义了不连续的type/mat/real等,其编号被同时压缩,会导致后面的误引用,从而产生不宜发现的错误。

如果在网格划分之后执行“numcmp,all”命令,虽然也被压缩了,但ANSYS会修改某些与之相关的属性(如real),而有些则不会(如MAT)。

因此,在全部几何模型创建完成之后,再定义单元类型、材料、实常数等为上策,如此可防止出现上述问题。

代码&命令Mechanical APDLMechanicalANSYS 其他Workbench
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2020-11-04
最近编辑:3年前
王新敏
硕士 | 教授 好好学习,天天快乐
获赞 118粉丝 580文章 99课程 0
点赞
收藏
未登录
还没有评论

课程
培训
服务
行家

VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈