【采用有限元法技术计算固有频率和欧拉屈曲荷载】使用有限元法的柱子的固有频率和屈曲荷载(Matlab代码实现)

news2024/11/23 7:26:16

 💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

有限元法是一种常用的数值分析方法,用于求解结构的固有频率和屈曲荷载。下面简要概述使用有限元法分析柱子的固有频率和屈曲荷载的过程。

1. 建立几何模型:首先,根据柱子的实际几何形状,例如长度、截面形状和尺寸等,建立几何模型。通常使用三维空间中的节点和单元来离散化柱子的几何形状。

2. 材料建模:对柱子的材料进行建模,确定材料的弹性模量、泊松比等力学参数。这些参数对柱子的固有频率和屈曲荷载有重要影响。

3. 约束条件和荷载:定义柱子的边界条件,包括支撑点的约束和受力情况。对于求解固有频率,可以施加零荷载,而对于求解屈曲荷载,需要施加合适的压缩或弯曲荷载。

4. 划分单元和建立刚度矩阵:将柱子划分为小的单元,例如线性三角形单元或四边形单元。根据单元的几何形状、材料性质和边界条件,建立单元的刚度矩阵。通过组装所有单元的刚度矩阵,得到整个柱子的刚度矩阵。

5. 求解固有频率:对于固有频率的求解,需要在刚度矩阵中施加边界条件,并将刚度矩阵转化为广义特征值问题。通过求解该特征值问题,可以得到柱子的固有频率和对应的振型。

6. 求解屈曲荷载:对于屈曲荷载的求解,可以使用静力分析或线性稳定性分析。在静力分析中,通过施加逐渐增大的荷载并观察柱子的变形和应力,确定柱子的屈曲荷载。在线性稳定性分析中,通过求解柱子的特征值问题,得到柱子的临界屈曲荷载。

以上是使用有限元法分析柱子固有频率和屈曲荷载的概述。这个过程涉及到离散化、材料建模、边界条件施加、刚度矩阵的建立、求解特征值问题等步骤。通过数值计算,可以获得柱子的固有频率和屈曲荷载,从而评估柱子的结构性能和安全性。需要注意,具体的应用案例和算法细节可能因具体问题而有所不同,建议在具体分析中参考专业的有限元分析软件和相关工具的使用指南和文献。

本文使用有限元技术计算固有频率和欧拉屈曲载荷。埃尔米特梁单元用作插值函数。计算并求解特征值的装配质量、几何刚度矩阵和刚度矩阵。绘制前四个振型。考虑了四种不同的边界条件。根据用户对杨氏模量的要求,可以更改单元数、单位长度质量和边界。使用FEM获得的值与理论值进行比较,并显示误差百分比。得到的值与理论值非常吻合。使用更多数量的元素可以提高精度。

📚2 运行结果

 

部分代码:

% Variable descriptions                                                      %
%   k = element stiffness matrix                                             %
%   kg = element geometric stiffness matrix                                  %
%   m = element mass matrix                                                  %   
%   kk = system stiffness matrix                                             %
%   kkg = system geometric stiffness matrix                                  %
%   mm = system mass matrix                                                  %
%   index = a vector containing system dofs associated with each element     %
%                                                                            %
%----------------------------------------------------------------------------%            

clear
clc

disp('please wait!!!!!!-The job is under run')

% Discretizing the Beam

nel=50;                 % number of elements
nnel=2;                 % number of nodes per element
ndof=2;                 % number of dofs per node
nnode=(nnel-1)*nel+1;   % total number of nodes in system
sdof=nnode*ndof;        % total system dofs 

% Material properties
E=2.1*10^11;            % Youngs modulus
I=2003.*10^-8;          % moment of inertia of cross-section
mass = 61.3;            % mass density of the beam
tleng = 7.;             % total length of the beam
leng = tleng/nel;       % uniform mesh (equal size of elements)
lengthvector = 0:leng:tleng ;
% Boundary Conditions
bc = 'c-f' ;             % clamped-free
%bc = 'c-c' ;            % clamped-clamped
%bc = 'c-s' ;            % clamped-supported
%bc = 's-s' ;            % supported-supported


kk=zeros(sdof,sdof);    % initialization of system stiffness matrix
kkg=zeros(sdof,sdof);   % initialization of system geomtric stiffness matrix 
mm=zeros(sdof,sdof);    % initialization of system mass matrix 
index=zeros(nel*ndof,1);  % initialization of index vector

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

1. 王之生, 李爽, 孙玉江. (2015). 基于有限元法的柱屈曲分析方法研究. 中国冶金建筑研究院学报, 32(6), 66-70.

2. 马瑞瑟, 李永岗, 邓字文等. (2018). 柱结构固有频率与屈曲载荷的有限元分析与仿真. 装备制造技术, (5), 11-13.

3. 张子硕, 周辉光, 汪志红等. (2017). 基于隐式有限元法的大型石化装置柱塔屈曲载荷分析. 工程力学, 34(7), 201-206.

🌈4 Matlab代码实现

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/752175.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android JNI 异常处理 (十一)

🔥 Android Studio 版本 🔥 🔥 创建包含JNI的类 JNIException.java 🔥 package com.cmake.ndk1.jni;public class JNIException {static {System.loadLibrary("exception-lib");}public native void nativeInvokeJavaException();public native void nativ…

B站这些“搬运工”还能有这么高的流量吗?

飞瓜数据(B站版)观察发现,B站经常有一些搬运视频能够获得超高流量。 比如拉取近15天的B站热门视频,位列前排的就有两个是搬运二创视频,播放量高达900万上下,可以说是爆款视频了。 这些视频有一个相同的点就…

Qt Https通信: TLS initialization failed 解决方法

Qt Https通信: TLS initialization failed 解决方法,Window端使用Qt 做开发请求Https资源时,会经常遇到 TLS initialization failed。 原因分析: 在Qt中并未包含 SSL所包含的库,因此需要开发者,自己将库拷贝…

最新华为鸿蒙4.0安装谷歌服务框架,安装Play商店,谷歌Google,GMS

最近华为推出了最新鸿蒙4.0开发者Beta版本,让用户测试体验。那么测试体验的机器主要是最近发布的几款机器为P60,P60 Pro, mate50,mate50 pro等几款产品可以先期进行体验测试鸿蒙4.0,那么很多的用户在疑问我升级到鸿蒙4.0。是不是还是可以使用Google谷歌服…

LINUX环境小实验

实验报告 实验名称 小环境搭设 实验目的 1.搭建DHCP服务器(IP:192.168.100.253静态IP网卡vmnet1) 2.搭建DNS(通过DHCP服务器分到指定的IP:192.168.100.252) 3.搭建网站服务(通过DHCP服务器分…

波分复用(WDM)基本原理

文章目录 波分复用WDMDWDM解决问题,特点-超长距离无电中继传输,降低成本 波分系统的基本组成DWDM网元基本类型波分常见站点类型OM/OD技术-波分复用器主要参数 DWDM系统关键技术光转发技术 OM/OD技术-波分复用器件 波分…

Bun 0.6.14发布,1.0版预计发布于9月7日

Bun 是一个 JavaScript 运行时。 Bun 是一个从头开始构建的新 JavaScript 运行时,旨在服务现代 JavaScript 生态系统。它有三个主要设计目标: 速度。包子启动快,运行也快。它扩展了 JavaScriptCore,即为 Safari 构建的注重性能的 …

Office如何通过VSTO进行PPT插件开发?

文章目录 0.引言1.工具准备2.PPT外接程序创建和生成3.外接程序生成并使用 0.引言 VSTO(Visual Studio Tools for Office )是VBA的替代,是一套用于创建自定义Office应用程序的Visual Studio工具包。VSTO可以用Visual Basic 或者Visual C#扩展O…

EIK+Filebeat+Kafka

目录 Kafka 概述 为什么需要消息队列(MQ) 使用消息队列的好处 消息队列的两种模式 Kafka 定义 Kafka 简介 Kafka 的特性 Kafka 系统架构 Partation 数据路由规则: 分区的原因 部署 kafka 集群 1.下载安装包 2.安装 Kafka 修改配…

【979. 在二叉树中分配硬币】

来源:力扣(LeetCode) 描述: 给定一个有 N 个结点的二叉树的根结点 root,树中的每个结点上都对应有 node.val 枚硬币,并且总共有 N 枚硬币。 在一次移动中,我们可以选择两个相邻的结点&#x…

【C++】list简单介绍

list基本功能介绍 前言正式开始构造函数push_backiteratorpush_frontinserterasespliceremoveuniquereversesortmerge 前言 本篇不会讲太多细节,就说一下STL库中一些函数的基本用法,如果想要了解细节上的东西的话,建议看我string的介绍&…

QT ui_xxx.h: no such file or directory”

使用QT新建子窗口后,编译无法通过 mainwindow.obj:-1: error: LNK2019: 无法解析的外部符号 "public: __cdecl labelwindow::labelwindow(class QWidget *)" (??0labelwindowQEAAPEAVQWidgetZ),该符号在函数 "private: void __cdecl MainWindow::o…

android studio 添加并读取json配置文件

第一步&#xff1a;在android studio中添加json文件&#xff1b; 第二步&#xff1a;读取文件的函数 private String[] getJosnData(){String result[] null;List<String> list new ArrayList<>();try {//获取本地的Json文件AssetManager assetManager mConte…

界面控件DevExtreme v23.1新版亮点 - 全新的DateRangeBox组件

DevExtreme拥有高性能的HTML5 / JavaScript小部件集合&#xff0c;使您可以利用现代Web开发堆栈&#xff08;包括React&#xff0c;Angular&#xff0c;ASP.NET Core&#xff0c;jQuery&#xff0c;Knockout等&#xff09;构建交互式的Web应用程序。从Angular和Reac&#xff0c…

【Qt】 自定义列表控件

一、效果图 二、思路 先实现单个item控件&#xff0c;之后根据所需个数new出来插入布局中。item过多时支持滑动操作&#xff0c;可以把item放入scrollArea中&#xff0c;如需实现滑动效果可以使用eventFilter&#xff0c;计算坐标配合scrollArea->verticalScrollBar()->…

2023数字化转型研讨会:RockPlus MOM系统引领制造业变革

7月13日在淄博张店举办的2023年企业数字化转型研讨会上&#xff0c;RockPlus MOM制造运营系统闪耀登场&#xff0c;凭借其将精益生产与信息化相结合的理念&#xff0c;成为会议的一大焦点。该系统是由合共软件精心打造的&#xff0c;目标在供应链管理(SRM)、仓储物流(WMS)、计划…

这么多计算机语言该怎么选

这么多计算机语言该怎么选 选择哪种计算机语言取决于你的需求和目标。以下是一些考虑因素&#xff1a; 你想用语言做什么&#xff1a;首先&#xff0c;你需要确定你的语言选择将主要用于什么目的。是为了编写Web应用程序、移动应用程序、桌面应用程序还是其他类型的应用程序&…

密码学学习笔记(十):Digital Signatures - 数字签名2

ElGamal 签名 密钥生成&#xff1a;随机选取&#x1d465;, 设置&#x1d466; 签名&#xff1a;选一个随机的k&#xff0c;gcd (&#x1d458;, &#x1d45d; − 1) 1 认证&#xff1a;给与一个签名&#x1d70e; (&#x1d45f;, &#x1d460;), 检查它是否满足 工作原…

Java设计模式之行为型-命令模式(UML类图+案例分析)

目录 一、基础概念 二、UML类图 三、角色设计 四、案例分析 1、基本实现 2、点餐案例 五、总结 一、基础概念 1、将一个请求封装为一个对象&#xff0c;使您可以用不同的请求对客户进行参数化。 2、对请求排队或记录请求日志&#xff0c;以及支持可撤销的操作。 3、…