ansys数据处理总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
!!!!!~~~~~!!!!!~~~~~!!!!!~~~~~!!!!!~~~~~!!!!!~~~~~!!!!!
!!!!!~~~~~~~~~ansys数据处理的相关命令流~~~~~~~~~~~!!!!!
!(1)数据输入的相关命令
!利用*TREAD命令读取数据文件并填充TABLE表格
*TREAD, Par, Fname, Ext, --, NSKIP
!以下利用*TREAD命令读取1维数据表格
!tdata.txt文本文件含有如下内容
STRAIN STRESS
00
0.0025
0.0046
0.0067
*DIM,Ttxy,table,4,1,,TIME,ACEL
*TREAD,Ttxy,tdata,txt,,1
!以下利用*TREAD命令读取2维数据表格
!要特别注意2维数据的行数
!tdata.txt文本文件含有如下内容
TIME X Y Z
0000
0.020.10.20.3
0.040.20.40.6
0.060.30.60.9
!希望输入地震波激励,X、Y、Z三个方向
*DIM,Ttxy,table,3,3,,TIME,ACEL
*TREAD,Ttxy,tdata,txt,,1
!以下利用*TREAD命令读取3维数据表格
!tdata.txt文本文件含有如下内容
TEMP X Y Z
0000
0.020.10.20.3
0.040.20.40.6
0.060.30.60.9
5000
0.030.20.30.4
0.050.40.60.8
0.070.60.90.9
!希望读取不同温度下,不同时刻的泊松比
*DIM,Ttxy,table,3,3,2,TIME,NUXP,TEMP
*TREAD,Ttxy,tdata,txt,,1
!利用*SREAD命令读取字符文件
*SREAD, StrArray, Fname, Ext, --, nChar, nSkip, nRead
页: 1
!*SREAD命令将字符串存储在字符串数组里面
!通过*GET命令可以得到此字符串数组的维度
*GET, Par, PARM, Name, Item1, IT1NUM, Item2, IT2NUM
!很多时候,需要从一个文本里面获得一些信息
!以下利用*SREAD命令示范
!tdata.txt文本文件含有如下内容
Abaqus
Abaqus/Standard 6.9-1
!希望读取'6.9'用于此后的计算
*DIM,Ttxy,STRING,60
*SREAD,Ttxy,tdata,txt,,60,,
Strout=STRSUB(Ttxy(,2),18,3)
TempValue=VALCHR(Strout)
!这里有几点需要说明一下
!(1)string字符串的长度最大为128个字符
!(2)string字符串数组的一维是每一行的字符(可以看做列)
! 第二维可以看做行数
!(3)利用strout命令可以提取目标字符串
! '6.9'起始于第18个字符,长度为3
!(4)上一步提取的依然是字符'6.9'
! 这时需要将字符'6.9'转化为数字6.9
!(5)也可以将数字6.9转化为字符'6.9',利用命令CHRVAL
!也可以对字符串进行判断
!如果提取的确实是字符'6.9',则输出,过程如下
!利用'6.9'说明6.9是一个字符串
*DIM,Ttxy,STRING,60
*SREAD,Ttxy,tdata,txt,,60,,
Strout=STRSUB(Ttxy(,2),18,3)
*IF,Strout,EQ,'6.9',THEN
TempValue=VALCHR(Strout)
*ENDIF
!利用*VREAD命令读取数据文件
*VREAD, ParR, Fname, Ext, --, Label, n1, n2, n3, NSKIP
!tdata.txt文本文件含有如下内容
NODE LOCATION
10.00.00.0
2 1.00.00.0
3 1.0 1.00.0
40.0 1.00.0
!希望读取1~4号节点的坐标,且和节点号关联
*DIM,Ttxy,ARRAY,4,4
*VREAD, Ttxy(1,1), tdata, txt, , JIK, 4, 4, , 1
(F1.0,F4.1,F4.1,F4.1)
!*VREAD对于数据格式要求相当严格
页: 2
!F4.1表示目标数据占有资格字符长度,小数点后保留1位
!由于数据是逐行读入
!因此每读一行就将数据逐一填入相应列,即JIK
!(2)数据输出的相关命令
!利用*VWRITE写数据文件
!使用*VWRITE命令时,需要了解数据格式描述符
*VWRITE, Par1, Par2, Par3, Par4... ...
(Fw.d,Ew.d,Dw.d,Aw)
!w表示数据宽度,d表示小数位置
!F:单精度,E:科学计数法,D:双精度,A:字符型
!当然也可以用另一种方式:C语言格式输出
*VWRITE, Par1, Par2, Par3, Par4... ...
%w.dF%w.dE%w.dG%wI%wC
!w表示数据宽度,d表示小数位置
!G:双精度,I:整数型,C:字符型
!注意:以上描述均为右对齐
!当需要字符型数据以左对齐形式描述,可以使用%-wC
!利用*MWRITE写数据文件
*MWRITE, ParR, Fname, Ext, --, Label, n1, n2, n3
!对于数组的输出,采用*MWRITE命令非常方便
!以下举例说明
*DIM,MyArray,ARRAY,5,3
*DO,i,1,5
*DO,j,1,3
MyArray(i,j)=j+i
*ENDDO
*ENDDO
*MWRITE,MyArray,MyArrayOut,TXT,,JIK,3,5
(3F9.4)
!(3)创建文件的相关命令
!利用*CFOPEN创建文件,和*CFCLOS成对使用
*CFOPEN, Fname, Ext, --, Loc
*CFCLOS
!LOC选项用来确定是否覆盖原来的文件内容
!也可以通过循环命令创建多个文件
!需要利用强制转换符将变量转化为字符
*DO,I,1,10
*CFOPEN,%I%DATA,DAT
*VWRITE
('HELLO THE WORLD')
*CFCLOS
*ENDDO
页: 3