根据孙训方教授所著《材料力学(Ⅰ)》第4.4节“梁横截面上的正应力 梁的正应力强度条件”可知,等直梁在纯弯曲时横截面上任一点处正应力的计算公式为:

式中:M为横截面上的弯矩;Iz为横截面对中性轴z的惯性矩;y为所求应力点的纵坐标。

图1 等直纯弯梁示意图

联立两式可得:

2.案例计算
建立一个长度为10m的悬臂梁,梁上施加大小为5e5N/m的均布荷载,代码如下
model newfish def _Parametersb = 0.6 ;widthh = 0.9 ;heightL = 10.0 ;lengthE = 3e10 ;youngv = 0.22 ;poisson ratioq = -5e5xsize = 50ysize = 3zsize = 9end@_Parameterszone create brick point 0(0,[-0.5*b],[-0.5*h]) point 1([L/2.0],[-0.5*b],[-0.5*h]) point 2(0,0,[-0.5*h]) point 3(0,[-0.5*b],[0.5*h]) size @xsize @ysize @zsizezone reflect normal (0 1 0) origin (0,[-0.5*b],[-0.5*h])zone reflect normal (1,0,0) origin ([L/2.0],[-0.5*b],[-0.5*h])zone cmodel assign elasticzone property young @E poisson @vzone gridpoint fix velocity (0,0,0) range position-x -0.01 0.01zone face apply stress-zz [q/b] range position-z 0.449 0.451model solve
利用以下代码求取梁挠度的理论值,计算公式依据孙训方教授所著《材料力学(Ⅰ)》(第四版)。
table 1 label 'AnalyticalDisp'fish def _AnalyticalDispb = 0.6h = 0.9L = 10.0E = 3e10I = b*h^3/12.0EI = E*IMaxZdisp = q*L^4/(8*EI)count = 0loop i(0,L,0.1)count += 1zdisp = (i^2-4*L*i+6*L^2)*(q*i^2/(24*EI))table.x(1,count) = itable.y(1,count) = zdispendloopend@_AnalyticalDisp
挠度理论值与数值模拟计算值见下图:
fish def _Pos_y = -0.35_z1 = 0.4_z2 = -0.4end@_Poszone group 'top' range position-y @_y position-z @_z1zone group 'bot' range position-y @_y position-z @_z2
table '2' label '_NumericalM'fish def _NumericalMdx1 = 0.5*L/xsizex1 = 0.5*dx1count = 0loop i(x1,L,dx1)count += 1zt = zone.near(i,_y,_z1)zb = zone.near(i,_y,_z2)s1 = zone.stress.xx(zt)s2 = zone.stress.xx(zb)w = b*h^2/6M = 0.5*w*(s1-s2)table.x(2,count) = itable.y(2,count) = Mendloopend@_NumericalM

图3 弯矩对比图
[1].材料力学(Ⅰ)[M].高等教育出版社:,200208.
[2].FLAC3D在岩土工程中的应用[M].中国水利水电出版社:,201106.