小弟新手:
以下是小弟找的一个宏命令(命令流1),生成k6网壳,自己根据自己问题作了修改如下。
直接静力求解(所有都是默认值,不考虑几何非线性)出现以下图示问题:
但我用另外一个命令流(命令流2)就能算出结果,
!!!!!命令流1
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
/PMACRO ! 指定宏的内容被写入ANSYS的会话LOG文件中,必须置于命令顶层
*AFUN,DEG ! 在角度函数的输入与输出中使用度为单位
/PREP7 ! 进入前处理模块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) !根据矢高和跨度计算曲面半径R
DPha=Atn(Span/2/Sqrt(R*R-Span*Span/4))/Nx !计算相邻两圈环杆对应的球心夹角Dpha
K,1,R,0,90 ! 定义顶点1号节点的位置坐标为(R,0,90)
*DO,i,1,Nx ! 第1~Nx圈的节点循环
*DO,j,1,Kn*i ! 对称区的节点循环,第i圈可分为Kn*i份
x=R ! 输入x坐标
y=(j-1)*360/(Kn*i) ! 输入y坐标,各圈上的节点数目为Kn倍圈号
z=90-i*DPha ! 输入z坐标
K,1+Kn*(i-1)*i/2+j,x,y,z ! 依次计算并定义节点的编号和位置
*ENDDO
*ENDDO
Numkeypoint=1+Kn*(Nx-1)*Nx/2+Kn*Nx !定义结点最大编号
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!(3)定义单元类型及实常数
MULTIPRO,'START', 1 ! 生成单元类型选择对话框
*CSET,1,3,eltype,'Link8 Input 0, Beam189 Input 1',1 ! 选择单元类型,输入0为选择link8,输入1为选择beam189,也可通过改变本部程序增加新的单元类型。
*CSET,61,62,'Element Type 1 Option:'
MULTIPRO,'END'
*IF,eltype,eq,0,then ! 若输入0,即eltype=0
ET,1,link8 ! 定义第1类单元类型为杆单元link8
*ENDIF
*IF,eltype,EQ,1,THEN ! 若输入1,即eltype=1
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
MULTIPRO,'START',2 ! 生成材料属性输入对话框
*CSET,1,3,Neijing,'Neijing(m) =',0.035 ! 杆件内径
*CSET,4,6,WAijing,'Waijing(m), =',0.038 ! 杆件外径
*CSET,61,62,'Ganjianjiemain:'
MULTIPRO,'END'
ET,1,BEAM189
SECTYPE,1, BEAM, CTUBE, , 0
SECOFFSET, CENT
SECDATA,Neijing,Waijing,0,0,0,0,0,0,0,0
*ENDIF
MULTIPRO,'START',5 ! 生成材料属性输入对话框
*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,10,12,Fy,'Qufuqiangdu(N/mm2), Fy =',235 ! 输入材料的密度屈服强度
*CSET,13,15,EX,'Qufuhoutanxingmoliang, EX2 =',2.1e8 ! 输入材料的密度屈服强度
*CSET,61,62,'Input Material Property:'
MULTIPRO,'END'
MPTEMP,,,,,,,,
MPTEMP,1,0
MPDATA,EX,1,,EXIN ! 定义第1类材料的弹性模量EX
MPDATA,PRXY,1,,PRXYIN ! 定义第1类材料的泊松比PRXY
MP,DENS,1,DENSIN ! 定义第1类材料的密度DENS
TB,BISO,1,1,2,
TBTEMP,0
TBDATA,,Fy,EX2,,,,
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!(4)定义单元连接
! 环向杆连接
CSYS,0
*DO,i,1,Nx ! 第1~Nx圈的节点循环
*DO,j,1,Kn*i-1 ! 第1~Kn*i-1对称区的节点循环
l,1+Kn*(i-1)*i/2+j,1+Kn*(i-1)*i/2+j+1 ! 连接相邻两节点生成单元
*ENDDO
l,1+Kn*(i-1)*i/2+1,1+Kn*(i-1)*i/2+Kn*i ! 连接最后一对称区的环杆
*ENDDO
! 径向的单元连接
*DO,i,1,Kn ! 对各对称区循环
l,1,1+i ! 定义中心处径向杆单元
*ENDDO
*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 ! 判断是否是最后一个对称区
l,1+Kn*(i-1)*i/2+1,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k ! 第1个节点和最后一个节点的连杆
*ELSE
l,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k !一般区内的最后一根连杆
*ENDIF
*ELSE
l,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k ! 一般正向连杆
*ENDIF
*ENDDO
*DO,k,1,i
l,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1 ! 一般负向连杆
*ENDDO
*ENDDO
*ENDDO
!(5) 划分网格,定义边界约束
MULTIPRO,'START',1 ! 生成单元数性输入对话框
*CSET,1,3,Ndanyuan,'liangdanyuanshu =',4
*CSET,61,62,'Input Material Property:'
MULTIPRO,'END'
/prep7
LESIZE,ALL, , ,Ndanyuan, ,1, , ,0,
LMESH,All, ! 划分网格
CSYS,2
KSEL,S,LOC,Z,(90-Nx*DPha)
DK,ALL,ALL,0,
CSYS,0 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 定义约束
MULTIPRO,'START',1 ! 生成材料属性输入对话框
*CSET,1,3,P,'jiedianhezai =',0 ! 自定义节点荷载
*CSET,61,62,'jiedianhezai:'
MULTIPRO,'END'
KSEL,ALL
FK,ALL,FZ,-P,
/solu
antype,0
solve
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
以下是另一个形似且正确的命令流2(宏):
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!单位说明:长度m,时间s,力N,质量Kg
Kuadu=6000 !网壳跨度(mm)
ShikuaB=1/5 !网壳矢跨比
Gzj=76 !管的直径 (mm)
Gbh=3 !管的壁厚 (mm)
Waijing=Gzj/2 !管的半径 (mm)
Neijing=Waijing-Gbh !管的内径 (mm)
P=500000 !所施加荷载最大值 (N)
Nhuan=2 !网壳环数
Njing=6 !网壳径数
Ndanyuan=4 !每杆单元划分数
Shigao=Kuadu*ShikuaB !网壳的矢高(mm)
Banjing=Kuadu**2/8/Shigao+Shigao/2 !网壳对应的球半径(mm)
Jiaodu=2*(ASIN(Kuadu/2/Banjing))*180/3.1415926535898 !网壳对应的球心角度数(角度值)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
/prep7
!定义单元类型,实常数,材料性质
ET,1,BEAM189
SECTYPE, 1, BEAM, CTUBE, , 0
SECOFFSET, CENT
SECDATA,Neijing,Waijing,0,0,0,0,0,0,0,0
MPTEMP,,,,,,,,
MPTEMP,1,0
MPDATA,EX,1,,2.1e5
MPDATA,PRXY,1,,0.3
TB,BISO,1,1,2,
TBTEMP,0
TBDATA,,235,2.1e3,,,,
!创建几何模型
K,1,,,,
K,2,0,banjing,0
K,3,1,1,0
kaiwit1,1,2,3,Njing,Nhuan,Jiaodu!!!!!!!!!!!!!!!!!!!1kaiweit是另外一个宏:生成关键点和线的
/prep7
!划分网格
LESIZE,ALL, , ,Ndanyuan, ,1, , ,0,
LMESH,All,
!施加支座约束(几何模型)
KSEL,S,LOC,Y,Banjing*cos(jiaodu*3.1415926/360)
DK,ALL,ALL,0,
KSEL,ALL
FK,ALL,FY,-P,
/SOL
!设置分析类型并加载分析
ANTYPE,0
SOLVE
|