找回密码
 注册
Simdroid-非首页
查看: 74|回复: 2

命令流查询未划分网格的实体

[复制链接]
发表于 2018-12-17 16:44:47 | 显示全部楼层 |阅读模式 来自 四川成都
实体较多情况时,划分完网格后,不确定是不是所有的实体都划分了网格,列出未划分网格的实体是一个检查办法。
对于高版本的ANSYS,可以用VSLE命令,只是听说,没有亲测。
对于低版本,可用下述命令流查询。命令流的原始版本来自网络,有微小问题,相应作了微小改动,测试有效。

原始版本网址:
https://stuch.cn/question/269
https://zhidao.baidu.com/question/2052761491168432547.html

修改版本:

1. 思路:
(1) 选择所有实体;
(2) 使用*GET命令得到最大实体编号VMAX;
(3) 创建一个数组VEN,用于存储实体的单元数;
(4) 从1到VMAX循环,循环变量I,循环内容:选择第I个实体,如果该实体不存在(VSEL(I)=-1),在数组VEN(I)中填入-1;如果该实体存在,选择属于该实体的单元,用*GET命令得到单元数,在数组VEN中填入单元数,单元数为零表示该实体没有划分网格;
(5) 循环执行结束,检查数组中的数据,零值表示没有划分网格。

2. 命令流
ALLSEL,ALL
*GET,VMAX,VOLU,0,NUM,MAXD
*DIM,VEN,ARRAY,VMAX                       !定义数组,用于存储单元数
*DO,I,1,VMAX
  VSEL,S,,,I                                       !根据编号选择实体
  *IF,VSEL(I),GE,0,THEN                       !如果实体I存在
      ESLV,S                                       !选择属于该实体的单元
      *GET,EN,ELEM,0,COUNT               !得到当前实体包含的单元个数,存入EN
      VEN(I)=EN                                       !单元个数存入VEN(I)
  *ELSE                                               !如果实体I不存在
      VEN(I)=-1
  *ENDIF
*ENDDO

!显示未划分网格的实体
VSEL,NONE
*DO,I,1,VMAX
  *IF,VEN(I),EQ,0,THEN                     !选择单元个数为零的实体
    VSEL,A,,,I
  *ENDIF
*ENDDO
VPLOT


发表于 2018-12-17 22:57:07 | 显示全部楼层 来自 瑞典
Simdroid开发平台
workbench一键搞定

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-26 12:00 , Processed in 0.029156 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表