欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    matlab-矩阵位移法编程-结构力学.doc

    • 资源ID:23966727       资源大小:434KB        全文页数:29页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    matlab-矩阵位移法编程-结构力学.doc

    Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-datematlab-矩阵位移法编程-结构力学matlab-矩阵位移法编程-结构力学矩阵位移法编程大作业(091210211)一、编制原理本程序的原理是基于结构力学矩阵位移法原理,以结构结点位移作基本未知量,将要分析的结构拆成已知节点力结点力位移关系的单跨梁集合,通过强令结构发生待定的基本未知位移,在各个单跨梁受力分析结果的基础上通过保证结构平衡建立位移法的线性方程组,从而求得基本未知量。二、程序说明本程序是计算3层11跨框架右侧结点的位移和弯矩的程序,编译过程是按照矩阵位移法的先处理法进行的。首先将结构杆件的交汇点作为结点,共有36个结点和108个位移编号,然后根据梁、柱、斜杆的不同分别建立单元刚度矩阵,然后转换为整体坐标系下的刚度矩阵,然后将所有杆件的单元刚度矩阵整合成为总体刚度矩阵,在进行整合时连续运用for函数,最终形成108阶的总体刚度矩阵。然后通过对荷载的分析自己确定出荷载矩阵,直接写进程序。这样就可以把36个结点的108个位移求得,然后再利用各个单元的单元刚度矩阵和所得的位移求得单元杆件的内力。离散化编号如下图:三、算法流程利用杆件单元刚度矩阵和所求位移求内力建立方程,求解位移确定综合结点荷载矩阵先处理法把各个杆件的单元刚度矩阵整合成总体刚度矩阵建立梁、柱、斜杆的局部坐标系下的单元刚度矩阵确定梁、柱、斜杆在整体坐标系下的刚度矩阵单元分析结构离散化编号结束输出结果四、源代码%结构力学大作业 3层11跨框架矩阵位移法编程 王贝 091210211h=input('输入单层高h:');L=input('输入单跨度L:');EIc=input('输入柱子的抗弯刚度EIc:');EAc=input('输入柱子的抗压刚度EAc:');EIb=input('输入梁的抗弯刚度EIb:');EAb=input('输入梁的抗压刚度EAb:');EIo=input('输入斜杆的抗弯刚度EIo:');EAo=input('输入斜杆的抗压刚度EAo:');q=input('输入侧向均布荷载集度q:');T1=1,0,0,0,0,0; 0,1,0,0,0,0; 0,0,1,0,0,0; 0,0,0,1,0,0; 0,0,0,0,1,0; 0,0,0,0,0,1;%角度为0°的转换矩阵T2=0,1,0,0,0,0; -1,0,0,0,0,0; 0,0,1,0,0,0; 0,0,0,0,1,0; 0,0,0,-1,0,0; 0,0,0,0,0,1;%角度为90°的转换矩阵x=atan(h/L);T=cos(x),sin(x),0,0,0,0; -sin(x),cos(x),0,0,0,0; 0,0,1,0,0,0; 0,0,0,cos(x),sin(x),0; 0,0,0,-sin(x),cos(x),0; 0,0,0,0,0,1;%斜杆的转换矩阵T3=T;%梁的单元刚度矩阵kb0=EAb/L 0 0 -EAb/L 0 0; 0 12*EIb/(L*L*L) 6*EIb/(L*L) 0 -12*EIb/(L*L*L) 6*EIb/(L*L); 0 6*EIb/(L*L) 4*EIb/L 0 -6*EIb/(L*L) 2*EIb/L; -EAb/L 0 0 EAb/L 0 0; 0 -12*EIb/(L*L*L) -6*EIb/(L*L) 0 12*EIb/(L*L*L) -6*EIb/(L*L); 0 6*EIb/(L*L) 2*EIb/L 0 -6*EIb/(L*L) 4*EIb/L;%柱子的单元刚度矩阵kc0=EAc/h 0 0 -EAc/h 0 0; 0 12*EIc/(h*h*h) 6*EIc/(h*h) 0 -12*EIc/(h*h*h) 6*EIc/(h*h); 0 6*EIc/(h*h) 4*EIc/h 0 -6*EIc/(h*h) 2*EIc/h; -EAc/h 0 0 EAc/h 0 0; 0 -12*EIc/(h*h*h) -6*EIc/(h*h) 0 12*EIc/(h*h*h) -6*EIc/(h*h); 0 6*EIc/(h*h) 2*EIc/h 0 -6*EIc/(h*h) 4*EIc/h;%斜杆的单元刚度矩阵H=sqrt(h*h+L*L);ko0=EAo/H 0 0 -EAo/H 0 0; 0 12*EIo/(H*H*H) 6*EIo/(H*H) 0 -12*EIo/(H*H*H) 6*EIo/(H*H); 0 6*EIo/(H*H) 4*EIo/H 0 -6*EIo/(H*H) 2*EIo/H; -EAo/H 0 0 EAo/H 0 0; 0 -12*EIo/(H*H*H) -6*EIo/(H*H) 0 12*EIo/(H*H*H) -6*EIo/(H*H); 0 6*EIo/(H*H) 2*EIo/H 0 -6*EIo/(H*H) 4*EIo/H;kb=T1'*kb0*T1;%总体坐标下梁的单元刚度矩阵kc=T2'*kc0*T2;%总体坐标下柱子的单元刚度矩阵ko=T3'*ko0*T3;%总体坐标斜杆的单元刚度矩阵X=zeros(108,108);Y=zeros(108,108);Z=zeros(108,108);%定义108阶0矩阵K1=zeros(108,108);K2=zeros(108,108);K3=zeros(108,108);K4=zeros(108,108);K5=zeros(108,108);K6=zeros(108,108);K7=zeros(108,108);K8=zeros(108,108);K9=zeros(108,108);%把梁杆单元矩阵整合到总体刚度矩阵的循环语句for ii=1:11 X(3*ii-2:3*ii+3,3*ii-2:3*ii+3)=kb; K1=K1+X;X=zeros(108,108);endfor ii=13:23 Y(3*ii-2:3*ii+3,3*ii-2:3*ii+3)=kb; K1=K1+Y;Y=zeros(108,108);endfor ii=25:35 Z(3*ii-2:3*ii+3,3*ii-2:3*ii+3)=kb; K1=K1+Z;Z=zeros(108,108);end%把柱杆单元矩阵整合到总体刚度矩阵的循环语句for jj=1:36 K2(3*jj-2:3*jj,3*jj-2:3*jj)=kc(4:6,4:6);endfor jj=1:24 K3(3*jj-2:3*jj,3*jj-2:3*jj)=kc(1:3,1:3);endfor jj=1:24 K4(3*jj-2:3*jj,3*jj+34:3*jj+36)=kc(1:3,4:6);endfor jj=1:24 K5(3*jj+34:3*jj+36,3*jj-2:3*jj)=kc(4:6,1:3);end%把斜杆杆单元矩阵整合到总体刚度矩阵的循环语句for gg=3:12:27 K6(3*gg-2:3*gg,3*gg-2:3*gg)=ko(4:6,4:6);endfor gg=2:12:14 K7(3*gg-2:3*gg,3*gg-2:3*gg)=ko(1:3,1:3);endfor gg=2:12:14 K8(3*gg-2:3*gg,3*gg+37:3*gg+39)=ko(1:3,4:6);endfor gg=2:12:14 K9(3*gg+37:3*gg+39,3*gg-2:3*gg)=ko(4:6,1:3);endK=K1+K2+K3+K4+K5+K6+K7+K8+K9;%总体刚度矩阵P=zeros(108,1);P(1,1)=h*q;P(37,1)=h*q;P(73,1)=h*q/2;P(75,1)=q*h*h/12;A=KP;%结构位移B1=kb*A(103:108,1);B2=kb*A(67:72,1);B3=kb*A(31:36,1);D1=zeros(6,1);D1(1:3,1)=A(70:72,1);D1(4:6,1)=A(106:108,1);D2=zeros(6,1);D2(1:3,1)=A(34:36,1);D2(4:6,1)=A(70:72,1);C1=kc*D1;C2=kc*D2;C3=kc(4:6,4:6)*A(34:36,1);M1(1,1)=B1(6,1);M2(1,1)=C1(6,1);M3(1,1)=B2(6,1);M4(1,1)=C2(6,1);M5(1,1)=C1(3,1);M6(1,1)=B3(6,1);M7(1,1)=C3(3,1);M8(1,1)=C2(3,1); for i=1:3 m=36*i-2;fprintf('第%d层最右侧节点的位移是%dn',i,A(m,1)endfprintf('第1层最右侧节点左侧杆的弯矩是%fn',M6)fprintf('第1层最右侧节点下侧杆的弯矩是%fn',M7)fprintf('第1层最右侧节点上侧杆的弯矩是%fn',M8)fprintf('第2层最右侧节点左侧杆的弯矩是%fn',M3)fprintf('第2层最右侧节点下侧杆的弯矩是%fn',M4)fprintf('第2层最右侧节点上侧杆的弯矩是%fn',M5)fprintf('第3层最右侧节点左侧杆的弯矩是%fn',M1)fprintf('第3层最右侧节点下侧杆的弯矩是%fn',M2)五、试算算例输入数据:输入单层高h:1输入单跨度L:1输入柱子的抗弯刚度EIc:1输入柱子的抗压刚度EAc:1输入梁的抗弯刚度EIb:1输入梁的抗压刚度EAb:1输入斜杆的抗弯刚度EIo:1输入斜杆的抗压刚度EAo:1输入侧向均布荷载集度q:1计算结果:第1层最右侧节点的位移是-6.219850e-003第2层最右侧节点的位移是-2.152659e-002第3层最右侧节点的位移是-4.131873e-002第1层最右侧节点左侧杆的弯矩是0.000729第1层最右侧节点下侧杆的弯矩是0.008642第1层最右侧节点上侧杆的弯矩是-0.009371第2层最右侧节点左侧杆的弯矩是0.000074第2层最右侧节点下侧杆的弯矩是0.004158第2层最右侧节点上侧杆的弯矩是-0.004232第3层最右侧节点左侧杆的弯矩是-0.000761第3层最右侧节点下侧杆的弯矩是0.000761矩阵位移法编程大作业王贝 091210211-

    注意事项

    本文(matlab-矩阵位移法编程-结构力学.doc)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开