matlab网格划分提取坐标,ANSYS-划分网格后导出单元和结点坐标等信息

本文的目的是将ANSYS中划分好的单元网格导入到MATLAB中,并显示。

方法很简单(对三维实体单元不适用):

在ANSYS中建立模型,进行网格划分,用命令"cdwrite,geom,filename,ans"将网格划分结果导出,filename是用户指定的文件名。

该命令产生的filename.ans实际上是一个ASCII文本文件,用记事本打开,可以看到其中的数据记录格式,前四行是字符,跳过,紧接着是 一个列表,参照ANSYS中的模型数据,很容易看出这是模型中所有节点的坐标表。从第四列开始分别是节点的X、Y、Z坐标(注意其中有省略的项)。

如果X坐标为负,则可能和前面一列的0接在一起,在MATLAB中被认为是一个数,要做适当的处理。

再跳过节点坐标表下的三行字符,下面是一个单元和节点的关系表。表11列是单元的序号,12列之后是该单元包含的节点列表。如果是杆单元则有两个节点,四边形单元则有四个节点。

在MATLAB中读入上述两个列表(fopen打开文件,fgetl按行读入字符串,str2num将读入的字符串转为数据,fclose关闭文件),用patch命令显示面片:

patch(‘Vertices‘,节点坐标表,‘Faces‘,构成单元的节点列表,‘FaceColor‘,[.39,.47,.64])

我只用杆单元和简单的四边形单元试了一下,没有问题。对于实体单元,每个单元中仅有各个顶点的列表,不能直接生成实体的各个面。

原文:https://www.cnblogs.com/xdd1997/p/13654643.html

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值