当前位置: 首页 > news >正文

[Matlab有限元分析] 2.杆单元有限元分析

1. 一维杆单元有限元分析程序

一维刚单元的局部坐标系(单元坐标系)与全局坐标系相同。

1.1 线性杆单元

如图所示是一个杆单元,由两个节点i和j,局部坐标系的X轴沿着杆的方向,由i节点指向j节点,每个节点有一个自由度,在使用时需要定义杆长L、截面积A和弹性模型E。

 单元刚度矩阵为:

                                                k=\begin{bmatrix} \frac{EA}{L} &-\frac{EA}{L} \\ -\frac{EA}{L}& \frac{EA}{L} \end{bmatrix}

线性杆单元有限元分析MATLAB程序主要包括单元刚度矩阵(Bar1D2Node_Stiffness)、单元组装(Bar1D2Node_Assembly)、单元应力(Bar1D2Node_Stress)和节点力(Bar1D2Node_Forces)四个函数,分别如下:

function k = Bar1D2Node_Stiffness(E,A,L)
% 该函数计算线性杆单元的刚度矩阵
% 输入:弹性模量E,杆的横截面积A和长度L
% 输出:单元刚度矩阵k(2*2)
k = [E*A/L -E*A/L ; -E*A/L E*A/L];
function y = Bar1D2Node_Assemble(K,k,i,j)
% 该函数进行单元刚度矩阵的组装
% 输入:单元刚度矩阵k和单元节点编号i,j
% 输出:整体刚度矩阵K
DOF(1) = i;
DOF(2) = j;
for n1 = 1:2for n2 = 1:2K(DOF(n1),DOF(n2)) = K(DOF(n1),DOF(n2))+k(n1,n2);end
end
y = K;
function forces = Bar1D2Node_Forces(k,u)
% 该函数计算线性杆单元的节点力
% 输入:单元刚度矩阵k,单元的位移列阵u(2*1)
% 输出:单元节点力forces
forces = k*u;
function stress = Bar1D2Node_Stress(k,u,A)
% 该函数计算线性杆单元的应力
% 输入:单元刚度矩阵k,单元的位移列阵u(2*1),单元横截面积A
% 输出:单元应力stress
stress = k * u/A;

1.2 二阶杆单元

二阶杆单元是带中间节点的杆单元,如下图所示,单元节点为i,j,m,杆单元界面为A,弹性模量为E,坐标系为i指向j的x方向。

单元刚度矩阵为:

                                             k=\frac{EA}{3L}\begin{bmatrix} 7 & 1&-8 \\ 1& 7& -8\\ -8 & -8 & 16 \end{bmatrix}

二阶杆单元有限元分析MATLAB程序主要包括单元刚度矩阵(Bar1D3Node_Stiffness)、单元组装(Bar1D3Node_Assembly)、单元应力(Bar1D3Node_Stress)和节点力(Bar1D3Node_Forces)四个函数,分别如下:

function k = Bar1D3Node_Stiffness(E,A,L)
% 该函数计算二阶杆单元的刚度矩阵
% 输入:弹性模量E,杆的横截面积A和长度L
% 输出:单元刚度矩阵k(3*3)
k = E*A/(3*L)*[7 1 -8;1 7 -8;-8 -8 16];
function y = Bar1D3Node_Assemble(K,k,i,j,m)
% 该函数进行二阶杆单元刚度矩阵的组装
% 输入:单元刚度矩阵k和单元节点编号i,j, m
% 输出:整体刚度矩阵K
DOF(1) = i;
DOF(2) = j;
DOF(3) = m;
for n1 = 1:3for n2 = 1:3K(DOF(n1),DOF(n2)) = K(DOF(n1),DOF(n2))+k(n1,n2);end
end
y = K;
function forces = Bar1D3Node_Forces(k,u)
% 该函数计算二阶杆单元的节点力
% 输入:单元刚度矩阵k,单元的位移列阵u(3*1)
% 输出:单元节点力forces
forces = k*u;
function stress = Bar1D3Node_Stress(k,u,A)
% 该函数计算二阶杆单元的应力
% 输入:单元刚度矩阵k,单元的位移列阵u(3*1),单元横截面积A
% 输出:单元应力stress
stress = k * u/A;

2. 二维杆单元有限元分析程序

未完待续....

3. 三维杆单元有限元分析程序

参考文献

曾攀《有限元基础教程》;

相关文章:

  • 详解Rust编程中的生命周期
  • 10. Mysql 分组或汇总查询
  • 【Linux小项目】实现自己的bash
  • Python语言创建爬虫代理IP池详细步骤和代码示例
  • Mysql使用周期性计划任务定时备份,发现备份的文件都是空的?为什么?如何解决?
  • 基于SWT的图书管理系统设计
  • Android之高级UI
  • 代码块01-Java
  • MySQL递归查询:洞悉数据的层层关联
  • flutter编译和构建鸿蒙应用程序(windows环境)
  • 卸载软件最最最彻底的工具——Uninstall Tool
  • 项目启动出现白屏问题需要刷新后才能显示解决方案
  • 通付盾Web3专题 | SharkTeam:起底朝鲜APT组织Lazarus Group,攻击手法及洗钱模式
  • 代码随想录算法训练营第五十三天|1143. 最长公共子序列、1035.不相交的线、53.最大子数组和
  • 实用高效 无人机光伏巡检系统助力电站可持续发展
  • FastReport在线报表设计器工作原理
  • github指令
  • MQ框架的比较
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • Redux 中间件分析
  • springMvc学习笔记(2)
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • 大数据与云计算学习:数据分析(二)
  • 发布国内首个无服务器容器服务,运维效率从未如此高效
  • 极限编程 (Extreme Programming) - 发布计划 (Release Planning)
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 优秀架构师必须掌握的架构思维
  • 你对linux中grep命令知道多少?
  • 进程与线程(三)——进程/线程间通信
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • ​一文看懂数据清洗:缺失值、异常值和重复值的处理
  • # 学号 2017-2018-20172309 《程序设计与数据结构》实验三报告
  • (03)光刻——半导体电路的绘制
  • (145)光线追踪距离场柔和阴影
  • (C++)八皇后问题
  • (超详细)2-YOLOV5改进-添加SimAM注意力机制
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • (二)【Jmeter】专栏实战项目靶场drupal部署
  • (附源码)php新闻发布平台 毕业设计 141646
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (规划)24届春招和25届暑假实习路线准备规划
  • (顺序)容器的好伴侣 --- 容器适配器
  • (算法)Travel Information Center
  • (转) Face-Resources
  • (转)AS3正则:元子符,元序列,标志,数量表达符
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • (转载)PyTorch代码规范最佳实践和样式指南
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • *++p:p先自+,然后*p,最终为3 ++*p:先*p,即arr[0]=1,然后再++,最终为2 *p++:值为arr[0],即1,该语句执行完毕后,p指向arr[1]
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .net最好用的JSON类Newtonsoft.Json获取多级数据SelectToken
  • /etc/sudoers (root权限管理)
  • @EnableConfigurationProperties注解使用
  • @modelattribute注解用postman测试怎么传参_接口测试之问题挖掘
  • [BROADCASTING]tensor的扩散机制