Я намагаюся знайти деякі ресурси, які допоможуть пояснити, як вибрати граничні умови при використанні методів кінцевих різниць для вирішення PDE.
Книги та записки, до яких я зараз маю доступ до всіх, говорять подібні речі:
Загальні правила, що регулюють стабільність за наявності меж, є надто складними для вступного тексту; їм потрібна складна математична техніка
(А. Ізерлес - перший курс з числового аналізу диференціальних рівнянь)
Наприклад, намагаючись реалізувати двоетапний високосний метод для рівняння адвекції:
за допомогою MATLAB
M = 100; N = 100;
mu = 0.5;
c = [mu 0 -mu];
f = @(x)(exp(-100*(x-0.5).^2));
u = zeros (M, N);
x = 1/(M+1) * (1:M);
u(:,1) = f(x);
u(:,2) = f(x + mu/(M+1));
for i = 3:N
hold off;
u(:,i) = conv(u(:,i-1),c,'same') + u(:,i-2);
plot(x, u(:,i));
axis( [ 0 1 0 2] )
drawnow;
end
Рішення поводиться добре, поки не досягне межі, коли дуже раптово почне поводитися погано.
Де я можу навчитися поводитися з такими граничними умовами?