各种ansys经典问答大集合-4
----------------------
Q: 如何施加非法向的面力,比如作用在斜杆上的竖向均布荷载。
A:在任意面施加任意方向任意变化的压力
在某些特殊的应用场合,可能需要在结构件的某个面上施加某个坐标方向的随坐标位置变化的压力载荷,当然,这在一定程度上可以通过ANSYS表面效应单元实现。如果利用ANSYS的参数化设计语言,也可以非常完美地实现此功能,下面通过一个小例子描述此方法。
!!!在执行如下加载命令之前,请务必用选择命令asel将需要加载的几何面选择出来
!!!
finish
/prep7
et,500,shell63
press=100e6
amesh,all
esla,s
nsla,s,1
! 如果载荷的反向是一个特殊坐标系的方向,可在此建立局部坐标系,并将
! 所有节点坐标系旋转到局部坐标系下.
*get,enmax,elem,,num,max
dofsel,s,fx,fy,fz
fcum,add !!!将力的施加方式设置为"累加",而不是缺省的"替代"
*do,i,1,enmax
*if,esel,eq,1,then
*get,ae,elem,i,area !此命令用单元真实面积,如用投影面积,请用下几条命令
! *get,ae,elem,i,aproj,x !此命令用单元X投影面积,如用真实面积,请用上一条命令
! *get,ae,elem,i,aproj,y !此命令用单元Y投影面积
! *get,ae,elem,i,aproj,z !此命令用单元Z投影面积
xe=centrx !单元中心X坐标(用于求解压力值)
ye=centry !单元中心Y坐标(用于求解压力值)
ze=centrz !单元中心Z坐标(用于求解压力值)
! 下面输入压力随坐标变化的公式,本例的压力随X和Y坐标线性变化.
p_e=(xe-10)*press+(ye-5)*press
f_tot=p_e*ae
esel,s,elem,,i
nsle,s,corner
*get,nn,node,,count
f_n=f_tot/nn
*do,j,1,nn
f,nelem(i,j),fx,f_n !压力的作用方向为X方向
! f,nelem(i,j),fy,f_n !压力的作用方向为Y方向
! f,nelem(i,j),fz,f_n !压力的作用方向为Z方向
*enddo
*endif
esla,s
*enddo
aclear,all
fcum,repl !!!将力的施加方式还原为缺省的"替代"
dofsel,all
allsel
-------------------------------------------------------------------------------------------------------
QA:*DOWHILE,PARA
如果PARA为真,则进行循环。*DOWHILE,1.0将无限循环下去。
这条命令对使用APDL的朋友会有用的。
--------------------------------------------------------------------------------------------------------------------------------------------
Q:在ansys中如何施加与某一坐标轴成一角度的集中载荷?
A:可以通过旋转结点坐标系来达到目的。
A:you may decompose the multiple-force to the coordinate axis.
--------------------------------------------------------------------------------------------------------------------------------------------
Q:在ANSYS/DYNA中,已经进行输出子步控制但所有的数据却只写入最后一子步,不知为何?
A:可曾使用outres,all,all? 你应该是没有输出每一子步的结果,使用上述命令看看。
--------------------------------------------------------------------------------------------------------------------------------------------
Q:请问索的弹性模量在ansys中如何处理?
A:非线性弹性
A:考虑全桥,用ernst公式修正即可
Q: 如何在ansys中实现?
--------------------------------------------------------------------------------------------------------------------------------------------
Q:既然混凝土这方面问题多多,是否请各位大虾建立一小模型,然后将全命令流贴上来,大家一起讨论和分析,岂不快哉?
A:一受均布荷载的简支梁,跨度为3000mm,截面为100x200mm,配有两根钢筋,承受的均布载荷为0.04N/mm*mm。命令中采用了1/4模型,材料参数详见命令中。由于选择时采用的是实体号而不是坐标,可能在有些系统上会受到影响,各位注意。
!钢筋混凝土简支梁分析
/COM, Structural
!----------定义单元及材料等---------------------
/PREP7
et,1,link8 !定义link8单元
et,2,solid65 !定义solid65单元
keyopt,2,7,1
r,1,314 !定义link8单元的面积
r,2 !定义solid65的实常数号
mp,ex,1,2e5 !定义link8单元的弹性模量
mp,prxy,1,0.3 !定义link8单元的泊松系数
mp,ex,2,4e4 !定义solid65单元的弹性模量
mp,prxy,2,0.3 !定义solid65单元的泊松系数
tb,concr,2 !定义2号为混凝土
tbdata,,0.9,1,1.8,50 !定义混凝土的c1,c2,Rl,Ra
!----------建立几何模型-------------------------
blc4, , ,50,200,1500 !定义梁体
/view,1,1,1,1 !定义ISO查看
/ang,1
vplot !绘制梁体
kwpave,5 !工作平面移动到关键点5
wpoff,25 !工作平面移动25mm
wprot,0,0,90 !工作平面旋转
vsbw,1 !分割梁体
wpoff,0,40 !工作平面移动40mm
wprot,0,90 !工作平面旋转
vsbw,all !分割梁体
wpoff,300 !再将梁体分割为三个区域
wprot,0,0,90 !(原为控制单元密度而设)
vsbw,all
wpoff,0,0,900
vsbw,all
wpstyl !关闭工作平面显示
nummrg,all !整理编号
numcmp,all
!------------划分单元网格---------------------------
lsel,s,,,41,57,16 !定义line41,line57为新的选择集
lsel,a,,,9 !定义line9也在选择集中
latt,1,1,1 !定义选择集的属性
lesize,9,,,20,,,,,1 !将line9划分为20个单元
lesize,41,,,20,,,,,1 !将line41划分为20个单元
lesize,57,,,60,,,,,1 !将line57划分为60个单元
lmesh,all !对线划分单元
!-------------
allsel,all !新的选择集为所有的实体
vsel,s,,,all !定义所有体为选择集
vatt,2,2,2 !定义选择集的属性
lesize,22,,,2,,,,,0 !定义体线的单元数以控制体单元
lesize,23,,,2,,,,,0
lesize,33,,,2,,,,,0
lesize,28,,,4,,,,,0
mshape,0,3d !将体划分单元的形状定位HEX
mshkey,1 !采用MAPPED划分器
vmesh,all !对体进行划分单元
finish
!--------------定义约束及荷载-------------------------
/solu
asel,s,,,2,22,20
asel,a,,,14,17,3
da,all,uy !对支撑端面施加Uy方向约束
asel,s,,,3,23,20
asel,a,,,15,19,4
da,all,uz !对正对称面施加Uz方向约束
asel,s,,,32,36,4
asel,a,,,50,52,2
asel,a,,,41,43,2
da,all,ux !对侧对称面施加Ux方向约束
asel,s,,,21,27,6
asel,a,,,42,46,4
asel,a,,,35,51,16
sfa,all,1,pres,0.04 !对顶面施加面荷载(N/mm*mm)
allsel,all
!--------------定义非线性分析选项--------------------
cnvtol,f,,0.05,2 !定义收敛条件,使用缺省的VALUE
nsubst,25 !定义子步数
outres,all,all !输出每一子步的结果
autots,1 !打开自动时间步控制
lnsrch,1 !打开线性搜索
ncnv,2 !如果不收敛时结束而不退出
neqit,50 !每一子步中方程的迭代次数限值
pred,on !打开预测器
time,50 !定义时间
solve !求解
!--------------进入后处理过程-----------------------
finish
/post1
pldisp,0 !绘制变形图(缺省为最后一步的)
etable,sig,ls,1 !定义应力表
plls,sigi,sigi,1 !绘制上述应力
plnsol,s,z,0,1 !绘制Z方向的应力
/device,vector,on
A:大家都提到了收敛困难的问题,为加速收敛应该注意一下几个问题。
1 收敛容差:ANSYS缺省的收敛准则会根据单元的不同而检查不同的收敛力素和容差,例如当采用solid65和link8时,缺省的要检查F和DISP两个力素,其容差也是缺省的(Help中有)。对于钢筋混凝土结构,一般而言其位移比较小,仅使用F力素收敛即可;但其容差也同时放松,一般采用5%即可(缺省是5‰)(命令:cnvtol,f,,0.05,2)
2 其它选项的设置
自动时间步:打开此选择,可以让程序决定子步间荷载增量的大小及其是增加或是减小,收敛速度较快(命令:autots,1)。打开后,似乎定义的子步数不起控制作用了。
打开线性搜索:可以帮助收敛的速度(命令:lnsrch,1)
打开预测器:可以帮助收敛的速度(命令red,on)
平衡迭代次数:在每一子步中的迭代次数缺省是25,将其增加,例如改为50(命令: neqit,50)
NSUBST:此值不宜过小,否则计算过程中老是调整,影响计算速度。
当然对于比较简单的算例或是分布模型,可能不需要如此多的选项,但对于复杂的模型是需要的,各位可以试试。
A:1 结构有限元分析流行的几种模型
比较公认的有分离式模型(discretemodel), 分布式模型(smearedmodel)(也有称整体式模型),组合式模型(也有称埋藏式模型)三种。
分离式模型把钢筋和混凝土作为不同的单元处理,例如混凝土采用solid65,而钢筋采用link8等,可以根据不同的单元类型进行组合。在该模型中可以插入联结单元考虑粘结和滑移,当然如果认为粘结很好,也可以不考虑联结单元问题。
分布式模型是把钢筋以一定的角度分布于整个单元中,并认为二者粘结很好,单元是连续均匀的材料。
组合式模型也认为二者之间粘结很好,没有相对滑移;又分为分层组合式、带钢筋膜的单元等方式。与分布式模型比较,二者的差异在于组合是分别求出各自的刚度矩阵进行组合,而分布是在弹性矩阵中考虑各自对刚度的贡献。
2 ANSYS可以考虑的模型
应该是两种,即分离式模型(discretemodel)和分布式模型(smearedmodel)。分离式你可以选择不同的单元划分方式,例如钢筋用体单元而非link8,但是这种模型的收敛性常存在问题。对于分布式模型,solid65可以考虑三种钢筋材料,应该也够用了,这种模型比较容易得到收敛的解(这里的收敛是指尚没有达到破坏时候的解,当结构破坏时不能收敛是正常的)。