ansys 数据的输入输出
对ansys主要命令的解释

对ansys主要命令的解释1,/PREP7 ! 加载前处理模块2,/CLEAR,NOSTART ! 清除已有的数据, 不读入启动文件的设置(不加载初始化文件)初始化文件是用于记录用户和系统选项设置的文本文件/CLEAR, START !清除系统中的所有数据,读入启动文件的设置/FILENAME, EX10.5 ! 定义工程文件名称/TITLE, EX10.5 SOLID MODEL OF AN AXIAL BEARING ! 指定标题4,F,2,FY,-1000 ! 在2号节点上施加沿着-Y方向大小为1000N的集中力6,FINISH ! 退出模块命令7,/POST1 ! 加载后处理模块8,PLDISP,2 ! 显示结构变形图,参数“2”表示用虚线绘制出原来结构的轮廓9,ETABLE,STRS,LS,1 ! 用轴向应力SAXL的编号”LS,1”定义单元表STRSETABLE, MFORX,SMISC,1 ! 以杆单元的轴力为内容, 建立单元表MFORXETABLE, SAXL, LS, 1 ! 以杆单元的轴向应力为内容, 建立单元表SAXLETABLE, EPELAXL, LEPEL, 1 ! 以杆单元的轴向应变为内容, 建立单元表EPELAXLETABLE,STRS_ST,LS,1 !以杆件的轴向应力“LS,1”为内容定义单元表STRS_STETABLE, STRS_CO, LS,1 !以杆件的轴向应力“LS,1”定义单元表STRS_COETABLE,STRSX,S,X ! 定义X方向的应力为单元表STRSXETABLE,STRSY,S,Y ! 定义Y方向的应力为单元表STRSY*GET,STRSS_ST,ELEM,STEEL_E, ETAB, STRS_ST !从单元表STRS_ST中提取STEEL_E单元的应力结果,存入变量STRSS_ST;*GET, STRSS_CO,ELEM,COPPER_E,ETAB,STRS_CO”从单元表STRS_CO中提取COPPER_E单元的应力结果,存入变量STRSS_CO10 FINISH !退出以前的模块11, /CLEAR, START ! 清除系统中的所有数据,读入启动文件的设置12 /UNITS, SI !申明采用国际单位制14 /NUMBER, 2 !只显示编号, 不使用彩色/NUMBER, 0 ! 显示编号, 并使用彩色15 /SOLU ! 进入求解模块:定义力和位移边界条件,并求解ANTYPE, STATIC ! 申明分析类型是静力分析(STATIC或者0)OUTPR, BASIC, ALL ! 在输出结果中, 列出所有荷载步的基本计算结果OUTPR,BASIC,ALL !指定输出所有节点的基本数据OUTPR,BASIC,LAST ! 选择基本输出选项,直到最后一个荷载步OUTPR,,1 ! 输出第1个荷载步的基本计算结果OUTPR,BASIC,1 ! 选择第1荷载步的基本输出项目OUTPR,NLOAD,1 ! 指定输出第1荷载步的内容OUTRES,ALL,0 !设置将所有数据不记录到数据库。
ansys 数据的输入输出

关于ANSYS的APDL中数据的输入输出格式一、输入格式要求ANSYS的APDL语言其语法等各方面均与Fortran有很大的共通之处。
在数据的输入输出格式方面也可以参考Fortran。
对于初学者来说,输入数据时更容易引发错误,所以下面谈几点在这方面的小认识。
APDL 从外部文件输入数据,一般是采用*vread命令实现,而输入格式一般是在此命令的下一行定义,关于此命令的具体应用,可参见ANSYS帮助。
在输入格式方面与Fortran不同:(1)APDL在数值方面没有整型(I)、G型描述符,字符型数据采用A描述符,没有H描述符。
(2)在Fortran中如果数据是整数,但是输入格式采用实数(如单精度浮点型F),则系统可以按指定格式自动为数据加上小数点,但在APDL中如输入数据为整数,如:6,则格式Fw.d中的d只能为零,否则会出现读入错误;而如果是6.则Fw.d中的d可以不为0。
另外在输入时还容易引起输入错误的是:(1) 输入格式的长度大于数据长度(指前一个数据的起至紧接的下一个数据的起始前一位,小数点和负号均占一位),如6._ _ _ _-5.6,前面的数据长度应为6,如果输入格式Fw.d中的w>6,则会出现读入错误;(2)格式语句应置于*v r e a d的下一行,两行之间可以有空行,但不能有其它语句,甚至是注释语句也不能有。
二、输出格式输出与输入在格式方面基本一致,用*vwrite执行,但也有不同之处:输出时可以使用%c控制字符输出,%wI控制整数输出;%w.pF或%w.pE或%w.pG 控制实数输出;不能加括号。
如格式语句:(F6.0,F5.2,A3),对应于:%6.0F%5.2F%3c;应注意后一种格式中没有用逗号相隔开,也没有用括号括起,如有逗号,逗号也将一并输出。
注意:输入输出格式最好从一行的开始写,前面不要有空格用%号(%wI)的这种格式可以输出整型数字。
%这种控制语句也应紧接*vwrite行,可以有空行,但不能有其它语句夹在中间(注释也不行)。
有限元分析软件ANSYS命令流中文说明4 4

有限元分析软件ANSYS命令流中文说明4 4有限元分析软件ANSYS命令流中文说明4/42010-05-23 21:151设置分析类型ANTYPE,Antype,status,ldstep,action其中antype表示分析类型STATIC:静态分析MODAL:模态分析TRANS:瞬态分析SPECTR:谱分析2 KBC,KEY制定载荷为阶跃载荷还是递增载荷EKY=0递增方式KEY=1阶跃方式3 SOLVE开始一个求解运算4 LSSOLVE读入并求解多个载荷步5 TIME,time设置求解时间有时在分析中需要进入后处理,然后在保持进入后处理之前的状态的情况下接着算下去,可以使用以下的方法:PARSAV,ALL,PAR,TXT!PARSAV命令是储存ANSYS的参数,ALL代表所有参数,PAR是文件名,TXT是扩展名/SOLU ANTYPE,REST,CruStep-1,,CONTINUE!ANTYPE是定义分析类型的命令,REST代表重启动,CruStep代表本载荷步的编号PARRES,NEW,PAR,TXT!PARRES是恢复参数的命令,NEW表示参数是以刷新状态恢复,PAR和TXT 代表了储存了参数的文件名和扩展名如果有单元生死的问题,可以这样处理:ALLSEL,ALL*GET,E_SUM_MAX,ELEM,NUM,MAX!得到单元的最大编号,即单元的总数ESEL,S,LIVE!选中"生"的单元*GET,E_SUM_AL,ELEM,COUNT*DIM,E_POT_AL,E_SUM_MAX!单元选择的指示*DIM,E_NUM_AL,E_SUM_AL!单元编号的数组J=0!读出所选单元号*DO,I,1,E_SUM_MAX*VGET,E_POT_AL(I),ELEM,I,ESEL!对所有单元做循环,被选中的单元标志为"1"*IF,E_POT_AL(I),EQ,1,THEN J=J+1 E_NUM_AL(J)=I*ENDIF*ENDDO ALLSEL,ALL在重启动之后恢复单元生死状态*if,E_SUM_AL,ne,0,then*do,i,1,Num_Alive esel,a,E_NUM_AL(i)*enddo ealive,all allsel*endif/WINDOW,WN,XMIN,XMAX,YMIN,YMAX,NCOPY注意x的坐标是-1到1.67,y坐标是-1到1 Xmin=off on,FULL,LEFT,RIGH,TOP,BOT,LTOP,LBOT,RTOP,RBOT注意一个问题,除了1号窗口外,其他的不能用鼠标操作,只用先发/view 和/dist,然后用/replot。
ANSYS数据导出:节点、单元、振型

又参考了一下ANSYS帮助文件中的APDL编程部分,以及网上的一些意见,可以有更方便地得到节点坐标,单元内的节点列表的方法。
在一个文本文件中写几条命令就可以了。
而且可以指定输入写入的格式,不会出现两个数据首尾相接,在MATLAB中无法区分的问题。
得到节点坐标和单元内包含的节点的程序如下,可以在ANSYS的帮助中找到每一个命令的详细解释。
将下面的程序拷贝到一个文本文件中filename.txt,保存,去掉后缀名TXT,再拷贝到工作目录下。
在命令提示符下输入*use filename,生产一个geomfile.txt文件,打开可以看到里面的数据! Get the coordinates of each node! Get the node list of each element! By:LiuXiaoqin(liuxqsmile@), at nuaa,*get,nodenum,node,,num,max ! 获得节点的数目*dim,nodepos,array,nodenum,3 ! nodepos存放节点的坐标*do,i,1,nodenum,1*get,nodepos(i,1),node,i,loc,x !获得节点的X坐标*get,nodepos(i,2),node,i,loc,y*get,nodepos(i,3),node,i,loc,z*enddo*get,elemnum,elem,,num,max !得到单元的总数目*dim,elemlist,array,elemnum,6 !单元包含的节点列表,指定每个单元包含6个节点,根据情况修改*do,i,1,elemnum,1*do,ii,1,6,1*get,elemlist(i,ii),elem,i,node,ii !获得节点编号*enddo*enddo*cfopen,geomfile,txt !打开文件,写入数据*vwrite,0(F8.0,' Coordinates of each node')*vwrite,sequ,nodepos(1,1),nodepos(1,2),nodepos(1,3)(F8.0,3e16.8)*vwrite,0(F8.0,' Nodes No. of each element')*vwrite,sequ,elemlist(1,1),elemlist(1,2),elemlist(1,3),elemlist(1,4),elemlist(1,5),elemlist(1,6)(F8.0,6f8.0)*vwrite,0(F8.0)*cfclos获得振型的方法也类似,首先获得模态的个数,然后读取每一阶模态的频率和每个节点的偏移量!从ANSYS中导出模态频率及振型数据!By:LiuXiaoqin(liuxqsmile@), at nuaa,*get,nodenum,node,,num,max*set,tempvar,0*set,modenum,0!获得模态的阶数*do,i,1,100,1*get,tempvar,mode,i,freq*if,tempvar,LT,0.0001,THEN*if,modenum,LT,0.0001,THEN*set,modenum,(i-1)*endif*endif*enddo!*dim,modefqda,array,modenum,2*dim,modeshp,array,nodenum,3*cfopen,modefile,txt*do,i,1,modenum,1*get,modefq,mode,i,freq*get,modeda,mode,i,damp*vwrite,modefq,modeda(2e16.8)set,1,i!获得每个节点的位移*do,ii,1,nodenum,1*get,modeshp(ii,1),node,ii,u,x*get,modeshp(ii,2),node,ii,u,y*get,modeshp(ii,3),node,ii,u,z*enddo*vwrite,sequ,modeshp(1,1),modeshp(1,2),modeshp(1,3)(F8.0,3e16.8)*vwrite,0(F8.0)*enddo*cfclos。
在ANSYS中使用VWRITE和VREAD命令输出和读入数据

其中:fname是带路径的文件名(两者允许至多250字符长度),缺省路径为工作目录,文件名缺省为jobnmae。ext是文件的扩展名(至多是8个字符长度)。如果fname为空,那么扩展名缺省为cmd。--表示该域是不需要使用的值域。loc用于确定打开的文件已经存在时,缺省表示采用覆盖方式写数据到文件中,设置成append表示采用追加方式写数据到文件中。
与*cfopen成对使用的另外一个命令时*cfclos命令,总是在*cfopen命令与一序列数据*vwrite命令之后,用于关闭用*cfopen命令打开的文件。
*cfclos命令的使用格式如下:*cfclos
在*vwrite命令行之后必须紧跟写出数据的格式说明行,规定*vwrite所写出的每项的数据的格式描述符。注意:格式行前面不需要format格式标识字,直接填写一序列的格式描述符,所有的格式描述符必须用一对圆括号括起来。常用的格式描述符的说明用法如下:
注意:该操作不能通过ansys命令输入窗口进行执行,只能通过外部文件运行。。
数组矢量要指定起始元素位置(如MYARRAY(1,2,1))。可以用表达式来计算数据文件中每一行的位置。关键字SEQU将从1开始写一个连续的整数列。
*vwrite命令的使用格式如下:
*VWRITE, Par1, Par2, Par3, Par4, Par5, Par6, Par7, Par8, Par9, Par10, Par11,
bb(1)=''i am'',''a good'',''man''
*cfopen,byb,dat
ANSYS使用心得

1.图象的输出在PlotCtrls>Hardcopy>to file2.所有的Ansys命令可以通过File>write DB log file输出命令行(后缀为lgw的文件),可以通过记事本来修改;命令的读入通过File>read Input form3.Ok为执行该操作并退出,Apply为执行该操作但不退出。
4.帮助系统中,鼠标右键为进入下一章节(命令、字母、单元),鼠标中键为进入上一章节(命令、字母、单元)。
5.Jobname.db是当前数据库文件的备份。
命令RESUME_DB包含了上一工作状态的全部内容(命令,输入、结果),和read Input form *.lgw不一样(*.lgw只是存储了命令,还得一步步的执行,但是*.lgw能够修改,而Jobname.db不能修改)。
6.应该保存的文件有:log文件(.log);数据库文件(.db);结果文件(.rst,.rth);荷载步文件(.so1,.so2…);输出文件(.out);物理环节文件(.ph1,.ph2…)。
7.节点结果(Nodel solution)是节点处的平均值,而单元结果(Element solution)是非平均值。
8.粘结(Glue)和交迭(overlap)的区别:二者都是将图元连接在一起,并保留各自的边界。
会将所有相交或者重合的线、面打断,形成更为细小的线、面,为网格的划分提供方便。
不同的是,overlap必须是有重叠的部分。
使用相加(Add)重叠的部分将连接在一起,内部边界线将消失(Glue和overlap 不会)。
故,Glue和overlap适用于不同的物质或者要划分更为细致的单元。
9.注意全局坐标(有直角,球,圆柱坐标)、局部坐标(标识为11)、工作平面坐标的区别,可以相互进行切换(Workplane>Change Active CS to)激活,工作平面坐标是为了绘图方便而设立,可以自由设立平面(坐标指示按照右手螺旋法则)。
ansys 保存数据

Ansys保存数据分两步完成:
1、数据的提取:大多数情况下,比较关心的是最值,最值的提取通过nsort命令来完成,
nsort可以对特定的节点进行升序或降序排列,然后用*GET语句(*GET,par,sort,0,max/imax)得到最值。
2、通过这些方法处理的得到的数据往往希望把他们单独保存在一个文件里。
这需要另建一
个文件,输入命令*cfopen,*vwrite,*cfclos,完成文件的创建写入和关闭,其中*vwrite 的用法是1、输入文字:
*vwrite
(’要输入的文字’)
2写入变量值
*vwrite,par1,par2,…
(fw.d,’ ’,fw.d)
其中fw.d为数据格式,f表示浮点数,w为数据长度,d为小数位数。
在apdl中调用该文件采用/input语句,在GUI中file/read file,可以通过log日志查看录用的代码。
总结,APDL中完成了数据的处理,然后通过/input命令调用数据保存程序(在另外的txt文件中),就可以实现数据的保存了。
数据格式方面没有整数格式(Id),采用G格式可以灵活地表示出数据。
对ansys主要命令的解释

对ansys主要命令的解释/CLEAR,READ--清除内存中的所有数据。
“READ”选项表示是否读入初始化文件。
缺省项“START”表示读入STARTXX.ANS文件。
“NOSTART”表示不用读入STARTXX.ANS文件。
这里的“XX”表示ANSYS的版本号,如ANSYS5.7就是“57”,ANSYS7.0就是“70”本文给出了ansys主要命令的一些解释。
1,/PREP7 ! 加载前处理模块2,/CLEAR,NOSTART ! 清除已有的数据, 不读入启动文件的设置(不加载初始化文件)初始化文件是用于记录用户和系统选项设置的文本文件/CLEAR, START !清除系统中的所有数据,读入启动文件的设置/FILENAME, EX10.5 ! 定义工程文件名称/TITLE, EX10.5 SOLID MODEL OF AN AXIAL BEARING ! 指定标题4,F,2,FY,-1000 ! 在2号节点上施加沿着-Y方向大小为1000N的集中力6,FINISH ! 退出模块命令7,/POST1 ! 加载后处理模块8,PLDISP,2 ! 显示结构变形图,参数“2”表示用虚线绘制出原来结构的轮廓9,ETABLE,STRS,LS,1 ! 用轴向应力SAXL的编号”LS,1”定义单元表STRSETABLE, MFORX,SMISC,1 ! 以杆单元的轴力为内容, 建立单元表MFORXETABLE, SAXL, LS, 1 ! 以杆单元的轴向应力为内容, 建立单元表SAXLETABLE, EPELAXL, LEPEL, 1 ! 以杆单元的轴向应变为内容, 建立单元表EPELAXL ETABLE,STRS_ST,LS,1 !以杆件的轴向应力“LS,1”为内容定义单元表STRS_ST ETABLE, STRS_CO, LS,1 !以杆件的轴向应力“LS,1”定义单元表STRS_COETABLE,STRSX,S,X ! 定义X方向的应力为单元表STRSXETABLE,STRSY,S,Y ! 定义Y方向的应力为单元表STRSY*GET,STRSS_ST,ELEM,STEEL_E, ETAB, STRS_ST !从单元表STRS_ST中提取STEEL_E 单元的应力结果,存入变量STRSS_ST;*GET, STRSS_CO,ELEM,COPPER_E,ETAB,STRS_CO”从单元表STRS_CO中提取COPPER _E单元的应力结果,存入变量STRSS_CO10 FINISH !退出以前的模块11, /CLEAR, START ! 清除系统中的所有数据,读入启动文件的设置12 /UNITS, SI !申明采用国际单位制14 /NUMBER, 2 !只显示编号, 不使用彩色/NUMBER, 0 ! 显示编号, 并使用彩色15 /SOLU ! 进入求解模块:定义力和位移边界条件,并求解ANTYPE, STA TIC ! 申明分析类型是静力分析(STATIC或者0)OUTPR, BASIC, ALL ! 在输出结果中, 列出所有荷载步的基本计算结果OUTPR,BASIC,ALL !指定输出所有节点的基本数据OUTPR,BASIC,LAST ! 选择基本输出选项,直到最后一个荷载步OUTPR,,1 ! 输出第1个荷载步的基本计算结果OUTPR,BASIC,1 ! 选择第1荷载步的基本输出项目OUTPR,NLOAD,1 ! 指定输出第1荷载步的内容OUTRES,ALL,0 !设置将所有数据不记录到数据库。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关于ANSYS的APDL中数据的输入输出格式一、输入格式要求ANSYS的APDL语言其语法等各方面均与Fortran有很大的共通之处。
在数据的输入输出格式方面也可以参考Fortran。
对于初学者来说,输入数据时更容易引发错误,所以下面谈几点在这方面的小认识。
APDL 从外部文件输入数据,一般是采用*vread命令实现,而输入格式一般是在此命令的下一行定义,关于此命令的具体应用,可参见ANSYS帮助。
在输入格式方面与Fortran不同:(1)APDL在数值方面没有整型(I)、G型描述符,字符型数据采用A描述符,没有H描述符。
(2)在Fortran中如果数据是整数,但是输入格式采用实数(如单精度浮点型F),则系统可以按指定格式自动为数据加上小数点,但在APDL中如输入数据为整数,如:6,则格式Fw.d中的d只能为零,否则会出现读入错误;而如果是6.则Fw.d中的d可以不为0。
另外在输入时还容易引起输入错误的是:(1) 输入格式的长度大于数据长度(指前一个数据的起至紧接的下一个数据的起始前一位,小数点和负号均占一位),如6._ _ _ _-5.6,前面的数据长度应为6,如果输入格式Fw.d中的w>6,则会出现读入错误;(2)格式语句应置于*v r e a d的下一行,两行之间可以有空行,但不能有其它语句,甚至是注释语句也不能有。
二、输出格式输出与输入在格式方面基本一致,用*vwrite执行,但也有不同之处:输出时可以使用%c控制字符输出,%wI控制整数输出;%w.pF或%w.pE或%w.pG 控制实数输出;不能加括号。
如格式语句:(F6.0,F5.2,A3),对应于:%6.0F%5.2F%3c;应注意后一种格式中没有用逗号相隔开,也没有用括号括起,如有逗号,逗号也将一并输出。
注意:输入输出格式最好从一行的开始写,前面不要有空格用%号(%wI)的这种格式可以输出整型数字。
%这种控制语句也应紧接*vwrite行,可以有空行,但不能有其它语句夹在中间(注释也不行)。
应当指出的是,%这种控制语句不能用在控制输入中。
三、一个例子*GET, ELEMENTNUM,ELEMENT,0,COUNT*GET, NODENUM,NODE,0,COUNT*CFOPEN,c:\tecplot,plt !!tecplot的输出文件*VWRITE('TITLE="Ansys to Tecplot FOR TETRAHEDRON MESH"')*VWRITE('VARIABLES="X","Y","Z"')*VWRITE, NODENUM,ELEMENTNUMZONE N=%5I,E=%7I,F=FEPOINT,ET=TETRAHEDRON*DO, I,1,NODENUM,1*VWRITE, NX(I),NY(I),NZ(I)(3F12.6)*ENDDO*DO, I,1,ELEMENTNUM,1*VWRITE, NELEM(I,1),NELEM(I,2),NELEM(I,3),NELEM(I,5)%7I%7I%7I%7I*ENDDO*CFCLOSfinish/clearItem='Weight'data=234.56Unit='Kg'*Dim,AA,Array,4,1,1AA(1)=10.2,324.5,123.7,908*Dim,BB,Char,3,1,1BB(1)='I am','a good','man'*CFopen,'G:\ANSYSUser\abc','txt'*vwrite,(5X,'*Vwrite Demo')*vwrite,('******************************************************') *vwrite,Item,data,Unit(A8,F10.2,A8)*vwrite(/'*********** Array Parameter Output Demo**************')*Vwrite,('Float Format /SEQU Keyword:')*vwrite,SEQU,AA(1)(F3.0,4F10.4)*vwrite,AA(1),AA(2),AA(3),AA(4)(//'Float /x Format:'/F4.1,2X,F10.4,2X,F10.4,2X,F10.4)*vwrite,AA(1),AA(2),AA(3),AA(4)(//'Float Format:'/4F10.4)*vwrite,AA(1),AA(2),AA(3),AA(4)(//'Double Format:'/D13.5,/D15.6,/D18.10,/D10.3)*vwrite,(/'****************char parametric output demo *******') *vwrite,BB(1),BB(2),BB(3)(3A6)*CFclos输出结果为:*Vwrite Demo****************************************************** Weight 234.56Kg*********** Array Parameter Output Demo************** Float Format /SEQU Keyword:1. 10.20002. 324.50003. 123.70004. 908.0000Float /x Format:10.2 324.5000 123.7000 908.0000Float Format:10.2000 324.5000 123.7000 908.0000Double Format:0.10200D+020.324500D+030.1237000000D+030.908D+03****************char parametric output demo *******I am a goodman/*******************************************************/几点说明:1.使用*VWrite命令把数据输出到文件时,必须要使用*CFOpen命令事先打开一个文件;*CFOpen命令必须和*CFClos命令配对使用;2.*Vwrite命令后面必须紧跟输出格式说明;例如:*Vwrite,a,b,c(格式说明)3.格式说明中Fw.d,w的数值不能太小,以至于输出的数据丢失了整数部分的精度;例如:a=123.4,Fw.d中的w至少要为5,否则在ANSYS中运行时报错;这样的非语法类错误,很难发现;为了避免此类错误发生,w应该至少设置为输出数据的所有数字个数+1(小数点)附:常用格式说明:********************************************************************* **************************1.''(一对单引号):用于在输出数据的时候,输出注释字符串,常常用来增加一些说明文字,增加可读性;比如:*Vwrite,Widh,Length,Height('宽度为:',F6.3,'长度为:',F6.3,'高度为:',F6.3)2.nX:输出n个空格;比如:在输出的a,b,c3个数据之间加入2个空格;*vwrite,a,b,c(F6.3,2X,F6.3,2X,F6.3)3./:结束当前行的输出,转到下一行输出;如果两个//连续出现,则添加一个空行;实数及数组的输出与示例一、实数的输出①实数的输出比较简单,类似FORTRAN的可采用D/E//F/G格式输出。
例如:*CFOPEN,MYFILE,TXTX1=4.56X2=12345.678X3=1.23E-6*VWRITE,X1,X2,X3(3d15.6)*VWRITE,X1,X2,X3(3E15.6)*VWRITE,X1,X2,X3(3f15.6)*VWRITE,X1,X2,X3(3g15.6)*CFCLOSE文件MYFILE.TXT如下:0.456000D+010.123457D+050.123000D-050.456000E+010.123457E+050.123000E-054.56000012345.6780000.0000014.5600012345.70.123000E-05②当采用科学计数时,输出格式的第一位都是“0”开头,如上文中的0.123457E+05,假如我们希望写成1.234568E+04或12.345678E+03的格式时,可采用如下格式:1PE15.6或2PE15.6。
则上文中的命令流可改为:*VWRITE,x1,x2,x3(3(1pe15.6))或*VWRITE,x1,x2,x3(1pe15.3,3pe15.4,1pe15.6)③采用C格式输出实数C格式也有d-整型、f-浮点、e-科学、g-任意、c-字符、s-字符串等格式,均采用%w.dx形式,而%/则为回车换行。
例如:*CFOPEN,MYFILE,TXTX1=4.56X2=12345.678X3=1.23E-6*VWRITE,X1,X2,X3,4567%14.6f%15.6e%16.6g%10d*CFCLOSE文件MYFILE.TXT如下:4.5600001.234568E+041.230000E-064567二、数组的输出(一)VWRITE方法数组输出格式同上,但其输出控制却有很多种形式,且ANSYS按列输出数组。
设有数组(矩阵形式,这里不用插图了):|1.1 2.1 3.1||1.2 2.2 3.2|ABC(5,3)=|1.3 2.3 3.3||1.4 2.4 3.4||1.5 2.5 3.5|*VWRITE命令如下几种方式:①与矩阵写法类同的按列输出:利用ANSYS的输出特点,分别写出各列表示符即可,而行则从1到最终的5。
②同上格式,但按矩阵元素输出用一对()将矩阵表达式括起来变为矩阵元素,这样用循环输出,如命令流中所示。
③当列很多时不可能写出每个列字符表达式,此时可采用$字符格式$字符表示连续输出,没有回车符号,当一行写完后,增加一个非$格式语句即可。