偏微分方程中的Tricomi方程与通用区域求解
1. Tricomi方程介绍
Tricomi方程是一种更高级类型的偏微分方程,其形式为 $u_{xx} + xu_{yy} = 0$,其中 $(x, y) \in \Omega \subset R^2$。这个线性偏微分方程的分类会根据定义域内的位置而改变,例如当 $x < 0$ 时为双曲型,当 $x > 0$ 时为椭圆型。
考虑区域 $\Omega = (a, b) \times (c, d)$,其中 $a < 0 < b$,边界条件为 $u(x, c) = 0 = u(x, d)$,$u(a, y) = g_1(y)$ 和 $u(b, y) = g_2(y)$。
设 $N$ 为 $y$ 方向的网格点数,$M$ 为 $x$ 方向的网格点数。当 $\Delta x = \Delta y$ 时,双变量情况下的结果似乎最佳,但不像用D’Alembert矩阵方法求解波动方程那样精确。
定义Tricomi系统矩阵 $L \in M_{NM\times NM}$ 为:
$L = kron(D_{2x}, I_n) + kron(spdiags(x_v,0,M,M), D_{2y})$
系统的右侧(RHS)构建方式与求解拉普拉斯方程类似,以下是MATLAB代码实现非齐次边界条件(假设为点网格):
R = zeros(N,M);
R(:, 1) = -g1(yv) / dx^2;
R(:, M) = -g2(yv) / dx^2;
R = reshape(R, N*M, 1);
<
超级会员免费看
订阅专栏 解锁全文
6098

被折叠的 条评论
为什么被折叠?



