xinyuxf 发表于 2007-6-6 14:29

转帖:用ANSYS和和ESO法进行拓扑优化

已经发在我的个人空间里了,怕大家看不到,在论坛上再发一次吧。
帖子内容:

   我利用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)

ly82zl 发表于 2010-3-10 10:46

怎么少了一行啊,kl没定义

woaifeiji 发表于 2010-3-11 04:39

小羽 发表于 2013-1-18 15:14

请问楼主知不知道ESO算法关于频率的拓扑优化,如果知道给个例子,谢谢。我的qq876911204
页: [1]
查看完整版本: 转帖:用ANSYS和和ESO法进行拓扑优化