实例介绍
【实例简介】
【实例截图】
【实例截图】
【核心代码】
%The author: wangjinghui %Date:2021.04 clear all; clc; %Beam_InputData544; Opt_beam = 1; Opt_mass = 2; Opt_section = 1; Opt_graphics1 = 1; Opt_graphics2 = 2; Prob_title= 'static analysisi of a 3-D frame structure'; No_el=12; No_nel=2; No_dof=6; No_node=8; Sys_dof=No_node*No_dof; prop(1)=2.1e11; prop(2)=0.3; prop(3)=7860; prop(4)=0.01; prop(5)=0.01; prop(6)=0.01*0.01; prop(7)=0.01*0.01^3/12; prop(8)=0.01*0.01^3/12; prop(9)=1; prop(10)=1; Opt_section=1; gcoord=[1 0,0,0; 2 4,0,0; 3 4,0,0; 4 4,0,0; 5 4,0,0; 6 4,0,0; 7 4,0,0; 8 4,0,0]; gcoord=[gcoord(:,2:4)]; al=0; node=[1 1 , 5; 2 2 , 6; 3 3 , 7; 4 4 , 8; 5 5 , 6; 6 6 , 7; 7 7 , 8; 8 8 , 5; 9 1 , 6; 10 2 , 7; 11 3 , 8; 12 4 , 5]; nodes=[nodes(:,2:3)]; P=[-100000,7,2]; ConNode =[1 , 1 , 1 , 1 , 1 , 1 ; 2 , 1 , 1 , 1 , 1 , 1 ; 3 , 1 , 1 , 1 , 1 , 1 ; 4 , 1 , 1 , 1 , 1 , 1 ]; ConVal =[1 , 0 , 0 , 0 , 0 , 0 ; 2 , 0 , 0 , 0 , 0 , 0 ; 3 , 0 , 0 , 0 , 0 , 0 ; 4 , 0 , 0 , 0 , 0 , 0 ]; k = zeros(No_nel*No_dof,No_nel*No_dof); m = zeros(No_nel*No_dof,No_nel*No_dof); kk = zeros(Sys_dof,Sys_dof); mm = zeros(Sys_dof,Sys_dof); ff = zeros(Sys_dof,1); bcdof = zeros(Sys_dof,1); index = zeros(No_nel*No_dof,1); [n1,n2]=size(ConNode); for ni = 1:n1 ki=ConNode(ni,1); bcdof((ki-1)*No_dof:ki*No_dof)=ConNode(ni,2:No_dof 1); bcval((ki-1)*No_dof:ki*No_dof)=ConVal(ni,2:No_dof 1); end [n1,n2]=size(P); for ni=i:n1 ff(No_dof*(P(ni,2)-1) P(ni,3))=P(ni,1); end for iel=1:No_el nd(1)=nodes(iel,1); nd(2)=nodes(iel,2); x(1)=gcoord(nd(1),1); y(1)=gcoord(nd(1),2); z(1)=gcoord(nd(1),3); x(2)=gcoord(nd(2),1); y(2)=gcoord(nd(2),2); z(2)=gcoord(nd(2),3); leng=sqrt((x(2)-x(1))^2 (y(2)-y(1))^2 (z(2)-z(1))^2); xi(1)=(x(2)-x(1))/leng; xi(2)=(y(2)-y(1))/leng; xi(3)=(z(2)-z(1))/leng; if Opt_beam==1 [k,m]=FrameElement31(prop,leng,xi,al,Opt_section,Opt_mass); elseif Opt_beam==2 [k,m]=FrameElement32(prop,leng,xi,al,Opt_section,Opt_mass); end index=femEldof(nd,No_nel,No_dof); kk=femAssemble(kk,k,index); mm=femAssemble(mm,m,index); end [kk0 , mm0 , ff0 ,bcdof0 , bcval0 , sdof0]=kkCheck1(kk , mm , ff , bcdof , bcval); [kk1 , mm1 , ff1 , sdof1]=femApplybc1(kk0 , mm0 , ff0 , bcdof0 , bcval0); displmt = kk1\ff1; No_dof1 = No_dof/(Sys_dof/sdof1); for ii=1:No_node for ij=1:No_dof1 displmtnode(ii , ij)=displmt((ii-1)*No_dof1 ij,1); end end if Opt_graphics1==1 for iel=1:No_el nd(1)=nodes(iel,1); nd(2)=nodes(iel,2); x(1)=gcoord(nd(1),1); y(1)=gcoord(nd(1),2); z(1)=gcoord(nd(1),3); x(2)=gcoord(nd(2),1); y(2)=gcoord(nd(2),2); z(2)=gcoord(nd(2),3); figure(1) plot3(x,y,z),xlabel('x'),ylabel('y'),zlabel('z'),hold on; end if Opt_graphics2~=1 title('nodal connectivity of elementd'); hold off; end end if Opt_graphics2==1 gcoordA= gcoord 10*displmtnode( : ,1:3); for iel=1:No_el nd(1)=nodes(iel,1); nd(2)=nodes(iel,2); x(1)=gcoordA(nd(1),1); y(1)=gcoordA(nd(1),2); z(1)=gcoordA(nd(1),3); x(2)=gcoordA(nd(2),1); y(2)=gcoordA(nd(2),2); z(2)=gcoordA(nd(2),3); figure(1) plot3(x,y,z,'r'), title('Deflection of the structure'), hold on; end hold off end disp('The calculation is use of') if Opt_beam==1 disp('Euler-Bernoulli beam element') elseif Opt_beam==2 diso('Timoshenko beam element') end disp(' ') disp(' numrical solution ') disp(' node x y z 牟x 牟y 牟z ') num = 1:1:No_node; displmts=[num' displmtnode]
好例子网口号:伸出你的我的手 — 分享!
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论