Abaqus-Steady-State-Dynamic-Analysis的求解原理
0. 总括
基于模态的谐响应分析,可以通过扫频的方式求解频率范围内结构的线性稳态响应情况。阻尼是和频率相关的,但模态叠加法只需要知道n个模态阻尼即可推广到其他频率范围(原因详见文内公式)。
1. 谐响应分析的目的
用来求解结构在连续谐波激励下的线性响应.求解稳态动力学响应有三种方法:subspace,direct,modal。base modal的方法是利用前一个分析步提取出来的一系列模态特征计算稳态解。
2. ABAQUS的求解原理
2.1 特征值提取
对于一个具有N个自由度的多自由度系统,可用N个独立的广义坐标描述系统的运动状态:
\]
对于N自由度的系统,一定可以找到N个固有频率\(w_{\alpha}\)以及相对应的振型\(\phi_{\alpha}^{N\times1}\) 【\(\alpha=1...n,n是提取的模态的数目\)】 。\(\phi^{N}\)左边的矩阵是\(M\times N\)的,等号右边是0,所以\(\phi^{N}\)是\(N\times 1\)的。
所谓振型按我的理解就是共振时,结构的一个形状。用数学方式表示就是一个特定的解向量\(\phi_{\alpha}^{N}\)
将\(\phi_{\alpha}^{N\times 1}\)组装成 Nxn 矩阵\(\Phi\),其中每一列都包含一个特征模态。

2.2 模态叠加
有阻尼的结构动力学方程:

模态叠加用矩阵形式写为
\]
列矢量\(q\)——模态自由度(待求)
在运动方程中插入模态叠加表达式,代入动力学方程:
\]
左乘\(\Phi^{T}\)后得到:
\]
此时,原方程组现已从求解 N 个变量简化为 n 个变量,右侧$\Phi{T}f(t) $为模态载荷,是外载荷在每个特征模态上的投影。
\]
\]
\begin{bmatrix}
f(t)_1 \\
f(t)_2 \\
f(t)_3 \\
....\\
f(t)_N
\end{bmatrix}
\]
\begin{bmatrix}
\phi_1f(t)_1\\
\phi_2f(t)_2\\
\phi_3f(t)_3\\
...\\
\phi_nf(t)_n\\
\end{bmatrix}
\]
上式经过一系列变换后,可以得到投影到mode \(\alpha\)上的方程\((1)\):
\]
其中:
\(q_{\alpha}\):$mode \ \alpha $下的广义坐标幅值
\(c_{\alpha}\):\(与mode \ \alpha\)有关的阻尼(模态阻尼)
\(\omega_{\alpha}\):\(mode \ \alpha\)下的无阻尼固有频率
\(m_{\alpha}\):广义质量,\(m_{\alpha}=\Phi_{\alpha}^{N}M^{N\times M}\Phi_{\alpha}^{M} \ \ (no \ sum\ over\ \alpha)\)
\((f_{1\alpha}+if_{2\alpha})e^{i\Omega t}\):是和$mode\ \alpha $有关的激励
2.2.1 激励项
激励被\(frequency (\Omega)\),节点等效力实、虚部\((F_{1}^{N},F_{2}^N)\)定义。投影到\(mode\ \alpha\)上:
N——模型自由度数
\]
载荷向量是根据其实部\(F_{1}^{N}\)和虚部\(F_{2}^{N}\)编写的,这是Abaqus/Standard 中定义载荷的方式.如果偶用幅值\(F_{0}^N\)和相位\(\Phi\)表示,则有
\]
其中:
\(F_1^N=F_0^Ncos(\Phi) \ \ \ \\ F_2^N=F_0^Nsin(\Phi)\)
2.2.2 阻尼项
- 直接模态阻尼:\(c_\alpha=2\zeta_{\alpha}\omega_{\alpha}\)
其中:\(\zeta_{\alpha}是mode \ \alpha下的临界阻尼分(模态阻尼比)\) - Structure Damp:提供了与模态振幅成比例的阻尼力。
\(c_{\alpha}\dot{q}_{\alpha}=i s_{\alpha}\omega_{\alpha}^2 q_{\alpha}\)
其中:\(s_{\alpha}是mode \ \alpha 的结构阻尼系数(模态损耗因子)\) - 瑞利阻尼:定义为\(c_{\alpha}=\beta_{\alpha}+\gamma_{\alpha}\omega_{\alpha}^2\)
其中,\(\beta_{\alpha}、\gamma_{\alpha}\)是瑞利阻尼系数,具体求法见Document.
瑞利阻尼系数可以用来再现:
\]
将阻尼项代入方程(1):
\]
方程的解为:
\]
方程中有三个阻尼项对应于,ABAQUS/CAE中只定义一个,其他的就是0.
其中:
\(f_{0\alpha}=\sqrt{f_{1\alpha}^2+f_{2\alpha}^2}是投影载荷矢量的振幅\)
\(H_{0\alpha}(\Omega)是mode\ \alpha下系统复传递函数的振幅\)
\]
(-\frac{f_{1\alpha}\eta_{\alpha}\Omega}{(\omega_{\alpha}^2-\Omega^2)^2+(\eta_{\alpha}\Omega)^2}+\frac{f_{2\alpha}(\omega_{\alpha}^2-\Omega^2)}{(\omega_{\alpha}^2-\Omega^2)^2+(\eta_{\alpha}\Omega)^2})
\]
其中:
\]
响应的幅值为:
\]
响应的相位:
\]
如果谐波激励以base motion的形式施加,那么模态载荷如下:
f_{2\alpha}=-\frac{1}{m\alpha} \phi_{\alpha}^{N}M^{NM}\hat{e}_j^{M}a_{2j}exp(i\Omega t)
\]
其中,\(M^{NM}\)是结构的质量矩阵,\(\hat{e}_{j}^{M}是一个vector(在任何接地节点上的基础加速度,方向上具有单位幅值,否则为零)\)
\(a_{1j}、a_{2j}\)是base acceleration的实部和虚部。如果施加的是velocity(或者displacement) 则\(a_1=-\Omega v_1\ \ \ a_2=-\Omega v_2\)或(\(a_1=-\Omega^2 u_1 \ \ \ a_2=-\Omega^2 u_2\))。
综上所述,根据模态叠加的基本假设:位移写为特征模态的线性组合。
方程(1)的解\(q_{\alpha}\)为
\]
这是外加激励频率为\(\Omega\),在\(mode\ \alpha\)下的解,经过模态叠加(如下)后可以得到位移响应(式2):
\]
其中:
\(q_{\alpha}:每个模态的幅值求解结果\)
\(\phi_{\alpha}^N:mode\ \alpha的特征向量向量(N \times1)即振型向量\)
稳态响应以通过用户指定频率范围的频率扫描形式给出。依次扫描频率点,就可以求出结构的频域响应。
参考资料
Abaqus-Steady-State-Dynamic-Analysis的求解原理的更多相关文章
- Log4j 2翻译 Garbage-free Steady State Logging(稳定的以不会生成垃圾的状态来记录日志)
本人菜鸟,在学习Log4j 2 的时候做的一些笔记---对"官方网站"的翻译,部分内容自己也不懂,希望大家指点 Garbage collection pauses are a co ...
- 潜在语义分析Latent semantic analysis note(LSA)原理及代码
文章引用:http://blog.sina.com.cn/s/blog_62a9902f0101cjl3.html Latent Semantic Analysis (LSA)也被称为Latent S ...
- Latent Semantic Analysis(LSA/ LSI)原理简介
LSA的工作原理: How Latent Semantic Analysis Works LSA被广泛用于文献检索,文本分类,垃圾邮件过滤,语言识别,模式检索以及文章评估自动化等场景. LSA其中一个 ...
- 5_终值定理和稳态误差_Final Value Theorem & Steady State Error
- malware analysis、Sandbox Principles、Design && Implementation
catalog . 引言 . sandbox introduction . Sandboxie . seccomp(short for secure computing mode): API级沙箱 . ...
- Automated Memory Analysis
catalogue . 静态分析.动态分析.内存镜像分析对比 . Memory Analysis Approach . volatility: An advanced memory forensics ...
- 强化学习三:Dynamic Programming
1,Introduction 1.1 What is Dynamic Programming? Dynamic:某个问题是由序列化状态组成,状态step-by-step的改变,从而可以step-by- ...
- Redis原理及拓展
Redis是单线程程序.单线程的Redis为何还能这么快? 1.所有的数据都在内存中,所有的运算都是内存级别的运算(因此时间复杂度为O(n)的指令要谨慎使用) 2.单线程操作,避免了频繁的上下文切换 ...
- 【Summary】ANSYS TRANSIENT ANALYSIS
1.4. Damping: https://www.sharcnet.ca/Software/Ansys/15.0.7/en-us/help/ans_str/Hlp_G_STR1D.html 8.7. ...
- Python知识(7)--最小二乘求解
这里展示利用python实现的最小二乘的直接求解方法.其求解原理,请参考:最小二乘法拟合非线性函数及其Matlab/Excel 实现 1.一般曲线拟合 代码如下: # -*- coding:utf-8 ...
随机推荐
- 【数据库】MongoDB服务启动失败的问题。
1.确保MongoDB所在文件夹拥有所有权限 2.确保打开CMD窗口是以管理员身份运行的 3.配置文件中的路径应该为完整路径,且不包含空格和特殊字符(不建议包含) systemLog: destina ...
- Qt/C++离线地图的加载和交互/可以离线使用/百度和天地图离线/支持手机上运行
一.前言说明 在地图应用中,有很多时候是需要断网环境中离线使用的,一般会采用两种做法,一种是只下载好离线瓦片地图,然后根据不同的缩放和经纬度坐标绘制瓦片.这种方式优点是任何地图都支持,只需要拿到瓦片即 ...
- Qt/C++开发经验小技巧281-285
悬停窗体QDockWidget默认在标题栏右键会弹出悬停模块的显示隐藏菜单,如果需要去掉,会发现设置Qt::NoContextMenu或者事件过滤器拦截都是无效的,必须设置 dockWidget-&g ...
- Qt编写地图综合应用28-闪烁点图
一.前言 Qt除了内置了各种UI组件以外,还直接集成了浏览器控件,注意哦这可是跨平台的浏览器控件哦,在5.6版本以前集成的是webkit,以后集成的是webengine,使得程序的灵活性拓展性大大增强 ...
- [转]By not providing "FindEigen3.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find...
在编译安装的时候出现如下问题,是Eigen3的Cmake依赖问题, 已经安装eigen3,但在项目的find_package(Eigen3 QUERIED)中,无法找到FindEigen3.Cmake ...
- cmake错误:CMake Error: CMake can not determine linker language for target
解决方案:因为你的library只有头文件,没有cpp文件 在add_library中增加cpp文件 同时建立一个空的cpp文件即可. 处理后的源代码结构和CMakeLists.txt内容如下所示: ...
- 前后端分离模式下Java Web开发中的技术栈概图
参考链接1:前后端的分离模式 参考链接2:浅谈前后端分离开发模式 参考链接3:前后端分离开发模式介绍
- 抖音技术分享:飞鸽IM桌面端基于Rust语言进行重构的技术选型和实践总结
本文由ELab团队公众号授权发布,原题<Rust语言在IM客户端的实践>,来自抖音电商前端团队的分享,本文有修订和改动. 1.引言 本文将介绍飞鸽IM前端团队如何结合Rust对飞鸽客户端接 ...
- Optional的使用与解析
引言 今天在项目中看到了大量Optional的使用,之前我也了解过Optional,是Java8中的新特性,并且便利地为空指针问题提供了处理方法,可以避免繁琐的if/else. 但是并没有真正在项目中 ...
- Node.js 与 PostgreSQL 集成:深入 pg 模块的应用与实践
title: Node.js 与 PostgreSQL 集成:深入 pg 模块的应用与实践 date: 2025/2/5 updated: 2025/2/5 author: cmdragon exce ...