本帖最后由 wdhd 于 2016-4-1 14:35 编辑
原帖由 savagebob 于 2007-7-23 17:46 发表
ansys集合了dyna,基本就把自己的一些缺陷弥补了,但他们其实还是2个软件。ansys只能做尺寸优化,拓扑和形貌优化是不能做的吧
ansys是可以做拓扑优化的,下面转一个例子
利用ANSYS的ADPL语言和ESO法进行了一个连续体的拓补优化算例计算,这个算例可以在各个关于拓扑优化的文献中找到,可以说是很经典。由于采用的是ESO法,所以我将结果和相关文献进行了对照(请参阅《结构动力修改及优化设计》,容见华,郑健龙等编,人民交通出版社 P252).
APDL程序如下:
- /filename,optimization !利用ESO法进行平面连续体的拓扑优化
- /prep7
- RECTNG,0,10,0,24
- ET,1,PLANE42,,,3
- R,,0.001
- MP,EX,1,100E9
- MP,PRXY,1,0.3
- AESIZE,1,1,
- MSHAPE,0,2D
- AMESH,ALL
- DL,4,,ALL,0
- F,24,FY,-1E6
- /SOLU
- NLGEOM,ON
- NROPT,FULL,,ON
- SOLCONTROL,off
- SOLVE
- FINISH !以上是有限元建模和分析过程
- /POST1!以下是删除迭代过程
- SET,first
- *SET,ER,0.005 !定义删除率
- *SET,PL,0 !最大应力
- *set,ql,0 !判断单元死活的变量
- *set,tt,0 !总体积
- *set,total,0 !应力之和
- sel=0
- j1=0
- ETABLE,PK,S,EQV
- *GET,LU,ETAB,0,NLENG,MAX
- *DIM,RESULT,ARRAY,LU,1
- *DIM,volum,ARRAY,80,1!总体积
- *DIM,ma,ARRAY,80,1!最大应力
- *DIM,mid1,ARRAY,80,1
- *DIM,min1,ARRAY,80,1
- *VGET,RESULT(1,1),ELEM,1,ETAB,PK
- *vabs,1
- *vfun,result(1,1),copy,result(1,1)
- *VSCFUN,PL,MAX,RESULT
- *DO,RR,0.005,0.40,ER
- *IF,(KL/PL),le,RR,then
- rr=rr-er
- *endif
- /SOLU
- *DO,I,1,LU,1
- *get,ql,elem,i,attr,live
- *if,ql,eq,1,then
- *IF,abs(RESULT(I,1)/PL),Le,RR,THEN
- EKILL,I
- *ENDIF
- *endif
- *ENDDO
- SOLVE
- ESEL,S,LIVE
- EPLOT
- /POST1
- ETABLE,PK,S,EQV
- ETABLE,volum,volu
- ssum
- *get,total,ssum,0,item,PK
- *get,tt,ssum,0,item,volum
- *get,sel,elem,0,count
- *VGET,RESULT(1,1),ELEM,1,ETAB,PK
- *vabs,1
- *vfun,result(1,1),copy,result(1,1)
- *VSCFUN,PL,MAX,RESULT
- *VSCFUN,KL,MIN,RESULt
- j1=(rr*200)+1
- volum(j1,1)=tt
- ma(j1,1)=pl
- mid1(j1,1)=total/sel
- min1(j1,1)=kl
- *ENDDO
- *cfopen,max,DAT
- *vwrite,ma(1.1)
- (4F20.4)
- *cfopen,min,DAT
- *vwrite,min1(1.1)
- (4F20.4)
- *cfopen,mid,DAT
- *vwrite,mid1(1.1)
- (4F20.4)
- *cfopen,volum,DAT
- *vwrite,volum(1.1)
- (4F20.4)
-
复制代码 |