ANSYS apdl命令流笔记1---获取区域内单元编号

前言

ansys中选择某区域内的所有单元很容易,但由于一些特殊情况需要获取区域内某些或所有单元,情况一复杂就没有那么简单了,本文主要介绍如何获取区域内所有单元编号并存于数组中,以便过后访问和查看。

一、案例模型

几何模型(向量标示,语句为/DEVICES,VECTOR,1)

在这里插入图片描述
有限元模型
在这里插入图片描述
融合并压缩所有单元编号
nummrg,all
numcmp,all

二、操作流程

图中一共有几百个单元,要想获取中间区域(面2)中所有单元编号,分为以下几步。

1.获取前先设置好相关参数

*set,nn,2	!设置参数nn等于2,定位中间面编号
esel,all	!选择所有单元
*get,emax,elem,,num,max	!获取最大单元编号
asel,s,area,,nn	!选择面2区域
esla		!选择依附于面2的单元
*get,nse,elem,,count	!获取中间区域的单元数
*dim,ne,,nse	!定义一个维数等于单元数的数组

选择结果如图所示
在这里插入图片描述

2.读入数据

an=0	!定义参数,用于计算单元数
*do,I,1,emax	!对所有单元进行循环
	*if,esel(i),eq,1,then	!判断单元i是否被选择
		an=an+1
		ne(an)=i	!把单元保存于数组中
	*endif
*enddo		

其中 *if,esel(i),eq,1 是判断第i个单元是否被选中,因为前面我们已经通过命令 esla 将面2中的单元选中,如果esel(i)等于1的话,那就说明第i个单元就是面2中的单元。

结果展示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

选择上图左边是数组维数,右边是单元编号,因为中间区域单元编号刚好是1-43号单元,所以就显得一 一对应,如果区域内单元不连续的话,就会更明显了。

  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值