您当前的位置:matlab资源网文章中心资料 → 文章内容

Ansys中划分的网格导入MATLAB

作者:Liuxqsmile  来源:转载http://liuxqsmile.blogbus.com/logs/17282280.html  发布时间:2008-4-10 18:42:46
本文的目的是将ANSYS中划分好的单元网格导入到MATLAB中,并显示。

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

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

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

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

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

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

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

我只用杆单元和简单的四边形单元试了一下,没有问题。对于实体单元,每个单元中仅有各个顶点的列表,不能直接生成实体的各个面。
文章评论 (评论内容只代表网友观点,与本站立场无关!)

用户名: 查看更多评论

分 值:100分 85分 70分 55分 40分 25分 10分 0分

内 容:

         (注“”为必填内容。) 验证码: 验证码,看不清楚?请点击刷新验证码

关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 -