ANSYS APDL基础知识之 文件读取和数据输出

在采用ANSYS进行结构仿真分析的时候,仿真报告和结果需要做到图文并茂,那如何做到图文并茂呢,本文主要是讲述“文”的部分。

为了将 图文并茂 的“文”做到位,就需要将仿真的分析数据输出到文件中。

本文主要讲述如何通过APDL将ANSYS计算的结果数据输出到文件中。

本文内容摘录于书本和网络,如有侵权,请告知。

文件读出命令有两个:*Vwrite 和*Mwrite。他们的功能是把ansys变量和数组中的数据输出到文件中。

*Vwrite命令、*Mwrite命令和之前的*Vread命令一样,不能直接使用,必须要通过宏文件的形式来实现其功能。在使用*Vwrite命令进行数据写出之前,必须要用*Cfopen命令打开或者创建一个数据文件,将数据写入这个文件之后,采用*Cfclos命令关闭文件,这俩命令配对使用。

*Vwrite命令用于把数组、数值参数、字符参数或者常量写入数据文件中。它一次最多可以写入19个参数,使用该命令时,紧跟着该命令的下一行必须是FORTRAN77的格式规定,用来规定*VWRITE后面参数的输出格式(比如(4f6.0))。

*Vwrite命令的使用格式:*VWRITE, Par1, Par2, Par3, Par4, Par5, Par6, Par7, Par8, Par9, Par10, Par11, Par12, Par13, Par14, Par15, Par16, Par17, Par18, Par19

其中,Par1~Par19是依次写出的19个参数或者常数,某个空值表示忽略,所有都忽略则输出一空行。允许写出的包括常数、变量与数组,包括数值型和字符型数据。

*Cfopen命令的使用格式:*CFOPEN, Fname, Ext,——,Loc

其中,fname是带路径的文件名,默认路径是工作目录,默认文件名是jobname;ext是文件的拓展名,如果fname为空,那么扩展名缺省为cmd。--表示该域是不需要使用的值域。loc用于确定打开的文件已经存在时,缺省表示采用覆盖方式写数据到文件中,设置成append表示采用追加方式写数据到文件中。

与*cfopen成对使用的另外一个命令时*cfclos命令,总是在*cfopen命令与一序列数据*vwrite命令之后,用于关闭用*cfopen命令打开的文件。

*create,temple,mac
Finish
/clear
item='weight:'
data=234.56
unit='kg'
*cfopen,byb,dat
*vwrite
(5x,'*vwrite demo')
*vwrite,
('***********************')
*vwrite,item,data,unit
(a8,f10.2,a8)
*vwrite,
('******array parameter output demo******')
*cfclos
*end
Temple

上面的命令流运行后,byb.dat文件里的内容为:

     *vwrite demo

***********************

Weight  234.56    kg     

******array parameter output demo******

另一个将数组中的数据输出到文件中的命令是*Mwrite命令

*Mwrite命令的使用格式:*MWRITE, ParR, Fname, Ext, --, Label, n1, n2, n3

其中,ParR是要输出的数组名;

Fname 是存放数据的外部文件名(如果放在工作目录下,直接写文件名即可,否则需要带路径,路径中不可以存在中文);

Ext是存放数据的外部文件的扩展名;

Label 是取值顺序标识符, 可取值 IJK, IKJ, JIK, JKI, KIJ, KJI, 或 blank (默认为 IJK),表示对数组 ParR 写出的顺序。如 IJK 表示先写列,再写行(先 K,再 J,再 I;对于二维数组,先写列,下标 J 改变最快),JIK 表示先写行,再写列(先 K,再 I,再 J;对于二维数组,先写行,下标 I 改变最快)

n1, n2, n3 表示按上面的顺序,各下标分别要写出的数据个数,

同样,在使用*Mwrite命令时,紧跟着该命令的下一行必须是FORTRAN77的格式规定,用来规定*VWRITE后面参数的输出格式。

Fortran语言的格式说明有以下:

1)’’(一对单引号):用于在输出的数据的时候,输出解释字符串,常常用来增加一些说明文字,增加可读性;

2)nX:输出n个空格;

3)/:结束当前行的输出,转到下一行输出,如果两个/连续出现,则添加一个空行;

4)Fw.d:以w个字符文本框来输出浮点数,小数部分占d个字符宽,如果要输出整数,让d取0即可;

  1. Aw:以w个字符的宽度来输出字符串。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值