fortran调用ansys做桁架结构优化例子

fortran调用ansys做桁架结构优化例子

ID:47240747

大小:18.31 KB

页数:4页

时间:2019-08-07

fortran调用ansys做桁架结构优化例子_第1页
fortran调用ansys做桁架结构优化例子_第2页
fortran调用ansys做桁架结构优化例子_第3页
fortran调用ansys做桁架结构优化例子_第4页
资源描述:

《fortran调用ansys做桁架结构优化例子》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、fortran调用ansys做桁架结构优化例子ANSYS命令流部分:/clearB=1000            !基本尺寸!进入PREP7并建模/PREP7*dim,A,,3,1  !定义一个3*1的数组*VREAD,A,E:projecttrussdata_1,txt,,IJK,3,1  !IJK表示读入的顺序(F7.2)A1=A(1,1)A2=A(2,1)A3=A(3,1)*cfopen,E:projecttrussdata_3,txt*vwrite,A1,A2,A3(F7.2,/

2、F7.2,/F7.2)*cfclosET,1,LINK1          !二维杆单元R,1,A1            !以参数形式的实参R,2,A2R,3,A3MP,EX,1,2.1E6        !杨氏模量N,1,-B,0,0          !定义结点N,2,0,0,0N,3,B,0,0N,4,0,-B,0E,1,4              !定义单元REAL,2E,2,4REAL,3E,3,4FINISH!!进入求解器,定义载荷和求解/SOLUD,1,ALL,0,,3     

3、       !结点UX=UY=0F,4,FX,200000          !结点4上的X方向载荷分量(工况1)F,4,FY,-200000          !结点4上的Y方向载荷分量(工况2)SOLVEFINISH!进入POST1并读出状态变量数值/POST1SET,LASTETABLE,EVOL,VOLU      !将每个单元的体积放入ETABLESSUM                !将单元表格内数据求和*GET,VTOT,SSUM,,ITEM,EVOL  !VTOT=总体积RHO

4、=2.85E-4WT=RHO*VTOT        !计算总体积ETABLE,SIG,LS,1        !将轴向应力放入ETABLE*GET,SIG1,ELEM,1,ETAB,SIG  !SIG1=第一个单元的轴向应力*GET,SIG2,ELEM,2,ETAB,SIG  !SIG2=第二个单元的轴向应力SIG1=ABS(SIG1)        !计算轴向应力的绝对值SIG2=ABS(SIG2)!/ESHAPE,2          !以实体单元模式显示壳单元!/VIEW,1,1,1,1 

5、         !轴测视图!EPLOT           !画单元FINISH*cfopen,E:projecttrussdata_2,txt*vwrite,SIG1,SIG2,WT(F7.2,/F7.2,/F7.2)*cfclosFORTRAN程序部分:PROGRAMTRUSSUSEDFLIBIMPLICITNONEcharacter(len=20)::filename1="trussdata_2.txt"character(len=20)::filename2="trussdata_1

6、.txt"REAL,parameter::e=0.01  !e为计算精度REAL,parameter::xu=400  !xu为许用应力INTEGER::fileid,kINTEGERiLOGICAL(4)resultREALu1(50),u2(50),ww(50),umax  !u1,u2为应力比,umax为最大应力REALsig1,sig2,W,ap  !sig1为杆1的最大应力,sig2为杆2的最大应力REALx1(50),x2(50),xx1,xx2  !x为杆截面面积i=1k=1x1(1

7、)=707  !定义杆的初始值x2(1)=707ap=10DO      WHILE(ap>=e)!调用ANSYS做结构分析result=SYSTEMQQ('C:ProgramFilesAnsysIncv110ANSYSbinintelANSYS110-b-p&&ane3fl-iE:projecttruss.txt-oE:projecttrussanswer.txt')fileid=10open(fileid,file=filename1)  !从ansys写出的文件中读入数

8、据(应力和求得的重量)read(fileid,*)sig1,sig2,Wclose(fileid)ww(k)=wu1(i)=sig1/xuu2(i)=sig2/xuif(u1(i)>=u2(i))then  !判断最大应力      umax=u1(i)else      umax=u2(i)endif!射线步x1(i+1)=umax*x1(i)x2(i+1)=umax*x2(i)u1(i+1)=u1(i)/umax  !求出新的应力比u2(i+1)=u2(i)/umax!调整步x

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。