导读:时至今日,围绕我在仿真秀平台原创的精品课《Matlab有限元编程从入门到精通10讲》,我已经撰稿2篇原创文章。它们分别是:
受到了越来越多的Matlab有限元编程工程师朋友们的关注,仿真秀平台不仅建立了订阅用户交流群(我与付费用户之间的交流),还有Matlab有限元编程软件群。我将在群里与大家互动,并围绕群里用户需求和遇到问题,准备后续“课程加餐”和文章撰稿。今天我继续分享Matlab有限元编程专业技能—,关于弹性地基梁(具有弹性支撑的梁)matlab有限元编程——双排桩支护结构计算分析。
(1)
(2)
(3)
(4)
(5)
(6)
(6)
(6)
(7)
(1)土性指标:土体粘聚力 c=12k Pa;内摩擦角 φ=25°;土体重度 γ=19.2k N/m3。土体平均压缩模量 Es=5MPa,不考虑地下水位的影响。采用单一的土层计算。
(2)基坑开挖深度为 9.0m,前后排桩呈矩形布置,桩直径为0.8m,桩弹性模量E1=3.0×107kN/m^2,桩间距为2m,前排桩入土深度为 11m,桩长为 20m。
(3)连梁截面尺寸 b×h=800mm×600mm,连梁弹性模量 E2=3.0×107k N/ m^2,连梁之间的距离等于两桩间距,两排桩的排距为 2.0m,桩顶与连梁按刚接考虑。
(4)弹簧的反力系数,m=4000kN/m^3,桩底采用单链杆支承约束,以此替代桩土之间摩擦力的作用,水平向不约束。
%计算弹性地基梁单元刚度矩阵函数
function [Ke] = FrameElementKe2(A,E,I,R,BarLength)
global m D
L=BarLength;
k=m*D*L;
k1=k;
k2=k;
ke=[E*A/L 0 0 -E*A/L 0 0
0 12*E*I/L^3+4*k1*L/15+k2*L/12 6*E*I/L^2 0 -12*E*I/L^3+k1*L/12+k2*L/15 6*E*I/L^2;
0 6*E*I/L^2+k1*L^2/30+k2
由于不同基坑开挖深度为9m,所以九米以上的桩可以认为传统梁,九米以下的桩为弹性地基梁。因此在进行单元刚度矩阵计算和组装时要根据单元所在位置分别进行计算和组装,具体的matlab代码如下:
%遍历所有单元,将各单元刚度阵分块组装到总体刚度阵
for iEle =1:EleCount
%该单元的两个节点的编号
n1=ele(iEle,2);n2=ele(iEle,3);
%计算坐标变换矩阵
R=CoordTransform([x(n1) x(n2)],[y(n1) y(n2)],BarLength(iEle));
%计算单元刚度矩阵 Ke=R'*ke*R;局部坐标系下的单元刚度阵转换为全局坐标下的单元刚度阵
if y(n1)<=deep
ke= FrameElementKe2(ele(iEle,4),ele(iEle,5),ele(iEle,6),R,BarLength(iEle));
else
ke= FrameElementKe1(ele(iEle,4),ele(iEle,5),ele(iEle,6),R,BarLength(iEle));
end
%将各单元刚度分块组装到总刚相应位置
eleDof=[n1*3-2:n1*3,n2*3-2:n2*3];
K(eleDof,eleDof)=K(eleDof,eleDof)+ke;
end
图4 前后排桩不同深度处弯矩
图5 弯矩图
读者福利:为帮助大家更好的入门学习Matlab有限元编程分析能力,请在文章附件直接下载以下学习资料,如果遇到麻烦,请在文章下方留言或联系平台客服领取。
我的Matlab有限元编程精品课
本课程为matlab有限元编程专题课,课程主要以案例的形式进行讲解,中间会穿插案例中所涉及到的有限元基本理论,案例不局限于力学问题的有限元求解,还会涉及传热学、电学等问题的有限元求解。
因为固体力学领域我最熟悉,所以我们从固体力学开始,所涉及的单元有杆单元,梁单元,平面三角形单元,薄板单元,厚板单元,四面体实体单元等等,力学问题有静力学问题,也有动力学问题,后期还会涉及材料非线性、几何非线性、接触非线性等非线性问题,内容丰富,不断更新完善。
此外,笔者为所有订阅用户提供知识圈答疑服务和VIP用户交流群。并附赠课程相关资料等(平台支持自行开具电子发票)。
为订阅用户提供知识圈答疑服务,并建立VIP用户交流群,后续可根据订阅用户需求进行加餐直播。此外还提供课程对应的学习资料模型一份。
理工科院校学生和教师;
学习型仿真设计工程师;
Matlab有限元编程兴趣爱好者和应用者。