首页/文章/ 详情

hypermesh二次开发-统计三角形网格占比

3月前浏览1351


在结构分析时,对于多数的薄壁结构都是用壳单元处理,大部分单元为四边形网格,由于结构特征等原因避免不了出现三角形网格,通常低阶三角形网格会降低计算精度,因此需要控制三角形网格占比,各个领域对三角形网格占比要求不一,比如轨道行业要求三角形网格占比不超过总网格的5%。

为了快速准确统计不同类型网格数量及三角形网格占比,可以用TCL对HyperMesh进行二次开发。

1.遍历所有的壳单元,并对每个单元中的网格进行分类统计。

2.计算三角形网格占总网格数量的比例,并将结果输出到一个TXT文档中。


这里是一个简单的代码示例,供参考:


# 获取所有壳单元

set elements [hm_getelements shell]

# 初始化四边形网格和三角形网格数量

set quad_count 0

set tri_count 0

# 遍历所有壳单元

foreach elem $elements {

    # 获取当前单元中的网格类型

    set mesh_type [hm_getentityvalue elements $elem dataname=shell_type]

    # 根据网格类型进行统计

    if {$mesh_type == "QUAD"} {

        incr quad_count

    } elseif {$mesh_type == "TRIA"} {

        incr tri_count

    }

}

# 计算三角形网格占比

set total_count [expr {$quad_count + $tri_count}]

set tri_percentage [expr {($tri_count / $total_count) * 100}]

# 输出结果到TXT文档

set file_id [open "mesh_stats.txt" w]

puts $file_id "四边形网格数量: $quad_count"

puts $file_id "三角形网格数量: $tri_count"

puts $file_id "三角形网格占比: $tri_percentage%"

close $file_id

以上只是一个简单的示例代码,仅提高编制思路,需要根据实际需求和数据结构进行适当的调整。

来源:仿真老兵
HyperMesh二次开发控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-08-23
最近编辑:3月前
无情浪子
硕士 签名征集中
获赞 19粉丝 9文章 52课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈