在采用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即可;
- Aw:以w个字符的宽度来输出字符串。