Решение уравнения Пуассона с периодическими граничными условиями
Решить уравнение Пуассона с периодическими граничными условиями на кривых границах.
Задать область распределения.
In[1]:=
\[CapitalOmega] =
RegionDifference[RegionUnion[Disk[], Rectangle[{0, -1}, {2, 1}]],
Disk[{2, 0}]];
Решить дифференциальное уравнение в частных производных с периодическими граничными условиями с указанием решения левой стороны уравнения в правой части области распределения.
In[2]:=
ufun = NDSolveValue[{-\!\(
\*SubsuperscriptBox[\(\[Del]\), \({x, y}\), \(2\)]\(u[x, y]\)\) == 1,
PeriodicBoundaryCondition[u[x, y], (x - 2)^2 + y^2 == 1,
Function[x, x - {2, 0}]],
DirichletCondition[
u[x, y] == 0, (0 <= x <= 2 && (y <= -1 || y >= 1))]},
u, {x, y} \[Element] \[CapitalOmega]];
Визуализируйте решение.
In[3]:=
ContourPlot[ufun[x, y], {x, y} \[Element] \[CapitalOmega],
ColorFunction -> "TemperatureMap",
AspectRatio -> Automatic] // Quiet
Out[3]=