您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > Ansys中单元刚度矩阵总刚矩阵的提取
Ansys中单元刚度矩阵、总刚矩阵的提取一、单元刚度矩阵的提取/DEBUG命令详细说明:finish/clearPI=3.1415926w1=3w2=10w3=6w4=1.2r=.8t=0.08/PREP7!*ET,1,SHELL63R,1,tET,2,MASS21R,2,500,500,500,2000,2000,2000,!*UIMP,1,EX,,,2e11UIMP,1,NUXY,,,0.3,UIMP,1,DAMP,,,0.2,UIMP,1,DENS,,,7800,BLC4,0,0,w2,w1ESIZE,1.5,0,AMESH,allNSEL,S,LOC,X,0.0D,all,,,,,,ALL,,,,,allsel,allSFA,all,1,PRES,12FINISH/OUTPUT,cp,out,,!将输出信息送到cp.out文件/debug,-1,,,1!指定输出单元矩阵/SOLUSOLVEfinish/OUTPUT,TERM!将输出信息送到outputwindows中这时用编辑器打开cp.out文件,可以看到按单元写出的质量、刚度等矩阵二、整体刚度矩阵的提取(有三种方法:用户程序法、超单元法、HBMAT命令法)1、用户程序法:需要二次开发(略)2、超单元法/soluantype,7!substructuring分析类型seopt,matname,1!设置文件名称和刚度矩阵类型(刚度,质量,阻尼等)nsel,all!选择所有节点m,all,all!定义所有节点自由度为主自由度solve!求解selist,matname,3!列出整体刚度矩阵3、HBMAT命令法提取整体矩阵命令:HBMAT,fname,ext,--,form,matrx,rhs其中:Fname---输出矩阵的路径和文件名,缺省为当前工作路径和当前工作文件名。ext---输出矩阵文件的扩展名,缺省为.matrix。form---定义输出矩阵文件的格式,其值可取:=ASCII:ASCII码格式;=BIN:二进制格式。matrix---定义输出矩阵的类型,其值可取:=STIFF:输出刚度矩阵。可用于写入了.FULL文件的任何类型的分析。=MASS:输出质量矩阵。可用于特征值屈曲、子结构分析、模态分析。=DAMP:输出阻尼矩阵。仅用于有阻尼的模态分析。rhs---右边项输出控制(右边项指用矩阵所表示方程的等号右端矢量,这里可为节点荷载向量),如rhs=YES则输出,如rhs=NO则不输出。模态分析时,因仅LANB和QR法可生成完整的质量矩阵,因此也仅采用这两种方法时才可使用HBMAT命令得到质量矩阵文件。⑵Harwell-Boeing文件格式用HBMAT命令可输出结构刚度矩阵、质量矩阵和阻尼矩阵,其文件记录格式为大型稀疏矩阵的标准交换格式,采用索引存储方法仅记录矩阵的非零元素。文件基本格式是前面有4或5行描述数据,其后为单列矩阵元素值,说明如下:第1行:格式(A72),为文件头的字符型解释,如刚度矩阵或质量矩阵等标题。第2行:格式(5I14),分别表示该文件的总行数(不包括文件头)、矩阵列指针的总行数、矩阵行索引的总行数、矩阵元素数值的总行数、右边项总行数。第3行:格式(A3,11X,4I14),分别为矩阵类型、矩阵行数、矩阵列数、矩阵行索引数(对组装后的矩阵,该值等于矩阵行索引数)、单元元素数(对组装后的矩阵此值为0)。第4行:格式(2A16,2A20),分别表示列指针格式、行索引格式、系数矩阵数值格式、右边项数值格式。第5行:格式(A3,11X,2I14),A3各列分别表示右边项格式、应用高斯起始矢量、应用eXact求解矢量;两个整数分别表示右边项列数、行索引数。三个字符中的第1个字符可取:F---全部存贮(如节点荷载向量的全部元素)、M---与系数矩阵相同方法。第6行后:矩阵元素值(单列)。矩阵类型用3个字符表示,第1个字符可取:R---实数矩阵、C---复数矩阵、P---仅矩阵结构(无元素数值);第2个字符可取:S---对称矩阵、U---不对称矩阵、H---Hermitian矩阵、Z---病态对称矩阵;R---带状矩阵;第3个字符可取:A---组装的矩阵、E---单元矩阵(未组装)。对称矩阵只存储下三角元素,如结构刚度矩阵为对称矩阵,Harwell-Boeing格式则仅记录下三角元素。根据Harwell-Boeing文件格式,可读取矩阵的任意行列元素的数值,也可编程还原为满矩阵存储,以便它用,很显然这种提取方式比较方便。如当生成.FULL文件后,可采用命令/AUX2$FILE,mywork,full$HBMAT,mystiff,txt,ASCII,STIFF,YES$FINISH将二进制mywork.full文件输出为ASCII码文件mystiff.txt,并输出右边项。命令流:/aux2file,hbfile,fullhbmat,hbfile,txt,,ascii,stiff,yesfinish!从hbfile.txt读入数据,并还原为满矩阵存储*dim,contline,,5*vread,contline(1),hbfile,txt,,,5,,,1(5f14.0)totcrd=contline(1)ptrcrd=contline(2)indcrd=contline(3)valcrd=contline(4)rhscrd=contline(5)*vread,contline(1),hbfile,txt,,,4,,,2(a3,11x,4f14.0)nrow=contline(2)ncol=contline(3)strline=contline=*if,rhscrd,eq,0,thenls0=4*elsels0=5*endif*dim,pointr,,ptrcrd*dim,rowind,,indcrd*dim,values,,valcrd*dim,rhsval,,rhscrd*vread,pointr(1),hbfile,txt,,,ptrcrd,,,ls0(f14.0)*vread,rowind(1),hbfile,txt,,,indcrd,,,ls0+ptrcrd(f14.0)*vread,values(1),hbfile,txt,,,valcrd,,,ls0+ptrcrd+indcrd(d25.15)*vread,rhsval(1),hbfile,txt,,,rhscrd,,,ls0+ptrcrd+indcrd+valcrd(d25.15)*dim,smatr,,nrow,ncol*do,icol,1,ncolstacol=pointr(icol)endcol=pointr(icol+1)*do,irow,stacol,endcol-1truerow=rowind(irow)smatr(truerow,icol)=values(irow)*enddo*enddo*do,irow,1,nrow*do,icol,1,ncolsmatr(irow,icol)=smatr(icol,irow)*enddo*enddopointr=rowind=values=rhsval=icol=irow=ls0=stacol=endcol=truerow=totcrd=ptrcrd=indcrd=valcrd=rhscrd=FINISH/cleFINISH/cle/PREP7ET,1,SOLID45mp,ex,1,1e7mp,nuxy,1,0.25KEYOPT,1,1,1KEYOPT,1,2,0BLC4,0,0,10,2VOFFST,1,2FLST,5,12,4,ORDE,2FITEM,5,1FITEM,5,-12CM,_Y,LINELSEL,,,,P51XCM,_Y1,LINECMSEL,,_YLESIZE,_Y1,1,,,,,,,1MSHAPE,0,3DMSHKEY,1CM,_Y,VOLUVSEL,,,,1CM,_Y1,VOLUCHKMSH,'VOLU'CMSEL,S,_YVMESH,_Y1CMDELE,_YCMDELE,_Y1CMDELE,_Y2FLST,2,9,1,ORDE,9FITEM,2,1FITEM,2,14FITEM,2,24FITEM,2,34FITEM,2,47FITEM,2,57FITEM,2,68FITEM,2,80FITEM,2,90!*/GOD,P51X,,,,,,ALL,,,,,FLST,2,1,1,ORDE,1FITEM,2,79!*/GOF,P51X,FY,-1000/solu/output,elemstiff,txt!进入求解层,定义输出单元刚度矩阵文件名和扩展名/debug,-1,,,1!设置输出单元刚度矩阵和单元荷载向量solve/outputfinish!求解,设置输出到终端FINISH/OUTPUT,cp,out,,!将输出信息送到cp.out文件/debug,-1,,,1!指定输出单元矩阵/SOLUSOLVEfinish/OUTPUT,TERM!将输出信息送到outputwindows中2-----------------------------------------------------/soluantype,7!substructuring分析类型seopt,matname,1!设置文件名称和刚度矩阵类型(刚度,质量,阻尼等)nsel,all!选择所有节点m,all,all!定义所有节点自由度为主自由度solve!求解selist,matname,3!列出整体刚度矩阵/OUTPUT,cp,out,,!将输出信息送到cp.out文件/debug,-1,,,1!指定输出单元矩阵/SOLUSOLVEfinish/OUTPUT,TERM!将输出信息送到outputwindows中/OUTPUT,MID_EX,out,,!将输出信息送到cp.out文件/debug,-1,,,1!指定输出单元矩阵/SOLUSOLVEfinish/OUTPUT,TERM!将输出信息送到outputwindows中
本文标题:Ansys中单元刚度矩阵总刚矩阵的提取
链接地址:https://www.777doc.com/doc-4030651 .html