E=21e7;NU=0.3;t=0.01;
stifflike5=LinearTriangleElementStiffness(E,NU,t,0.4,0.08,0.36,0.08,0.36,0.06,1);%选取2个基本单元,调用M文件
stifflike1=LinearTriangleElementStiffness(E,NU,t,0.4,0.08,0.36,0.06,0.4,0.06,1) ;
K=sparse(110,110); %creat a xishu matrix for total stiff创建一个稀疏矩阵
for i=1:49
if rem(i,5)%模取余, bool型变量,非零即为真
j=i;
K=LinearTriangleAssemble(K,stifflike5,j,j+5,j+6);%节点编号
K=LinearTriangleAssemble(K,stifflike1,j,j+6,j+1);
end
end%将每个单元刚度矩阵集成到总刚中
K=full(K);%转化稀疏矩阵 k=K(1:100,1:100);
k=[K,zeros(100,10);zeros(10,100),eye(10)];
k=sparse(k);%利用边界条件简化基本方程
Q=sparse(2:10:92,1,[-200,-400,-400,-400,-400,-400,-400,-400,-400,-400,],110,1);%外部荷载,此处不包括约束条件,通过形函数确定,是不是可以理解为梁的两端为中间的一半呢?
d=k\Q;%高斯消元法,比克莱姆法则在计算速度上有绝对的优势!
x=0:0.04:0.4;
plot(x,d(106:-10:6))%基本绘图命令
grid%带网格
y=zeros(80,3);
q=0;
for i=1:49
switch rem(i,5)
case 1
j=2*i;
u=[d(j-1) d(j) d(j+11) d(j+12) d(j+1) d(j+2)];
u=u';
xl=0.4;yl=0.08;xm=0.36;ym=0.06;xn=0.4;yn=0.06;
y(i+q,:)=LinearTriangleElementStresses(E,NU,t,xl,yl,xm,ym,xn,yn,u)';
xl=xl-0.04;xm=xm-0.04;xn=xn-0.04;
case 2
j=2*i;
u=[d(j-1) d(j) d(j+11) d(j+12) d(j+1) d(j+2)];
u=u';
xl=0.4;yl=0.06;xm=0.36;ym=0.04;xn=0.4;yn=0.04;
y(i+q,:)=LinearTriangleElementStresses(E,NU,t,xl,yl,xm,ym,xn,yn,u)';
xl=xl-0.04;xm=xm-0.04;xn=xn-0.04;
case 3
j=2*i;
u=[d(j-1) d(j) d(j+11) d(j+12) d(j+1) d(j+2)];
u=u';
xl=0.4;yl=0.04;xm=0.36;ym=0.02;xn=0.4;yn=0.02;
y(i+q,:)=LinearTriangleElementStresses(E,NU,t,xl,yl,xm,ym,xn,yn,u)';
xl=xl-0.04;xm=xm-0.04;xn=xn-0.04;
case 4
j=2*i;
u=[d(j-1) d(j) d(j+11) d(j+12) d(j+1) d(j+2)];
u=u';
xl=0.4;yl=0.02;xm=0.36;ym=0;xn=0.4;yn=0;
y(i+q,:)=LinearTriangleElementStresses(E,NU,t,xl,yl,xm,ym,xn,yn,u)';
xl=xl-0.04;xm=xm-0.04;xn=xn-0.04;
otherwise
q=q+3;
end
end
q=4;
for i=1:49
switch rem(i,5)
case 1
j=2*i;
u=[d(j-1) d(j) d(j+9) d(j+10) d(j+11) d(j+12)];
u=u';
xl=0.4;yl=0.08;xm=0.36;ym=0.08;xn=0.36;yn=0.06;
y(i+q,:)=LinearTriangleElementStresses(E,NU,t,xl,yl,xm,ym,xn,yn,u)';
xl=xl-0.04;xm=xm-0.04;xn=xn-0.04;
case 2
j=2*i;
u=[d(j-1) d(j) d(j+9) d(j+10) d(j+11) d(j+12)];
u=u';
xl=0.4;yl=0.06;xm=0.36;ym=0.06;xn=0.36;yn=0.04;
y(i+q,:)=LinearTriangleElementStresses(E,NU,t,xl,yl,xm,ym,xn,yn,u)';
xl=xl-0.04;xm=xm-0.04;xn=xn-0.04;
case 3
j=2*i;
u=[d(j-1) d(j) d(j+9) d(j+10) d(j+11) d(j+12)];
u=u';
xl=0.4;yl=0.04;xm=0.36;ym=0.04;xn=0.36;yn=0.02;
y(i+q,:)=LinearTriangleElementStresses(E,NU,t,xl,yl,xm,ym,xn,yn,u)';
xl=xl-0.04;xm=xm-0.04;xn=xn-0.04;
case 4
j=2*i;
u=[d(j-1) d(j) d(j+9) d(j+10) d(j+11) d(j+12)];
u=u';
xl=0.4;yl=0.02;xm=0.36;ym=0.02;xn=0.36;yn=0;
y(i+q,:)=LinearTriangleElementStresses(E,NU,t,xl,yl,xm,ym,xn,yn,u)';
xl=xl-0.04;xm=xm-0.04;xn=xn-0.04;
otherwise
q=q+3;
end
end% y(i+q,:)这是实现什么的?没见过这种用法,算法上应该就是通过节点位移实现指定单元的内力,这部分本人看的也晕晕的,望高人指点?
N=y(73:80,1);
gangdujuzhen.zip_diseaseo5w_刚度矩阵分析_悬臂梁_有限元_有限元分析
版权申诉
117 浏览量
2022-07-15
21:33:51
上传
评论
收藏 2KB ZIP 举报
JonSco
- 粉丝: 72
- 资源: 1万+
最新资源
- VIVADO中UART IP核使用
- 【深度学习实际案例解析】深度学习实际案例解析
- 封装swagger组件,提供全新UI以及无状态登录接口调用解决方案
- 小龙坎支局2024年4月渠道积分核对数据.xlam
- onlyoffice搭建及与alist使用的view.html
- Quadcopter-UAV-attitude-estimation-linux常用命令大全demo
- Quadcopter-UAV-attitude-estimation-based-on-数据库课程设计
- pbdlib-python-master.zip
- 43904245495352013_base.apk
- 基于springboot+vue + redis的工作流审批系统
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论0