cyh3278 发表于 2006-11-24 20:47

板优化的问题?

我做板优化时,老是出现如下的对话框,不懂为什么?
板的宏如下:
plane_beam_test.mac
!前板参数
qbxkkd=0.3       !前板下口宽度
qbskkd=4.07      !前板上口宽度
qbcd=6.151       !前板长度
!侧板参数
cbxkkd=0.3       !侧板下口宽度
cbskkd=6.28      !侧板上口宽度
cbcd=5.655   !侧板长度
jqjgs=7      !加强筋个数
*DIM,qbjqjjj,,jqjgs,1,1    !前板加强筋间距
qbjqjjj(1)=0.379
qbjqjjj(2)=0.49
qbjqjjj(3)=0.607
qbjqjjj(4)=0.629
qbjqjjj(5)=0.706
qbjqjjj(6)=0.778
qbjqjjj(7)=0.938
YOUNG=210E6
thickness=5e-3   !板厚
FORCE=-1
/PREP7
hdgd=sqrt(qbcd**2-(0.5*(cbskkd-cbxkkd))**2)!灰斗高度
qbqj=acos(0.5*(cbskkd-cbxkkd)/qbcd)    !前板倾角
cbqj=acos(0.5*(qbskkd-qbxkkd)/cbcd)    !侧板倾角
*DIM,qbjqjxg,,jqjgs,1,1                !前板加强筋斜高
*DO,i,1,jqjgs
    *IF,i,EQ,1,THEN
       qbjqjxg(i)=qbjqjjj(1)
    *ELSE
       qbjqjxg(i)=qbjqjxg(i-1)+qbjqjjj(i)
    *ENDIF
*ENDDO
*DIM,cbjqjxg,,jqjgs,1,1               !侧板加强筋斜高
*DO,i,1,jqjgs
   cbjqjxg(i)=qbjqjxg(i)*sin(qbqj)/sin(cbqj)
*ENDDO
MP,EX,1,YOUNG
MP,NUXY,1,0.3
ET,1,SHELL63
ET,2,BEAM188
R,1,THICKNESS,THICKNESS,THICKNESS,THICKNESS
!生成板关键点
*DO,i,1,jqjgs+2
    *IF,i,EQ,1,THEN
      k,1,0,0,0.5*cbxkkd
      k,2,0.5*qbxkkd,0,0.5*cbxkkd
        k,2*(jqjgs+2)+1,0.5*qbxkkd,0,0
    *ELSEIF,i,EQ,jqjgs+2
      k,2*(jqjgs+2)-1,0,hdgd,0.5*cbskkd
        k,2*(jqjgs+2),0.5*qbskkd,hdgd,0.5*cbskkd
        k,3*(jqjgs+2),0.5*qbskkd,hdgd,0
    *ELSE
      k,2*i-1,0,cbjqjxg(i-1)*sin(cbqj),qbjqjxg(i-1)*cos(qbqj)+0.5*cbxkkd   !前板点
      k,2*i,0.5*qbxkkd+cbjqjxg(i-1)*cos(cbqj),cbjqjxg(i-1)*sin(cbqj),qbjqjxg(i-1)*cos(qbqj)+0.5*cbxkkd   !交界点
      k,2*(jqjgs+2)+i,0.5*qbxkkd+cbjqjxg(i-1)*cos(cbqj),cbjqjxg(i-1)*sin(cbqj),0   !侧板点
    *ENDIF
*ENDDO
!生成前板面
*DO,i,1,jqjgs+1
A,2*i-1,2*i,2*i+2,2*i+1
*ENDDO
!生成侧板面
*DO,i,1,jqjgs+1
   A,2*i,2*(jqjgs+2)+i,2*(jqjgs+2)+i+1,2*i+2
*ENDDO
!网格化板
zdwgbc=0.5   !最大网格边长
qbfgs=NINT(0.5*qbskkd/zdwgbc)   !前板分隔数
!分割前板直线
*DO,i,1,jqjgs+2
   *IF,i,EQ,1,THEN
       LSEL,S,LINE,,1,1            !选取1号直线
   *ELSE
       LSEL,S,LINE,,3*(i-1),3*(i-1)!选取前板3,6,9,等直线
   *ENDIF
   LESIZE,ALL,,,qbfgs                !把所选定的直线分段
*ENDDO
cbfgs=NINT(0.5*cbskkd/zdwgbc)   !侧板分隔数
*IF,cbskkd,GT,qbskkd,AND,cbskkd/cbfgs,LT,qbskkd/qbfgs,THEN
   cbfgs=NINT(0.5*cbskkd/zdwgbc)-1
*ELSEIF,cbskkd,LT,qbskkd,AND,cbskkd/cbfgs,GT,qbskkd/qbfgs
   cbfgs=NINT(0.5*cbskkd/zdwgbc)+1
*ENDIF   
!分割侧板直线
*DO,i,1,jqjgs+2
   LSEL,S,LINE,,2*(jqjgs+1)+(jqjgs+2)+2*i-1,2*(jqjgs+1)+(jqjgs+2)+2*i-1
   LESIZE,ALL,,,cbfgs
*ENDDO
!分割两边直线
*DO,i,1,jqjgs+1
    LSEL,S,LINE,,3*i+1,3*i+1   !选取3*i-1号直线,即前板竖直线
    LSEL,A,LINE,,3*i-1,3*i-1   !在选择前板竖斜线
    LSEL,A,LINE,,2*(jqjgs+1)+(jqjgs+2)+2*i,2*(jqjgs+1)+(jqjgs+2)+2*i    !选择侧板竖直线
         *IF,i,EQ,jqjgs+1,THEN
             *IF,(qbcd-qbjqjxg(i-1))/(0.5*qbskkd/qbfgs),GE,2,THEN
                LESIZE,ALL,,,NINT((qbcd-qbjqjxg(i-1))/(0.5*qbskkd/qbfgs))
             *ELSE
                LESIZE,ALL,,,NINT((0.5*qbskkd/qbfgs)/(qbcd-qbjqjxg(i-1)))+1
             *ENDIF
        *ELSE
             *IF,qbjqjjj(i)/((0.5*qbxkkd+qbjqjxg(i)/tan(cbqj))/qbfgs),GE,2,THEN
                LESIZE,ALL,,,NINT(qbjqjjj(i)/((0.5*qbxkkd+qbjqjxg(i)/tan(cbqj))/qbfgs))
             *ELSE
                LESIZE,ALL,,,NINT(((0.5*qbxkkd+qbjqjxg(i)/tan(cbqj))/qbfgs)/qbjqjjj(i))+1
       *ENDIF
      *ENDIF
*ENDDO
asel,all
AMESH,ALL
allsel
FINI
/SOLU
!施加约束
LSEL,S,LINE,,3*(jqjgs+1),3*(jqjgs+1)
LSEL,A,LINE,,2*(jqjgs+1)+(jqjgs+2)+2*(jqjgs+2)-1,2*(jqjgs+1)+(jqjgs+2)+2*(jqjgs+2)-1
DL,ALL,,ALL
!施加载荷
ASEL,S,MAT,,1,1
SFA,ALL,1,PRES,FORCE
solve
FINI
/POST1
ALLSEL
NSORT,S,EQV            !将节点等效应力排序
*get,smax,sort,,max    !提取最大等效应力
ETABLE,EVOL,VOLU,      !将每个单元的体积放入表EVOL中   
SSUM                   !将单元表格内数据求和
*GET,VTOT,SSUM,,ITEM,EVOL   !提取结构总体积
OBJVTOT=1000*VTOT
fini
!!!!!!!!!!!!!!!!!!!!!!
优化如下:
/OPT
OPANL,'plane_beam_test','mac',' '
OPVAR,THICKNESS,DV,3.5E-3,16E-3
OPVAR,SMAX,SV,0,235E3
OPVAR,OBJVTOT,OBJ,,,1   
OPDATA, , ,
OPLOOP,PREP,PROC,ALL
OPPRNT,ON   
OPKEEP,ON   
OPTYPE,SUBP
OPSUBP,40   
OPEXE

[ 本帖最后由 cyh3278 于 2006-11-26 10:55 编辑 ]

xsdcaifu 发表于 2006-11-25 16:30

红框说的就是不收敛中止运行程序

xsdcaifu 发表于 2006-11-25 16:32

红框说的就是不收敛中止运行程序

cyh3278 发表于 2006-11-26 11:01

老的错误找到了,少了一个*ENDIF语句(见红色),导致不能不能收敛。
但新的错误又出来了,这个板经过优化后,会跳出如下的对话框,我没有使用_z3这个参数,怎么会跳出说有_z3这个东西?
页: [1]
查看完整版本: 板优化的问题?