常微分方程的唯一性定理

对于如下常微分方程: \[ \left\{ \begin{aligned} &\dot{x} = f(t,x)\\ &x(0) = x_0 \end{aligned} \right. \] 如果 \(f(t,x)\) 关于 \(x\)Lipschitz 连续, 那么方程的解唯一.

阅读全文 »

我在数学相关文档的编写中,对三种特殊的等号作如下释义:

恒等于 \(\equiv\)

LaTeX 表达式:\equiv

用在分析语言当中,左侧为函数,右侧为常数,表示等号左侧的函数在定义域上的取值恒等于右侧的常数。例如

三角恒等式 \[ \cos^2 x + \sin^2 x \equiv 1 \]

阅读全文 »

1. Reduced Order 中函数 \(h_{i}^{kl}\) 与细观力学 Green 函数的关联

在多尺度的单胞问题中, 如果使用本征应变 \(\mu^{\xi}(x)\) 表征材料非弹性的影响, 那么本构方程为:

\[ \sigma^{\xi}(x) = L^{\xi}(x):\left(\varepsilon^{\xi}(x) - \mu^{\xi}(x)\right) \]

对位移变量进行双尺度渐近展开, 得到

\[ \text{ANSATZ}:u^{\xi}(x) \sim u^{c}(x) + \xi u^{(1)}(x,y) + O(\xi^2) \]

阅读全文 »

基本解和 Green 函数的区别

如果将微分方程写成抽象的算子形式: \[ L[u] = f \text{ on } \Omega \]

特别的, 当函数 \(f\) 为 Dirac 函数 \(\delta\) 时, 微分方程的解称为算子 \(L\)基本解: \[ L [G] = \delta \]

阅读全文 »

考虑如下场景: 一个无穷大的弹性体 D 中嵌入一个椭球形状的夹杂 \(\Omega\), 如果夹杂的弹性模量 \(C^*_{ijkl}\)与周围弹性体的弹性模量\(C_{ijkl}\) 不同, 则称该夹杂为非均质夹杂. 因为非均质夹杂的存在, 其附近的应力场会发生改变. 考虑无穷远处的应变场强度为 \(\varepsilon^0\), 对应的应力场为 \(\sigma^0 = C : \varepsilon^0\), 应变与应力场扰动量分别为 \(\varepsilon\)\(\sigma\), 因此真实的位移和应力为 \(u_i^0 + u_i\)\(\sigma^0 + \sigma\).

阅读全文 »

在 Windows 环境下,因为有 Tortoise SVN 和 Visual SVN Server 的存在,SVN 的操作难度降低了不少。但在 Linux 环境下,为了让用户更好地了解 SVN 的工作原理,从而体验自立更生的快乐和自闭,SVN 的种种操作,从建仓到创建用户到配置网络到 checkout 到 commit 到 update,全都是用命令行实现的。虽然一些编译器集成了版本控制的功能,但是要建立 SVN 仓库,据作者有限的知识,应该只能通过命令行创建。本文介绍的是如何在 Linux 环境下使用 apache2 配置 https 协议下的 SVN 仓库。

主要的参考文档是:Subversionssl 配置

阅读全文 »

二阶张量 deviatoric 分解

对于二阶张量 \(\boldsymbol{\varepsilon}\), 总可以做如下分解: \[ \boldsymbol{\varepsilon}= \underbrace{\frac{1}{3} \mathrm{tr} \left[\boldsymbol{\varepsilon}\right] \mathbf{I}} _{:= {\boldsymbol{\varepsilon}}^\mathrm{vol}} + \underbrace{\boldsymbol{\varepsilon}- \frac{1}{3} \mathrm{tr} \left[\boldsymbol{\varepsilon}\right] \mathbf{I}} _{:= {\boldsymbol{\varepsilon}}^\mathrm{dev}}, \] deviatoric 分解的性质为:

阅读全文 »

单胞方程的 statement

单胞方程张量场 \(E_{kl}^{(mn)}\) 求解

在三维情景, 线弹性条件下, 单胞方程的弱形式为: \[ \int_{\Theta} L_{ijkl} \frac{\partial H_k^{(mn)}}{\partial y_l} \frac{\partial v_i}{\partial y_j} \mathrm{d} y = -\int_{\Theta} L_{ij(mn)} \frac{\partial v_i}{\partial y_j} \mathrm{d} y. \tag{1} \]

场变量 \(H_k^{(mn)}\) 满足周期性边界条件.

阅读全文 »

Git 阅读材料

  • Pro Git 看到所有的网站都推荐阅读这一本书,当作手册来查;
  • Missing CS 介绍了 Git 的数据模型,方便理解 Git 不那么友好的指令操作,很惊讶作者可以把 Git 讲得那么清楚;
    • btw,该网站同样推荐了许多 Git 的阅读材料,比如下一条:
  • Git commit 介绍撰写 Commit 信息的好的实践方案
阅读全文 »

如果在 markdown 文档插入本地路径中的图片,那么移动 markdown 文档同时还必须考虑图片路径,否则图片总是无法正确显示。而配置网络中的图床,在 markdown 中只需要插入图片对应的网络链接即可,这在写网络博客很方便。图床一共需要配置三个位置:

阅读全文 »

突然发现用 snippets 写注释也非常好用啊,比如写 Fortran 的 function 或 subroutine 的头部注释:

1
2
3
4
5
6
7
8
9
10
11
!-----------------------------------------------------------------------------
! name : symSchur2
! remark : get Schur decomposition for 2x2 matrix
!
! version : 1.0
! date : 2023-09-06 13:34:25
! author : XXX
!-----------------------------------------------------------------------------
subroutine symSchur2(A,c,s)
...
end subroutine symSchur2
阅读全文 »

如果想懒省事且有充足的安装空间的话,可以直接安装完全体版 texlive-full

1
sudo apt-get install texlive-full

这大概会占用 6 GB 的空间,但是好处是在未来写 tex 文档时,不会加载了奇奇怪怪的宏包之后编译出现 bug。

阅读全文 »

在写文档的时候, 我有时会有这样的需求:

  • 标记一段重要的文本;
  • 这些文本可以归属为: 笔记 (note) , 警告 (warning) , 定义等等

我就很想要一个彩色的框框, 把这段文字给标注一下. 在 \(\LaTeX\)​​​ 中, 一般是用命令 \mdframed 实现. 然而在 Markdown 的标准语法中, 并没有注记文本这一功能.

阅读全文 »

KIND 并不直接对应变量所占用的字节数,在不同的编译器与系统中可能有不同的对应关系,例如最常见的系统有:

1
2
3
REAl(KIND=4)  :: xs   ! 4 byte ieee float
REAl(KIND=8) :: xd ! 8 byte ieee float
REAl(KIND=16) :: xq ! 16 byte ieee float

而有些编译器可能是:

阅读全文 »