【本文仅是视频中Markdown文件内容,不包括视频中讲解】
如果你希望和我一样Win10上安装FEniCS,建议采用Win10 + WSL2 +
Ubuntu。
非线性变分问题之FEniCS求解
第1讲 有限元法求解偏微分方程之FEniCS入门讲解
(上一讲)第2讲 混合形式泊松方程之FEniCS求解
本讲要点
非线性变分问题的表述
变分问题的离散化
求解非线性泊松方程
非线性变分问题
前面2讲都是线性偏微分方程。变换得到线性变分问题:寻求\(u\in V\),满足 \[
a(u, v) = L(v) \qquad \forall v\in \hat{V}
\] 类似地,非线性变分问题表述为:寻求\(u\in V\),满足 \[
\textcolor{red}{F(u; v)} = 0 \qquad \forall v\in \hat{V}
\]
我们的目标是:将这个非线性的变分问题,从局部转换为线性问题。
变分问题的离散化
要解决上面这个目标,首先不妨将变分问题离散化,这样可以看清楚之间的关系。
我们通过限制一对离散的 ...
FEniCS入门讲解(求解泊松方程)
FEniCS是一个有限元法求解偏微分方程的开源计算平台。
泊松方程
将泊松方程转化成(弱)变分形式
求解微分方程边值问题(1维泊松方程)
求解2维泊松方程
ParaView中查看解
泊松方程
第一个例子自然是求解著名的泊松方程。
\[
-\Delta u=f \qquad \text{ in } \Omega \\ u|_{\Gamma_D}=u_0 \qquad \text{
on } \Gamma_D\\ \left.\frac{\partial u}{\partial
n}\right|_{\Gamma_N}=g \qquad \text{ on } \Gamma_N = \partial \Omega -
\Gamma_D
\]
将泊松方程转化成(弱)变分形式
首先:对泊松方程两边都乘上测试函数\(v\),然后对全域\(\Omega\)积分。
\[
-\int_\Omega \textcolor{red}{\Delta u v} dx=\int_\Omega f v dx
\]
这里 ...
基本思想原理
纯工科首先接触到有限元法(Finite Element Method,
FEM)的概念应该是在简单版弹性力学课程中,并且有限元会作为弹性力学考纲最后一章出现,似乎前几章全是在为这个BOSS造势铺路。在不了解其数学内涵之前,通常会反复学习三大方程的应用,引入弹性力学平面问题,运用结构力学方法推导有限元分析格式和步骤。其基本思想引用课本里简简单单一段:
1假想的把一连续体分割成数目有限的小体(单元),彼此间只在数目有限的指定点(结点)出相互连结,组成一个单元的集合体以代替原来的连续体,再在结点上引进等效力以代替实际作用于单元上的外力。选择一个简单的函数来近似地表示位移分量的分布规律,建立位移和节点力之间的关系。
门槛
微分方程
加权余量法
最小势能原理
变分原理
结构力学
弹性力学
矩阵计算
从弹性力学平面问题推导出FEM
基本物理量和方程
大括号为列向量,中括号为矩阵,加粗懒得加粗了
体力 \(\{ {f}\} = (f_x\;
f_y)^T\)
面力 \(\{ {\overline{f} }\} =
(\ov ...
单元分析
有限元法核心是建立\(\{k\}\)。在上一章
建立\(\{k\}\)的方法并不能用于复杂单元和解释收敛性,需要用能量原理。
虚位移原理&虚功方程
虚位移完全独立于真实位移,是在满足约束条件和连续协调性下的任意无限小位移,是任意的位移变分。平衡状态下,引入虚位移,外力虚功等于物体虚应变能(内力虚功)
\[
\{ \delta^*\}^T \{F\} = \iiint \{ \epsilon^*\}^T \{\sigma\}\,dx\,dy\,dz
\tag{1}
\]
变分法和最小势能原理
虚位移原理本质与最小势能原理相同,区别在于虚位移原理得到的方程为弱形式,虚位移仅要求位移一阶可导。
有限元学习
未读FEniCS系列第五讲
【本文仅是视频中Markdown文件内容,不包括视频中讲解】
如果你希望和我一样Win10上安装FEniCS,建议采用Win10 + WSL2 +
Ubuntu。
时变动力学问题之FEniCS求解
FEniCS系列讲座
第1讲 有限元法求解偏微分方程之FEniCS入门讲解
第2讲 混合形式泊松方程之FEniCS求解
第3讲 非线性变分问题之FEniCS求解
第4讲 从变分原理到变分方程之FEniCS求解【上一讲】
本讲要点
瞬态变分方程
广义α方法(the generalized-α method)。
时间依赖的表达式定义
如何区分不同的边界并标记之
需要反复迭代时,使用solve函数效率低下,解决方法。
动力学方程瞬间的变分方程
弹性动力学方程
\[
\nabla\cdot\textcolor{red}{\sigma}+\rho b = \rho \ddot{u} \\ \quad \\
\sigma = \lambda\mathrm{tr}(\epsilon)I+2\mu\epsilon \\
...
FEniCS系列第四讲
【仅是视频中Markdown文件内容,不包括讲解】
从变分原理到变分方程之FEniCS求解
FEniCS系列讲座
第1讲 有限元法求解偏微分方程之FEniCS入门讲解
第2讲 混合形式泊松方程之FEniCS求解
第3讲 非线性变分问题之FEniCS求解【上一讲】
本讲要点
从变分原理到变分方程
计算雅可比函数
另一种求非线性变分问题的方式
超弹性介质问题的求解
从变分原理到变分方程
所谓变分原理,就是可化为求泛函极值(或驻值)的问题。
对超弹性介质边界问题而言,对应的变分原理就是:总势能的最小化。
寻求超弹性介质的一个应变场\(u:\Omega\to\mathbb{R}^3\),满足最小总势能\(\Pi\):
\[
\min_{u\in V}\ \Pi
\]
其中,\(V\)是一个适合的满足边界条件的函数空间。这个总是势能的一般表达式:
\[
\Pi = \int_\Omega \psi(u)dx - \int_\Omega B\cdot u dx -
\int_{\textcolor{red}{\pa ...
个人日记
未读Welcome to Hexo! This is your very
first post. Check documentation for
more info. If you get any problems when using Hexo, you can find the
answer in troubleshooting or
you can ask me on GitHub.
Quick Start
Create a new post
1$ hexo new "My New Post"
More info: Writing
Run server
1$ hexo server
More info: Server
Generate static files
666
1$ hexo generate
More info: Generating
Deploy to remote sites
1$ hexo deploy
More info: Deployment
代码
1234567891011shellVSCode终端hexo clean; hexo shexo clean; hexo g; hexo dgit add .; git commit -m "npm publish"; npm version patch; git pushCmder终端hexo clean && hexo shexo clean && hexo g && hexo dgit add . && git commit -m "npm publish" && npm version patchgit push
文字样式
下划线演示
文字加粗演示
文字斜体演示
文本高亮演示
文本删除线演示
5号字 黑体
蓝色
这里的背景色是:MistyRosen,此处输入任意想输入的内容
123456789101112131415<u>下划线演示</u>文字**加粗**演示文字*斜体*演示文本`高亮`演示文本~~删除~ ...
有限元学习
未读【本文仅是视频中Markdown文件内容,不包括同名视频中讲解】
如果你希望和我一样Win10上安装FEniCS,建议采用Win10 + WSL2 +
Ubuntu。
FEniCS讲座系列
第1讲:有限元法求解偏微分方程之FEniCS入门讲解【上一讲】
第2讲要点
将高阶偏微分方程 变换成 1阶偏微分方程组
1阶偏微分方程组 变换成 1个变分方程
自然边界 和 基本边界
如何定义混合空间
如何自定义表达式
FEniCS快捷可视化
混合形式的泊松方程
以泊松方程为例,这是一个二阶方程:
\[
-\Delta u = f
\]
现在我们要将其改一阶方程组,引入一个叫热通量(或简称 通量)的辅助矢量\(\sigma = - \nabla u\),不难得到:
\[
\nabla \cdot \sigma = f \qquad \text{in } \Omega \\ \sigma + \nabla u =
0 \qquad \text{in } \Omega
\]
这个通量是有物理意义的,那就是所谓的傅里叶定律:热通量
\(\si ...