15122839822 发表于 2018-6-7 22:04:09

单层网壳稳定分析中的问题

考虑初始缺陷的非线性屈曲分析中,调完参数后,SOLVE,但是系统提示,A check of your load data produced 1 warnings.请问各位大佬是怎么回事、这也是《空间钢结构APDL参数化计算与分析》P150页的内容,求解!!!


!(1)运行自动建模程序,形成模型文件MODE.DB;
!(2)运行等效节点荷载程序,输入单位面荷载,形成EQUIFORCE.MAC文件;
!(3)获得静力解
/CLEAR
RESUME,MODE,DB,,0,0
/SOLU
*USE,EQUIFORCE.MAC                           !调用EQUIFORCE.MAC,以施加等效节点荷载
ANTYPE,0                                     !设置求解类型为静力分析
EQSLV,SPAR                                 !选择稀疏矩阵直接求解器
PSTRES,ON                                    !打开预应力选项
SOLVE
FINISH
!(4)获得特征值屈曲解
/SOLU
ANTYPE,1                                     !设置类型为特征值屈曲分析
BUCOPT,LANB,3                              !设置屈曲模态提取方法及模态提取数`
MXPAND,3,0,0,1,0.001                         !设置屈曲模态扩展数及扩展算法选项
SOLVE
FINISH
!(5)读取一阶频率值
/POST1
SET,LIST                                     !列表显示模型的固有频率,查看一阶频率
FINISH
!(6)考虑初始缺陷
/PREP7
UPGEOM,0.1,1,1,file,RST,                     !以一阶模态位移值的0.1修改原模型节点坐标,其中file为本程序的文件名
FINISH
!(7)施加极限荷载,以一阶模态屈曲荷载的1.3(可变动)倍作为极限荷载施加在结构上
/SOLU
FDELE,ALL,ALL                              !(自添的)删除所有荷载
ALLSEL,ALL                                 !(自添的)选中所有图素
FCUM,ADD                                     !设定集中力叠加施加于节点
*DO,i,1,15,1                                 !将单位荷载施加15次,即施加1.3倍屈曲荷载
*USE,EQUIFORCE.MAC
*ENDDO
!(8)进行非线性屈曲分析
ALLSEL,ALL                                 !(自添的)选中所有图素
ANTYPE,0
NLGEOM,1                                     !打开大变形选项
NROPT,FULL                                 !(自添的)采用自适应下降法
AUTOTS,ON                                    !(自添的)采用自动时间步
OUTRES,ALL,ALL                               !将所有子步的内容写入数据库或文件中
ARCLEN,1,0,0                                 !打开弧长法选项
ARCTRM,U,1,1,UZ                        !设定顶点1的竖向位移至1m时结束运算
NSUBST,100                                 !设定子步数
SOLVE

15122839822 发表于 2018-6-8 09:02:25

建立网壳的过程:和课本上完全一样

*AFUN,DEG                                    !在角度函数的输入与输出中使用度为单位
/PREP7
!(1)用户界面设计,输入基本几何参数
MULTIPRO,'START',4                           !生成多行提示对话框
   *CSET,1,3,f,'Rise f=(m)',8                !输入矢高f
   *CSET,4,6,Span,'Span=(m)',40            !输入跨度Span
   *CSET,7,9,Kn,'Radial Number(input even)=',6   !输入环向分割的份数Kn
   *CSET,10,12,Nx,'Node Circle Number Nx=',5 !输入环杆圈数Nx
*CSET,61,62,'Please input geometry parameters of the shell.'
!在对话框顶部显示提示“Please input geometry parameters of the shell”
MULTIPRO,'END'
!(2)计算节点坐标位置,并定义节点
CSYS,2                                       !转换为球面坐标系
R=(Span*Span/4+f*f)/(2*f)                  !根据矢高和跨度计算曲面半径
Dpha=Atn(Span/2/Sqrt(R*R-Span*Span/4))/Nx    !计算相邻两圈环杆对应的球心夹角Dpha
N,1,R,0,90                                 !定义顶点1号节点的位置坐标为(R,0,90)
*DO,i,1,Nx
   *DO,j,1,Kn*i
      x=R
      y=(j-1)*360/(Kn*i)                     !各圈上的节点数目为Kn的倍数
      z=90-i*Dpha
      N,1+Kn*(i-1)*i/2+j,x,y,z
   *ENDDO
*ENDDO
!(3)定义单元类型及实常数
RTNUM=1                                    !可输入的实常数类型的最大数(为节省篇幅,本例只输入一种实常数类型)
*DIM,AREAIN,ARRAY,RTNUM                      !定义杆件截面面积数组
*DIM,IZZIN,ARRAY,RTNUM                     !定义面积惯性矩数组
*DIM,IYYIN,ARRAY,RTNUM                     !定义面积惯性矩数组
*DIM,TKZIN,ARRAY,RTNUM                     !定义截面沿Z轴的高度数组
*DIM,TKYIN,ARRAY,RTNUM                     !定义截面沿Y轴的高度数组
*DIM,THETAIN,ARRAY,RTNUM                     !定义杆件轴线与X轴夹角数组
*DIM,ISTRNIN,ARRAY,RTNUM                     !定义初始应变数组
*DIM,IXXIN,ARRAY,RTNUM                     !定义扭矩数组
*DIM,SHEARZIN,ARRAY,RTNUM                  !定义剪切变形常量数组
*DIM,SHEARYIN,ARRAY,RTNUM                  !定义剪切变形常量数组
MULTIPRO,'START',1                           !生成单元类型选择对话框
*CSET,1,3,eltype,'Link8 Input 0,Beam4 Input 1',1    !选择单元类型,输入0为选择link8,输入1为选择beam4
*CSET,61,62,'Element Type 1 Option:'
MULTIPRO,'END'
*IF,eltype,EQ,0,THEN                         !若输入0,即eltype=0
ET,1,LINK8
*ENDIF
*IF,eltype,EQ,1,THEN                         !若输入1,即eltype=1
ET,1,BEAM4
*ENDIF
MULTIPRO,'START',10                        !生成第一类实常数R1输入对话框
   *CSET,1,3,AREAIN(1),'Section Area(mm^2),AREA(1)=',239e-5
   *CSET,4,6,IZZIN(1),'Area moment of inertia,IZZ(1)=',62443e-10
   *CSET,7,9,IYYIN(1),'Area moment of inertia,YZZ(1)=',62443e-10
   *CSET,10,12,TKZIN(1),'Thickness along Z asis,TKZ(1)=',152e-3
   *CSET,13,15,TKYIN(1),'Thickness along Y asis,TKY(1)=',152e-3
   *CSET,16,18,THETAIN(1),'Orientation about X asis,THEAT(1)=',0
   *CSET,19,21,ISTRNIN(1),'Initial strain,ISTRN(1)=',0
   *CSET,22,24,IXXIN(1),'Torisonal moment of inertia,IXX=(1)',0
   *CSET,25,27,SHEARZIN(1),'Shear deflection const Z,SHEARZ(1)=',0
   *CSET,28,30,SHEARYIN(1),'Shear deflection const Y,SHEARY(1)=',0
   *CSET,61,62,'Input Real Constant 1:'
*CSET,63,64,'Just input AREA if link8 was used:'
!若选择杆单元只需输入截面面积
MULTIPRO,'END'
*DO,i,1,RTNUM                              !利用数组定义单元实常数
*IF,eltype,eq,0,then
   R,i,AREAIN(i)                           !定义杆单元截面面积
*ENDIF
*IF,eltype,eq,1,then
   R,i,AREAIN(i),IZZIN(i),IYYIN(i),TKZIN(i),TKYIN(i),THETAIN(i),ISTRNIN(i),IXXIN(i),SHEARZIN(i),SHEARYIN(i),,    !定义梁单元截面实常数
*ENDIF
*ENDDO
MULTIPRO,'START',3
   *CSET,1,3,EXIN,'Elasticity(GPA),EX=',2.1e11    !输入弹性模量EX
   *CSET,4,6,PRXYIN,'Passion Ratio,PRXY=',0.3   !输入泊松比PRXY
   *CSET,7,9,DENSIN,'Dens of steel,DENS=',7850    !输入材料的密度DENS
   *CSET,61,62,'Input Material Property:'
MULTIPRO,'END'
MP,EX,1,EXIN                                 !定义第1类材料的弹模EX、泊松比、密度
MP,PRXY,1,PRXYIN
MP,DENS,1,DENSIN
!(4)定义单元连接
MULTIPRO,'START',3                           !生成材料属性输入对话框
   *CSET,1,3,TYPEIN,'Element Type Number',1
   *CSET,4,6,MATIN,'Material Type Number',1
   *CSET,7,9,REALIN,'Real Constance Number',1
   *CSET,61,62,'Input Material Type number:'
MULTIPRO,'END'
TYPE,TYPEIN                                  !设置单元类型
MAT,MATIN                                    !设置材料属性类型
REAL,REALIN                                  !设置实常数类型
!环向杆连接
*DO,i,1,Nx
   *DO,j,1,Kn*i-1                            !第1~Kn*i-1对称区的节点循环
      E,1+Kn*(i-1)*i/2+j,1+Kn*(i-1)*i/2+j+1
   *ENDDO
   E,1+Kn*(i-1)*i/2+1,1+Kn*(i-1)*i/2+Kn*i    !连接最后一对称区的环杆
*ENDDO
!径向的单元连接
*DO,i,1,Kn                                 !对各对称区循环
   E,1,1+i                                 !定义中心处径向杆单元
*ENDDO
*DO,j,1,Nx-1                                 !从里圈向外圈循环
*DO,k,1,Kn                                 !从各对称区循环
*DO,i,1,j+1                                  !对称区内循环
   *IF,i,eq,j+1,THEN                         !判断是当前对称区的最后一根杆
      *IF,k,EQ,Kn,THEN
      E,1+Kn*(j-1)*j/2+1,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i   !j圈第1个节点和j+1圈最后1个节点
      *ELSE
      E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i   !一般区内的最后一根连杆
      *ENDIF
   *ELSE
    E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i   !一般正向连杆
    *ENDIF
*ENDDO
*DO,i,1,j
   E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i+1    !一般负向连杆
*ENDDO
*ENDDO
*ENDDO
!(5)定义边界约束和节点荷载
*DO,i,1,1+Kn*(Nx-1)*Nx/2+Kn*Nx
   *IF,i,GT,1+Kn*(Nx-1)*Nx/2,THEN
   D,i,all,0
   *ENDIF
*ENDDO
!(6)保存文件模型
SAVE,MODE,DB,,ALL

15122839822 发表于 2018-6-8 09:04:01

求等效荷载的过程如下:和书上也是一样

!(1)定义面单元surf154
FINISH
/CLEAR
RESUME,MODE,DB,,0,0                        !调用凯威特网壳模型
/PREP7
LOCAL,11,0,0,0,0                           !定义局部坐标系以便施加竖直向下的荷载
ET,10,SURF154,,1,,1                        !定义面单元surf154
R,10,,,,,,,0.1,0.1,0.1                     
MP,DENS,10,0                                 !设置材料密度
TYPE,10
MAT,10                                       !设置材料属性
REAL,10
ESYS,11                                    !设置单元坐标系为平行于局部坐标系11的坐标系
ENUMmax1=ELMIQR(0,14)+1                      !找到最后一个杆单元编号,便于知道第一个面单元的编号
*DO,j,1,Kn-1                                         !连接第一圈顶点的三角形单元
   E,1,j+1,j+2
*ENDDO
E,1,Kn+1,2
*DO,i,1,Nx-1                                 !从里圈第2圈开始向最外圈循环
   *DO,j,1,Kn                              !对各个对称区循环
      *DO,k,1,i+1                            !对每个对称区杆循环
         *IF,k,eq,i+1,then                   !如果是当前对称区的最后一根杆
            *IF,j,eq,Kn,then               !如果是最后一个对称区
               E,1+Kn*(i-1)*i/2+1,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k,1+Kn*(i+1)*i/2+1
            *ELSE
               E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1
            *ENDIF
         *ELSE
            E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1            
         *ENDIF
      *ENDDO
      *DO,k,1,i                              !负向连杆
         *IF,k,eq,i,then
            *IF,j,eq,Kn,then
               E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1,1+Kn*(i-1)*i/2+1
            *ELSE
               E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1,1+Kn*(i-1)*i/2+(j-1)*i+k+1
            *ENDIF
         *ELSE
            E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1,1+Kn*(i-1)*i/2+(j-1)*i+k+1
         *ENDIF
      *ENDDO
   *ENDDO
*ENDDO
ENUMmax2=ELMIQR(0,14)                        !找到最后一个面单元的编号
!(2)约束所有节点
*DO,i,1,1+Kn*(Nx-1)*Nx/2+Kn*Nx
   D,i,UX,0
   D,i,UY,0
   D,i,UZ,0   
*ENDDO
!(3)施加面荷载
MULTIPRO,'START',1                           !生成荷载输入对话框
   *CSET,1,3,P,'Surface Load(N/m2)',2000      !注意施加荷载的符号应与实际荷载方向反号
   *CSET,61,62,'Please Input Surface Load Value(reverse):'
MULTIPRO,'END'
*DO,i,ENUMmax1,ENUMmax2,1                  !对所有面单元施加面荷载
   SFE,i,3,PRES,,P
*ENDDO
!(4)求解节点荷载
FINISH
/SOLU                                        !进入求解器
SOLVE
FINISH
/POST1                                       !进入后处理器
SET,LAST
!(5)提取等效节点荷载
RSYS,0                                       !将结果坐标系旋转到笛卡尔坐标系下
*GET,Numnode,NODE,,num,max
*DIM,Force_X,,Numnode                        !定义X向支座反力组
*DIM,Force_Y,,Numnode
*DIM,Force_Z,,Numnode
*DO,i,1,Numnode,1                            !提取各节点支座反力植赋给支座反力数组
   *GET,Force_X(i),NODE,i,RF,FX
   *GET,Force_Y(i),NODE,i,RF,FY
   *GET,Force_Z(i),NODE,i,RF,FZ
*ENDDO
!(6)编写施加等效节点荷载的宏命令文件
*DIM,Array_PreName,CHAR,Numnode            !定义一维字符串型数组
*DIM,Node_Num,ARRAY,Numnode                  !定义一维数组作为节点号数组
*DIM,Array_PostName,CHAR,Numnode,3         !定义三维字符串数组
*DO,i,1,Numnode
   *SET,Array_PreName(i),'f,'                !给一维字符串赋字符串“f,”
   *SET,Node_Num(i),i                        !给节点号数组赋节点编号       
   *SET,Array_PostName(i,1),',fx,'         !给三维字符串数组的第一、二、三列赋字符串“,fx,”fyfz
   *SET,Array_PostName(i,2),',fy,'
   *SET,Array_PostName(i,3),',fz,'
*ENDDO
*CREATE,GUODUWENJIAN,MAC
   *VWRITE,Array_PreName(1),Node_Num(1),Array_PostName(1,1),Force_X(1)      !等效荷载输入X向
   (a6,f6.0,a8,f16.8)
   *VWRITE,Array_PreName(1),Node_Num(1),Array_PostName(1,2),Force_Y(1)      !等效荷载写入Y向
   (a6,f6.0,a8,f16.8)
   *VWRITE,Array_PreName(1),Node_Num(1),Array_PostName(1,3),Force_Z(1)      !等效荷载写入Z向
   (a6,f6.0,a8,f16.8)
*END
*CFOPEN,EQUIFORCE,MAC
   GUODUWENJIAN
*CFCLOS

htbbzzg 发表于 2018-6-9 09:23:13

你做的好像是该书中的例子 5.3,但是你对该例子的命令流做了很多改动,估计是改动中有的地方与原意不符。命令流内容太多,你自己检查一下吧。
页: [1]
查看完整版本: 单层网壳稳定分析中的问题