ansys优化,设计变量改编而目标函数值未改变
命令流如下,我看优化的结果,设计变量改变了,但是目标函数和状态变量没有改变。不知道是不是跟我的施工阶段有关系呢?/prep7
/title,the anslyse of small arch bridge
!**************************************************************
!**************************************************************
!以下为建立各个截面的命令
!**************************************************************
et,1,82
!********截面9-9****************
!为什么只有一个82。作用何在?
rectng,-0.1,0.1,-0.1,0.1 !1, 与图纸编号不同,先做框框
esize,0.1 !自动划分网格,5为划分的细度,第一个数字为 1-10
amesh,all
secwrite,xxx11,sect,,1 !建立一个包含单元划分信息的ASC_2码文件,第一个为文件名,和路径,路径省略则为文件默认路径
SECTYPE,1,BEAM,MESH, !截面代号1
SECOFFSET,CENT,,,
SECREAD,'xxx11','SECT',,MESH
asel,all
ACLEAR,ALL
ADELE,ALL,,,1
!*************9-9**********************
etdele,1 !删除代理单元
!定义钢材特性
et,1,beam188 !不知道此处的截面和上面的截面有什么区别?
mp,ex,1,2.1e11
mp,dens,1,7800
mp,prxy,1,0.3
mp,alpx,1,1e-5
et,2,link10
mp,ex,2,2.1e11
mp,dens,2,7800
mp,prxy,2,0.3
mp,alpx,2,1e-5
r,2,0.1,0.0001
!************拱肋计算************
!**********计算拱肋中心线坐标**********
*dim,cs,array,48
*dim,y,array,48
*dim,z,array,48
m=1.9
k=1.257195827
f=8.5
y(1)=0
*do,i,1,46,1
y(i+1)=y(i)+0.5
*enddo
y(48)=y(47)+0.349166446
*do,i,1,48,1
cs(i)=(23.34916645-y(i))*2/23.34916645/2
z(i)=f-f*(cosh(k*cs(i))-1)/(m-1)
*enddo
*do,i,1,47,1
n,i,y(i)-23.34916645,z(i)-8.5
*enddo
n,48,y(48)-23.34916645,z(48)-8.5
*do,i,47,1,-1
n,96-i,23.34916645-y(i),z(i)-8.5
*enddo
!********************************************type,1
real,1
mat,1
secnum,1
*dim,kzd,array,5
kzd(1)=16
kzd(2)=32
kzd(3)=48
kzd(4)=64
kzd(5)=80
*dim,yyc,array,5
*do,i,1,5
*get,yyc(i),node,kzd(i),loc,y
*enddo
*do,i,1,20,1
e,i,i+1
*enddo
n,150,-24,5
type,2
mat,2
real,2
e,150,18
cm,jd1,elem
esel,none
type,1
real,1
mat,1
*do,i,21,40,1
e,i,i+1
*enddo
type,2
mat,2
real,2
n,151,-24,6.5
e,151,38
cm,jd2,elem
esel,none
type,1
real,1
mat,1
*do,i,95,76,-1
e,i,i-1
*enddo
type,2
mat,2
real,2
n,153,24,5
e,153,78
cm,jd3,elem
esel,none
type,1
real,1
mat,1
*do,i,75,56,-1
e,i,i-1
*enddo
type,2
mat,2
real,2
n,154,24,6.5
e,154,58
cm,jd4,elem
esel,none
type,1
real,1
mat,1
*do,i,41,54
e,i,i+1
*enddo
cm,helong,elem
esel,none
allsel
/solu
h1=200
h2=200
bfe,21,temp,,-538.02
bfe,42,temp,,-618.30
bfe,63,temp,,-618.3
bfe,84,temp,,-538.02
acel,,10
time,1
nlgeom,on
nropt,full
estif,1e-10
allsel
ekill,all
esel,s,live
esel,all
ealive,all
esel,s,live
nsle,s
nsel,inve
d,all,all,0
nsel,s,,,150,154
d,all,all
nsel,s,,,1
nsel,a,,,95
d,all,all
allsel
solve
save
time,2
allsel
ddele,all,all
ekill,all
esel,s,live
esel,s,mat,,1
ealive,all
esel,s,live
nsle,s
nsel,inve
d,all,all,0
nsel,s,,,1
nsel,a,,,95
d,all,all
allsel
solve
save
!************优化成桥索力过程
/post1
set,last
!esort,etab,uy,0,0
*get,uyy1,node,16,u,y
*get,uyy2,node,32,u,y
*get,uyy3,node,48,u,y
*get,uyy4,node,64,u,y
*get,uyy5,node,80,u,y
uyyma=max(uyy1,uyy2,uyy3,uyy4,uyy5)
uyymi=min(uyy1,uyy2,uyy3,uyy4,uyy5)
uyyx=max(uyyma,-uyymi)
esel,s,mat,,1
etable,wanjs,smisc,32
etable,wanjx,smisc,33
plls,wanjs,wanjs
plls,wanjx,wanjx
!*dim,xigms,array,94
!*dim,xigmx,array,94
esort,etab,wanjs,0,0
*get,sminT,sort,,max
esort,etab,wanjx,0,0
PRETAB,wanjx
*get,sminB,sort,,max
smin=mAX(sminT,sminB)
!/eof
lgwrite,arch,lgw
/input,arch.lgw
/opt !进入优化处理器
OPANL,arch,lgw
opvar,h1,dv,0,1000
opvar,h2,dv,0,1000 !设计变量
!opvar,h3,dv,0,1000
!opvar,h4,dv,0,1000
opvar,smin,sv,-2e7,2e7
OPSAVE,trussvar,opt
opvar,uyyx,obj,,,1e-3 !目标函数
optype,subp
opsubp,40
opexe
/opt
oplist,all,,1
finish 楼主能不能将优化的过程简单概括一下
否则,很难帮你 我是想通过四根索的索力调整,优化第二个阶段即成桥的线形。 你的命令流我运行了一下,有error,能再整理一下吗?
我也遇到同样的问题,初步感觉好像dv与sv、obj并没有建立起函数关系,虽然做了循环,但sv、obj的值没变;或许,sv、obj对dv的变化不敏感。
帮你顶顶,希望高手能指点! 我仔细看了ansys的优化方面资料,应该是sv,dv,obj的极限值设置问题。ansys的优化似乎是如果有一个地方达到了推出的要求就退出了。 新的问题出现了,我做了一个简单的模型进行优化。结果总是告诉我他不能优化,而且无论我如何调整初始的初应变,他都告诉我这个状态的目标函数是最优的。紧接这告诉我有个语句他不能读出来,现实一截乱码。初做优化,不是很懂原因。希望会的朋友帮帮忙。这个命令流可以用的!
/prep7
/title,the anslyse of small arch bridge
!**************************************************************
!**************************************************************
!以下为建立各个截面的命令
!**************************************************************
et,1,82
rectng,-0.1,0.1,-0.1,0.1
esize,0.1
amesh,all
secwrite,xxx11,sect,,1
SECTYPE,1,BEAM,MESH,
SECOFFSET,CENT,,,
SECREAD,'xxx11','SECT',,MESH
asel,all
ACLEAR,ALL
ADELE,ALL,,,1
!*************9-9**********************
etdele,1 !删除代理单元
!定义钢材特性
et,1,beam188
mp,ex,1,2.1e11
mp,dens,1,7800
mp,prxy,1,0.3
mp,alpx,1,1e-5
et,2,link10
mp,ex,2,2.1e11
mp,dens,2,7800
mp,prxy,2,0.3
mp,alpx,2,1e-5
r,2,0.001,chuyingbian2
chuyingbian2=5.1256e6/0.1/2.1e11
r,3,0.001,chuyingbian3
chuyingbian3=1.9067e6/0.1/2.1e11
*do,i,1,30
n,i,i,0,0
*enddo
*do,i,1,29
e,i,i+1
*enddo
n,31,15,5,0
n,32,30,5,0
type,2
mat,2
real,2
e,31,15
real,3
e,32,30
/solu
nlgeom,on
nropt,full
estif,1e-10
acel,,10
allsel
d,1,all
d,31,all
d,32,all
solve
save
!************优化成桥索力过程
/post1
set,last
*get,uyy1,node,15,u,y
esel,s,mat,,1
esel,s,mat,,1
etable,wanjs,smisc,32
etable,wanjx,smisc,33
plls,wanjs,wanjs
plls,wanjx,wanjx
esort,etab,wanjs,0,0
*get,sminT,sort,,max
esort,etab,wanjx,0,0
PRETAB,wanjx
*get,sminB,sort,,max
smin=mAX(sminT,sminB)
!/eof
lgwrite,arch,lgw
!/input,arch.lgw
/opt !进入优化处理器
OPANL,arch,lgw
opvar,chuyingbian2,dv,8E-07,1,1e-6
opvar,chuyingbian3,dv,8E-07,1,1e-6
opvar,smin,sv,-2e10,2e10,1
OPSAVE,trussvar,opt
opvar,uyy1,obj,,,1e-10
optype,first
opsubp,40
opexe
/opt
oplist,all,,1
finish 楼主的上一帖有最优的解析解吗?有的话公布一下,我看看我算的结构对不?
根据你的命令流,重新写了一个,我优化的结构是uyy1=0.84955E-03。有几个地方我询问一下:
1.“chuyingbian2=5.1256e6/0.1/2.1e11chuyingbian3=1.9067e6/0.1/2.1e11”,没有初应变1?这也无妨,不过显得凌乱。0.1应该是索的面积,不过在“r,2,0.001,chuyingbian2”,面积是0.001?
2.“etable,wanjs,smisc,32 etable,wanjx,smisc,33”是弯曲应力,对beam188来说应该是“etable,sbzt,smisc,34etable,sbzb,
smisc,35”吧? 1、最初是用得初应变做设计变量,后来采用的是温度作设计变量,这个地方就没有改到。
2、我用etable,wanjs,smisc,32是直接摘过来的,由于我是做钢结构,所以对力并不是很关心,只是做了一个状态变量在那里而已。忘原谅! 我根据你的命令流修改了一下,有些数据改了,运行是没问题了,不过就是不知道结果合理不?你可以参考一下。
你最好先把自己优化的目的弄清楚了,再写命令,感觉有点乱。
/filname,arch
chuyingbian1=5.1256e6/0.001/2.1e11
chuyingbian2=1.9067e6/0.001/2.1e11
/prep7
/title,the anslyse of small arch bridge
!**************************************************************
!**************************************************************
!以下为建立各个截面的命令
!**************************************************************
et,1,82
rectng,-0.1,0.1,-0.1,0.1
esize,0.1
amesh,all
secwrite,xxx11,sect,,1
SECTYPE,1,BEAM,MESH,
SECOFFSET,CENT,,,
SECREAD,'xxx11','SECT',,MESH
asel,all
ACLEAR,ALL
ADELE,ALL,,,1
!*************9-9**********************
etdele,1 !删除代理单元
!定义钢材特性
et,3,beam188
mp,ex,3,2.1e11
mp,dens,3,7800
mp,prxy,3,0.3
mp,alpx,3,1e-5
et,2,link10
mp,ex,2,2.1e11
mp,dens,2,7800
mp,prxy,2,0.3
mp,alpx,2,1e-5
r,1,0.001,chuyingbian2
r,2,0.001,chuyingbian3
*do,i,1,30
n,i,i,0,0
*enddo
n,31,15,5,0
n,32,30,5,0
type,3
mat,3
*do,i,1,29
en,i,i,i+1,32
*enddo
type,2
mat,2
real,1
e,31,15
real,2
e,32,30
/solu
antype,0
nlgeom,on
nropt,full
estif,1e-10
acel,,10
allsel
d,1,all
d,31,all
d,32,all
allsel
eplot
solve
save
!************优化成桥索力过程
/post1
set,last
*get,uyy1,node,15,u,y
esel,s,mat,,3
etable,sbzt,smisc,34
etable,sbzb,smisc,35
esort,etab,sbzt,0,0
*get,sminT,sort,,max
esort,etab,sbzb,0,0
*get,sminB,sort,,max
smin=max(sminT,sminB)
lgwrite,arch,lgw
save
finish
/exit !并修改.lgw文件(!/batch!/input,menust,tmp,)
!重新进入ansys
/filname,arch
/input,arch,lgw
/opt !进入优化处理器
OPANL,arch,lgw
opvar,chuyingbian1,dv,8E-05,0.3,
opvar,chuyingbian2,dv,8E-05,0.3,
opvar,smin,sv,-2e8,2e8,
OPSAVE,trussvar,opt
opvar,uyy1,obj
optype,first
opsubp,10
opexe
/opt
oplist,all,,1
finish
页:
[1]