sysh320 发表于 2006-7-18 17:02

第一种方法:1.积分命令流如下:
path,kz,2
ppath,1,,b0/2,0,l0/2
ppath,2,,b0/2,h0,l0/2
pdef,sigmz,s,z
plpath,sigmz
!跨中轴力nfor1=-2.55e-5
pcalc,intg,nfor,sigmz,yg,b0
*get,nfor1,path,,last,nfor
!跨中剪力qfor1=-4.039e-9
pdef,sigmyz,s,yz
plpath,sigmyz
pcalc,intg,qfor,sigmyz,yg,1
*get,qfor1,path,,last,qfor
!跨中弯矩mfor1=-45251688误差0.6%
pcalc,mult,md1,sigmz,s !相乘计算
pcalc,intg,mfor,md1,s,b0 !积分计算
*get,mfor1,path,,last,mfor
!1/4截面剪力qz(分条计算)=-30083.11误差0.3%
*dim,qq,,20
*do,i,1,20
path,pname,2
ppath,1,,(i-1)*10,0,l0/4
ppath,2,,i*10,h0,l0/4
pdef,sigmyz,s,yz
pcalc,intg,qfor,sigmyz,yg,10
*get,qq(i),path,,last,qfor
*enddo
qz=0
*do,i,1,20
qz=qz+qq(i)
*enddo
*stat

2.关于pcalc,intg,varname,lab1,lab2,fact1的探讨
varname----积分结果变量
lab1,lab2--变量,可取xg,yg,zg(总体坐标),s(当前路径)及定义的变量(如上述中的md1);
fact1------系数
即varname=fact1×∫lab1×d(lab2),积分路径为当前路径S的长度

3.对于较复杂的截面如何进行呢?例如箱形截面,可否用面积直接积分呢?并且path是断的是否也可以呢?

[ 本帖最后由 sysh320 于 2006-7-30 10:57 编辑 ]

sysh320 发表于 2006-7-18 17:03

以下是上面方法的一些说明:
1.跨中弯矩计算中的几个语句解释
pcalc,mult,md1,sigmz,s !相乘计算,其中的s是路径长度变量,即σzi*si(i=路径上的点数)
pcalc,intg,mfor,md1,s,b0 !积分计算,mfor=b0*∫σzi*si*ds,其中的s是路径长度变量,即沿路径长度积分
                         !假定了在宽度方向同高纤维应力相同,否则不能乘b0;
                         !理论上用分条计算更好些,例如1/4截面的剪力计算。
注意:使用s积分概念更明确!不必使用XG,YG等。

2.因为这里是特例(没有轴力),对于没有轴力的断面,没有必要必须取中性轴进行积分计算,因为取何处都是一样的。对于一般情况,也没有必要找中性轴,因为用实体计算,其应力的分布不同于传统的计算,其不同竖向线上的应力零点可能是不同的(例如剪力滞等影响),给确定中性轴带来困难,且在路径上找零应力点也不方便。为方便可取路径起点,这样积分后,再进行移轴是一样的,相当于力素都对路径起点,然后移到某个轴上(例如重心)。另外,应力为零的点就不在截面之内时呢?

3.有些算法是否正确,可通过简单的例子计算即可证明。

sysh320 发表于 2006-7-19 10:13

第三种方法:最早的3D实体单元内力计算是迫不得已而编制的,适合于较早的版本。现在新版本出来的很快,功能上也有增加。对于3D实体单元的内力计算,可采用面操作(应该是V8以上吧,没有细考!)。例如用悬臂梁采用3D实体单元,其某个截面的的内力计算如下,并具有详细解释。这种方法较原来的更方便,大家不放一用。

面操作及悬臂梁的内力计算
FINISH$/CLEAR$/PREP7
ET,1,SOLID95$MP,EX,1,2E11$MP,PRXY,1,0.3      !定义单元类型、材料特性
BLC4,2,3,0.2,0.3,4$DA,2,ALL$FK,1,FY,-2E4$FK,3,FY,-2E4!创建几何模型、加约束和荷载
FK,3,FX,0.8E4$FK,4,FX,0.8E4$SFA,1,1,PRES,1E6      !施加荷载
ESIZE,0.05$VMESH,ALL$FINISH$/SOLU$SOLVE      !生成有限元模型并求解
FINISH$/POST1            !进入后处理层
WPOFF,,,2$SUCR,SUZ2,CPLANE,3      !移动工作平面、创建面SUZ2
SUMAP,MYSX,S,X$SUMAP,MYSY,S,Y    !映射X和Y方向应力
SUMAP,MYSZ,S,Z$SUMAP,MYSXY,S,XY!映射Z和XY方向应力
SUMAP,MYSYZ,S,YZ$SUMAP,MYSXZ,S,XZ!映射YZ和XZ方向应力
SUPL,SUZ2$SUPL,SUZ2,MYSZ      !显示面本身、面项MYSZ
SUPL,SUZ2,MYSYZ$SUPL,SUZ2,MYS    !显示面项MYSYZ,矢量显示应力
SUPR,ALL,MYSZ            !列表显示MYSZ面项
SUEVAL,XFORCE,MYSXZ,INTG!求截面上FX,理论结果为-16000,误差1%
SUEVAL,YFORCE,MYSYZ,INTG!求截面上FY,理论结果为40000,误差0.5%
SUEVAL,ZFORCE,MYSZ,INTG    !求截面上FZ,理论结果为-6000,没有误差
SUEVAL,MYA,DA,SUM      !求截面面积并赋给MYA变量
SUEVAL,MYYA,GCY,INTG      !求关于X轴的面积矩并赋给变量MYYA
MYYA=MYYA/MYA      !得到面积重心到X轴的距离=面积矩/面积
SUEVAL,MYXA,GCX,INTG    !求关于Y轴的面积矩并赋给变量MYXA
MYXA=MYXA/MYA      !得到面积重心到Y轴的距离=面积矩/面积
SUCALC,SZGCY,MYSZ,MULT,GCY!计算MYSZ×GCY,并赋给面项SZGCY
SUEVAL,MX1,SZGCY,INTG    !对面项SZGCY在面上积分得到MX1
SUCALC,SZGCX,MYSZ,MULT,GCX!计算MYSZ×GCZ,并赋给面项SZGCX
SUEVAL,MY1,SZGCX,INTG    !对面项SZGCX在面上积分得到MY1
!上述弯矩基于总体直角坐标系原点而言的,应对面积重心取矩,将内力简化到面积重心上
MX1=MX1-ZFORCE*MYYAokok.org   !理论结果为80000,误差为0.08%
MY1=MY1-ZFORCE*MYXAokok.org   !理论结果-32000,误差为0.2%

[ 本帖最后由 sysh320 于 2006-7-30 10:57 编辑 ]

sysh320 发表于 2006-7-19 10:21

以上是我搜集的关于梁中内力的求解方法,有些原理搞不是很明白!
第一种方法是积分计算,对于规则的截面还好理解,如果遇到不规则的截面命令就不好编了,感觉适用面不是很广,但原理好理解!
第二种方法的原理就不怎么明白了,我也试了其他梁的计算,感觉还是很准的,但是作者始终没有给出解释。有哪位高手要是知道还望指教1
第三种方法是面操作,也好理解!但是命令有点繁琐,!
这些还只是梁的内力求解,至于板的内力我还是没有发现!等待高手的指点......

ysp8293 发表于 2006-7-28 15:28

我在做密肋楼盖的模拟,一起研究。我的邮箱caozhengzz◎163.com

sysh320 发表于 2006-7-29 17:53

好啊,不过为什么不能在这研究呢?我有时间会给你发邮件的,但愿我的问题能尽快得到解决!
我的邮箱sysh320@126.com
谢谢啊

sysh320 发表于 2006-7-29 17:55

这段时间一直在研究实体单元内力的求解,也取得了一点心得!等都作出来了肯定与大家一起分享!

sysh320 发表于 2006-7-30 10:58

第二种方法:平常计算弯矩或剪力,一般用剖面法,即用一个剖面将体剖开,分析剖面左边或右边的受力情况。
尝试用较为简单的方法,不用积分来求弯矩,曾试过计算简支梁与悬臂梁,外荷载所括集中力、面荷载、体荷载(自重),结果准确。对别的结构未曾算过,不知可行与否?

同样用上面的例子,为了后处理方便,但略作改动,主要为了后理方便,计算结果未变!
finish
/clear
b0=200
h0=300
l0=3000
ec=3.3e5
p0=0.2
/prep7
csys,0
et,1,solid95
mp,ex,1,ec
mp,prxy,1,0.167
blc4,,,b0,h0,l0
wpoffs,,,750!为了后处理中选择单元方便,故将体剖分
vsbw,all
wpoffs,,,750!为了后处理中选择单元方便,故将体剖分
vsbw,all
/view,1,1,1,1
/ang,1
vplot
lsel,s,loc,y,0
lsel,r,loc,z,0
dl,all,,uy
lsel,s,loc,y,0
lsel,r,loc,z,l0
dl,all,,uy
ksel,s,loc,x,0
ksel,r,loc,y,0
dk,all,ux
asel,s,loc,y,h0
sfa,all,1,pres,p0
allsel,all
esize,50
vsweep,all
finish
/solu
solve
finish

/post1
!首先求跨中弯矩
spoint,,0,0,1500!将计算点移至跨中
nsel,s,loc,z,0,1500!选择计算截面某一侧的全部节点
fsum !此时求得支座反力以及作用在模型上的外力(仅算集中力,面荷载及体荷载如重力等未计算在内)对跨中截面的力矩Mx
allsel,all
vsel,s,loc,z,0,1500
eslv,r !选择计算截面某一侧全部单元,在命令流中利用位置选单元无法实现,故先选择体,再选与体相联的单元,但在gui模式中较易做到
fsum !此时求得外力(仅算面荷载及体荷如重力等)对跨中截面的力矩Mx
!求得上面两个值后,将后一个值反号与前一个值相加即得跨中截面力矩Mx(正负号的规定参看ansys帮助,与材料力学中的不一定相同)

!求1/4截面的剪力
spoint,,0,0,750!将计算点移到1/4截面
nsel,s,loc,z,0,750!选择计算截面某一侧的全部节点
fsum !此时求得支座反力以及作用在模型上的外力(仅算集中力,面荷载及体荷载如重力等未计算在内)对1/4截面的剪力fy
allsel,all
vsel,s,loc,z,0,750
eslv,r!在命令流中利用位置选单元无法实现,但在gui模式中较易做到
fsum !此时求得外力(仅算面荷载及体荷如重力等)对1/4截面的剪力fy
!求得上面两个值后,将后一个值反号与前一值相加即得剪力fy(正负号的规定参看ansys帮助,与材料力学中的不一定相同)

sysh320 发表于 2006-7-30 11:03

突然之间发现原来没有粘第二种方法,现在粘过来了!
我最近就是一直用这种方法,验证了作者说的简支梁、悬臂梁都没有问题,误差几乎没有,接着我又验算了空心梁、连续梁都是没有什么误差,都在1%以内。
现在正在验证该方法是不是也可以用于板中内力的求解,可是对于板的理论内力的求解至今还没有找到,也看了很多的书籍,可介绍的方法都是计算整个楼板的,还没有发现单独一块板的计算的!
哪位高手能不能提供单块板内力求解的精确解?

vigorao 发表于 2006-8-4 12:28

可以在附件中添加图片啊

sysh320 发表于 2006-8-11 14:13

谢谢楼上的提醒,我会及时加上图片的!

sysh320 发表于 2006-8-12 12:24

最近又收集了用板单元求解时的弯矩输出,挺方便的算法,有时间也粘过来供大家分享

sysh320 发表于 2006-8-20 17:07

板中内力的求解方法很简单,可以用梁单元来提取板单元内力,当取泊松比为0的时候
板弯矩 Mx=E t^3/12*(w)''

而梁弯矩 Mx'=E'bh^3/12*(w)''

取梁单元高度h为板厚t,则Mx/Mx' = E/E'b

梁单元与板单元共节点建模,并把梁单元弹模E'取很小,不影响板的受力,
即可由梁单元输出内力,乘以比例系数,得到板的内力。

实际混凝土结构的泊松比很小,采用这个方法的计算误差很小,可以接受的。另外有个好处,可以直接由ansys得到内力图。

sysh320 发表于 2006-8-20 17:09

板跟实体单元不一样,板单元计算得到的是内力结果而不是应力结果,按道理内力结果应该能直接输出,事实上ansys也提供了板单元内力输出功能,问题是每个板单元只能输出一组板弯矩结果,当单元划分较粗、垂直板方向的剪力较大时,输出的板弯矩结果误差较大。另外只能输出内力云图,内力的方向不好判断,依赖于板单元的面方向。而梁单元不存在这样的问题,在ansys中结果输出和显示都很方便。

板可以认为是两维受弯构件,而梁是一维受弯构件,当忽略板另一个方向的弯曲时,板和梁的效果是一样的,比如在分析箱梁横向的弯曲时,不考虑箱梁的纵向弯曲,结果的差别很小。

我做过一个箱梁的例子,分析箱梁跨中的横向内力,先用板单元划分箱梁,然后把跨中的板节点都选出来,手工创建刚度很弱的梁单元,梁单元刚度大了,会影响板的受力,结果就不准了。我做过的例子如下:

sysh320 发表于 2006-8-20 17:10

板单元是很重要的一类单元。在ansys中相应的是shell系列单元,63号单元用得比较多,solid单元是实体系列单元,65号是混凝土单元,一般用在极限承载能力分析的时候,一般情况弹性或者非线性分析可以用45号8节点单元,beam系列单元是梁单元。

板状结构分析,一般用shell单元,实体单元也可以的,实体单元三个方向的尺度不能相差太大,受板厚限制,需要划分很多单元才能达到精度,而shell单元不受板厚影响,需要的单元数量少,计算快。

条孔状的空心板可以用正交异性的shell单元分析,定义两个方向的刚度不一样,用实体单元也行,后处理的时候可以定义路径,把上下缘沿路径的应力取出,由应力a=M/I*y,在Excel中计算弯矩。
页: 1 2 3 4 [5] 6
查看完整版本: 【讨论】现浇混凝土空心板建模、网格划分及内力求解