Games201学习笔记5:线性弹性有限元
学习教程来自:GAMES201:高级物理引擎实战指南2020
以下大部分图片来自教程PPT,仅作为笔记用于学习和分享,侵删
笔记内容大多为课程内容的翻译和转述,外加一些自己的理解,若有不正确的地方恳请大家交流和指正
上一讲难产了,不知道能不能补过来了,先学这一讲吧hh
笔记
这节本质上是使用有限元的方法,最终得到一个线性系统用于求解。
1. FEM(Finite element method)
Galerkin methods(加辽金方法)的一种,FEM将continuous PDEs转化为线性系统,用于后续求解
步骤:
- 将强型PDEs转化为弱型PDEs
- 分步积分
- 散度定理进一步简化偏微分方程并得到诺依曼(Neumann)边界条件的显式形式
- 离散化
- 求解线性系统
2D Poisson’s equation 2维泊松方程:拉普拉斯方程是泊松方程的简化形式(来自知乎知乎用户Csa5DY),所以简单理解的话这里说的方程严格来说是拉普拉斯方程,但也算是泊松方程
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509182438.png)
Dirichlet boundary:狄利克雷边界条件/第一类边界条件,直接给定u在边界上的值
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509181621.png)
Neumann boundary:诺依曼边界条件/第二类边界条件,为u在边界上导数/梯度的值乘以法线方向
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509181641.png)
2. 离散化求解泊松方程
2.1 化简
首先,用一个任意的二维标量函数w(x),与强型式∇·∇u相乘,可以得到
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509182742.png)
另外,用w直接与∇u相乘再求导,并展开(求导的展开)化简(∇·∇u=0)得到
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509183548.png)
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509183700.png)
2边同时积分可得下方右项,因此推导成立
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509184707.png)
散度定理(Divergence theorem):一个体积内对x散度的面积分 = 边界上的向量函数x和法向量点乘,绕边界的线积分
因此可推
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509184730.png)
2.2 离散
用线性的基函数ϕ模拟连续函数u(x),如下为二维
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509185203.png)
三维情况下,图片来源2D basis functions on a triangular mesh
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509185456.png)
带入2.1结尾方程,同时离散化函数w和函数u
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509190201.png)
抽出对uj求和的部分
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509190943.png)
引入矩阵形式:
K:“stiffness” matrix 刚度矩阵
u: degree of freedoms/solution vector 自由度/解向量
f: load vector
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509190615.png)
其中有
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509191101.png)
2.3 边界条件
将u替换为对应的边界条件规定的关系
3. Linear elasticity FEM 线性弹性有限元
柯西动量方程:速度求拉格朗日导数(即加速度) = 1/密度 乘以 柯西stress tensor的散度 + 体积力/重力加速度
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509192224.png)
准静态过程下:速度很小为0,重力为0
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509192605.png)
自由度 Degree of freedom:displacement u(新的位置减去旧的位置)
3.1 求解-FEM方法
Index notion:用 , 表示求导,αβγ对应xyz轴,则原方程变化为
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509193554.png)
其中求散度的部分乘以w
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509194109.png)
分步积分
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509194158.png)
约掉为0的部分
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509194244.png)
2边积分,并使用散度定理
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509194409.png)
离散化w和u
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509194558.png)
带入
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509194752.png)
求其中σ和u的关系(线性关系)
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509195207.png)
替换符号标记表示为
![](http://82.156.182.226:8099/img/my/QQ%E6%88%AA%E5%9B%BE20220509195336.png)
带入得到线性系统Ku = f
4. Topology optimization 拓扑优化
是一种根据给定的负载情况、约束条件和性能指标,在给定的设计区域内对材料分布进行优化的数学方法,是结构优化的一种。(来自知乎拓扑优化(Topology Optimization)浅谈)
Games201学习笔记5:线性弹性有限元相关推荐
- Games201学习笔记2:拉格朗日视角2
学习教程来自:GAMES201:高级物理引擎实战指南2020 以下大部分图片来自教程PPT,仅作为笔记用于学习和分享,侵删 笔记内容大多为课程内容的翻译和转述,外加一些自己的理解,若有不正确的地方恳请 ...
- Games201学习笔记3:欧拉视角
学习教程来自:GAMES201:高级物理引擎实战指南2020 以下大部分图片来自教程PPT,仅作为笔记用于学习和分享,侵删 笔记内容大多为课程内容的翻译和转述,外加一些自己的理解,若有不正确的地方恳请 ...
- TensorFlow 深度学习笔记 从线性分类器到深度神经网络
转载请注明作者:梦里风林 Github工程地址:https://github.com/ahangchen/GDLnotes 欢迎star,有问题可以到Issue区讨论 官方教程地址 视频/字幕下载 L ...
- 【入门建议收藏】密码学学习笔记之线性分析入门篇——EzSPN
前言 上一篇了解了一下差分分析,这次我们结合一道CTF题目聊一聊线性分析 同属于选择明文的差分分析不同,线性分析属于已知明文攻击方法,它通过寻找明文和密文之间的一个"有效"的线性逼 ...
- 《信号与系统学习笔记》—线性时不变系统(一)
注:本博客是基于奥本海姆<信号与系统>第二版编写,主要是为了自己学习的复习与加深. 一.离散时间线性时不变系统:卷积和 一).用脉冲表示离散时间信号 1.如何把任何离散时间时间信号看成由离 ...
- 深度学习 笔记(线性神经网络)
3.1. 线性回归 - 动手学深度学习 2.0.0-beta1 documentation 目录 3.1. 线性回归 - 动手学深度学习 2.0.0-beta1 documentation 3.1 线 ...
- 《离散时间信号处理学习笔记》—线性时不变系统的变换分析(一)
注:本博客是基于奥本海姆<离散时间信号处理>第三版编写,主要是为了自己学习的复习与加深. 一.LTI系统的频率响应 一).频率响应相位和群延迟 1.在各频率点上的频率响应通常为一个复数.若 ...
- 《离散时间信号处理学习笔记》—线性时不变系统的变换分析(二)
注:本博客是基于奥本海姆<离散时间信号处理>第三版编写,主要是为了自己学习的复习与加深. 一.最小相位系统 一).最小相位和全通系统 1.任何有理系统函数都能表示成 式5.1 式中是最小相 ...
- Android学习笔记(11):线性布局LinearLayout
线性布局LinearLayout是指在横向或是竖向一个接一个地排列.当排列的组件超出屏幕后,超出的组件将不会再显示出来. LinearLayout支持的XML属性和相应方法如表所看到的: Attrib ...
最新文章
- Activex test contact failed to create control 未指定的错误 控件无法加载的原因
- sklearn计算两个向量之间的距离
- 黑客攻击我们的11步详解及防御建议
- python函数和模块有什么关键特性_Python学习----第一模块笔记(Python基础知识)...
- matlab三角形分割,MATLAB 2014b及以上版本中带有画家渲染器的三角形拆分补丁
- 作死把mysql root用户的权限给去掉了或者忘记密码了怎么办
- 9-13 ruby环境准备
- 鸿蒙开发者大会邀请函,将召开史上最大规模开发者大会,华为抓紧调试“鸿蒙”系统...
- c语言编程有限次数猜数游戏,用c语言编程猜数字
- 文献标识码与参考文献
- 上帝为什么不直接把魔鬼撒但这等邪…
- 如何卸载电脑中linux系统软件,Linux下如何卸载软件
- 十五款固态硬盘收获季节展示
- BootStrap4登录表单验证示例
- macbook苹果电脑新手快速上手
- Asterisk 使用札记
- 如何改变Dev-C++的背景色
- 前程无忧导出的简历是php,前程无忧怎么导出简历 前程无忧个人简历导出方法...
- 高权重网站外链如何建设和打造?
- hexo支持mathjax
热门文章
- 大数据平台安全培训.ppt
- SecureCRT分屏显示
- 可能造成系统自动重启原因
- 极路由2运行python安装_极路由4pro(HC5962)安装python
- 连接计算机的恰当方法,要组建一个拥有20台计算机联网的电子阅览室,连接这些计算机的恰当方法是...
- 1500ml等于多少l_0.9%氯化钠是多少mmol/L,17mmol钠盐相当于1g钠。
- window下安装mongoDB
- 电子货架标签------2.9寸无源电子墨水卡片
- 如何写一个完整的django网站:配置环境啥的不讲(python+mysql+html相关) 叁
- ,,,,,《《》》,,,,,