0%

二维 Possion 方程五点差分格式MATLAB 编程实现

二维 Possion 方程

考虑二维 Possion 方程:

其中 $\partial \Omega$ 为区域 $\Omega$ 的边界,$f(x,y)$ 和 $\phi(x)$ 为已知函数,$u|_{\partial \Omega}=\phi(x,y)$ 为边界条件。

阅读全文 »

在偏微分方程的数值解法中,有限差分法数学概念直观,推导自然,是发展较早且比较成熟的数值方法。由于计算机只能存储有限个数据和做有限次运算,所以任何一种用计算机解题的方法,都必须把连续问题(微分方程的边值问題、初值问题等)离散化,最终化成有限形式的线性代数方程组。

学习有限差分方法,差分解的存在唯一性、收敛性及稳定性等理论知识请参考书籍《微分方程数值解法》(李荣华)。

这里重点介绍问题差分格式的 MATLAB 编程实现

阅读全文 »

本文继续推荐软件,包括 Typora、CCleaner、IDM、Adobe Acrobat Pro DC、PotPlayer、foobar2000。

Markdown 编辑器:Typora

Typora 界面只有菜单栏若干几个选项和一个空白的输入区域,但这个简约的软件所支持的功能特别多。

  • 支持实时预览 Markdown 格式效果,同时还保留了「源代码模式」,快捷键 Ctrl + / 随时切换源码与预览(它的 Markdown 输入手感真是一流!);
  • 配合 Pandoc 你可以轻松地将文件导出为 PDF、HTML、Word、移动端长图,以及许多学术相关的文件格式;
  • 支持 LaTeX 等公式符号、表格、代码、图片外链。基本你能想到的文稿内容它都支持并可以实时预览。
阅读全文 »

本文介绍一些 Windows 上比较好用的软件。一个好的软件不仅可以解决某一方面的问题,还可以提高工作的效率。我用软件的原则是:在经济允许的前提下(免费最好),尽量使用每个方面最好用的软件

推荐软件:火绒安全、Snipaste、Notepad++、Everything、GifCam、Bandicam、Quicklook、Bandizip。

辅助防病毒:火绒安全

不要安装 360、管家、毒霸等,即使 Win10 系统自带的 Windows Defender 也够用了。火绒安全一个轻量级的杀毒软件,日常使用杀毒绰绰有余,无广告弹窗,病毒库更新快,不拖慢电脑进程,比较省心的杀毒软件。火绒安全还自带了很多工具,可以有选择地添加其他工具,比如弹窗拦截、文件粉碎。

Software0101.png

阅读全文 »

本文用 Gauss 2 级 4 阶方法(属于隐式 Runge-Kutta 法)求解ODE,需要用到方程组的牛顿迭代,然后用 MATLAB 编程,最后输出结果的误差阶为 4。

Runge-Kutta 方法

对于常微分方程

一般 s 级 Runge-Kutta 方法:

阅读全文 »

本文介绍如何计算经典四阶 Runge-Kutta 数值解及其收敛阶,并用 MATLAB 编程,最后展示了输出结果。

经典四阶 Runge-Kutta 方法

阅读全文 »

本文用后退 Euler 方法求解非线性 ODE,需要用到牛顿迭代,然后用 MATLAB 编程,最后展示了输出结果。

后退 Euler 方法

线性 ODE 例子(做对比)

用后退 Euler (隐式 Euler) 格式离散

显格式比较容易编程。

阅读全文 »

本文介绍如何计算数值方法的收敛阶。以 Euler 方法、梯形公式、改进 Euler 方法为例,并用 MATLAB 编程,最后展示了输出结果。

误差阶

数值解法的基本思想是,通过某种离散化手段将微分方程转化为差分方程,如单步法

它在 $x_n$ 处的数值解为 $u_n$,而初值问题在 $x_n$ 处的精确解为 $u(x_n)$,记 $e_n=u(x_n)-u_n$ 称为整体截断误差。收敛性就是讨论当 $x=x_n$ 固定且 $h=\frac{x_{n}-x_{0}}{n} \rightarrow 0$ 时 $e_n \rightarrow 0$ 的问题。

阅读全文 »

本文列举了简单的数值方法:Euler 方法、后退 Euler 方法、梯形公式、改进 Euler 方法,并用 MATLAB 求解线性 ODE,最后展示了输出结果。

常微分方程初值问题

考虑 常微分方程初值问题,设 $f(t,u)$ 在区域 $\rm G$ : $0\leqslant t \leqslant T$, $|u|< \infty$ 上连续,求 $u=u(t)$ 满足:

通常 $f$ 满足 Lipschitz 条件: $|f(t,u_1)-f(t,u_2)|\leqslant L|u_1-u_2|$.

阅读全文 »

本文是书籍 Spectral Method in MATLAB 第二章 Unbounded Grids: the Semidiscrete Fourier Transform 无界网格:半离散 Fourier 变换 笔记。

我们现在导出第一个谱方法,就是第一章的两边无限的矩阵。这种方法适用于离散的、无界的区域,因此不是一种实用的方法。但是,它确实介绍了推导和分析实用方法所需的数学思想。

半离散 Fourier 变换

无限网格用 $h \mathbb{Z}$表示,节点 $x_j=jh$,其中 $j \in \mathbb{Z}$ ,$\mathbb{Z}$ 是所有整数的集合。

SMM0201.png

根据半离散傅里叶变换和有限带宽 $sinc$ 函数插值的基本思想去推导 (1.4) 两边无限的矩阵。函数 $u(x)$ ($x \in \mathbb{R}$) 的 Fourier 变换后的函数 $\hat{u}(k)$ 定义为

阅读全文 »