Как проверить устойчивость разностной схемы

tuti

Подскажите, как проверить устойчивость разностной схемы( и как она будет выглядеть) для нелинейной системы уравнений
Ut+(2*U^3/3+V)x=alpha*Uxx
Vt-(U+2*V^3/3)x=alpha*Vxx
(Ut - частная производная U по t )

korpa

На безусловную устойчивость?
Тогда так: считают, что решение представ. в виде u_m^n=\lambda^n e^{m\varphi}, подставляют, выражают \lambda через остальные переменные, решают неравенство \left | \lambda \right | \leqslant 1

tuti

Проблема возникаетв том, что U имеет третью степень, в разностной схеме тоже будет третья степень, и при подставлении данного выражения нет возможности сократить на lambda^n и exp(i*phi*m поскольку в выражении U^3 они не сокращаются...
что делать с этим?

seregaohota

Мнимую единицу забыл.
u_m^n=\lambda^n e^{i m\varphi} u_0^0
v_m^n=\lambda^n e^{i m\varphi} v_0^0
Только дискретизация сначала должна быть.
А для безусловной устойчивости не должно быть строго меньше 1?
PS Могу сделать, только возни день. Пиши в приват если что.

seregaohota

Проблема возникаетв том, что U имеет третью степень, в разностной схеме тоже будет третья степень, и при подставлении данного выражения нет возможности сократить на lambda^n и exp(i*phi*m поскольку в выражении U^3 они не сокращаются...
что делать с этим?
Книжка Дьяченко с заданиями на dmvn, преамбула к 3 части. Вроде там есть. Там сначала вариации берут.

tuti

Нужно аналитическое решение.Я не знаю какую разностную схему написать.

zzzXAXAXAzzz

А для безусловной устойчивости не должно быть строго меньше 1?
нет... для безусловной устойчивости не главное строго меньше или нестрого, для безусловной устойчивости надо, чтобы оценка для \lambda не зависела от \tau и h
А задачу вроде как надо решать методом замороженных коэффициентов...

tuti

А это как?

seregaohota

АУж определись, аналитическое, или численное решение нужно. Судя по заголовку я думал это ЧМы.
Аналитическое решение в нелинейных дифурах есть, но редко, солитоны и компания, но это вряд ли то, что нужно и в этой системе скорее всего их нет. По физическому смыслу у тебя система двух уравнений с нелинейной связью между ними, непохоже, что там аналитическое решение будет. Берёшь книжки и копаешь. Или я предпочитаю сам думать. Пробуешь то, пробуешь сё. Ну бывает - получаешь неустойчивость и нифига не выходит, тогда пробуешь другую схему.
Может доп. требования, чтобы была заданного порядка O(\tau^2, h^2 тогда гемор ещё с начальными данными бывает или задано ещё неявную схему делать заставляют - там тогда в случае нелинейности ни прогонка не прокатит, ни ещё что, только последовательные приближения, да надо ещё думать чтобы сходились. Тогда хуже, но тоже решаемо. Обычно полная свобода, что хочешь и какого порядка аппроксимации хочешь - такого и бери. Лишь бы посчиталось и сходилось.
Короче бери самую простую и пробуй. Не вышло - думай дальше.

seregaohota

А это как?
Да я же сказал в Дьяченко написано.

tuti

НУжно не запрогать задачу, а просто ручками написать какую-нибудь разностную схему и потом проверить ее на устойчивость.
А Дьяченко имеется в виду "вычислительный практикум"? Так там нет никаких указаний, как делать...

tuti

А как действует метод замороженных коэффициентов для системы? Где можно почитать по этой теме? Или подскажите как сделать

seregaohota

Написать схему и проверить на устойчивость - всё равно надо думать как будто прогу пишешь, чтобы работала.
Сейчас специально открыл, как это нет - страница 23, раздел 3.1 теория, подраздел устойчивость. Может просто не доходит что написано Тогда в бибилиотеке ММ куча книжек по ЧМам, смотри раздел параболические уравнения и сдувай оттуда простейшую схему O(\tau, h^2). Наверное устойчивая получится.

seregaohota

А как действует метод замороженных коэффициентов для системы? Где можно почитать по этой теме? Или подскажите как сделать

Первый раз видишь что ли? В Калиткине может есть, не помню.
Ut+(2*U^3/3+V)x=alpha*Uxx
Vt-(U+2*V^3/3)x=alpha*Vxx

Ut = { u^{n+1}_m - u^n_m }/tau

Uxx = { u^n_{m+1} - 2 u^n_m + u^n_{m-1}}/h^2

Вариация работает как производная, т.е.
\delta (u^n_m)^3 = 3 (u^n_m)^2 \delta u^n_m
коэффициенты (u^n_m)^2 замораживаешь, те считаешь постоянными.
А
\delta u^n_m или \delta v^n_m заменяешь как раньше написано было про u^n_m или v^n_m в этой ветке. Получишь систему, которая имеет нетривиальное решение, когда определитель = 0. Оттуда получишь квадратное уравнение на \lambda, ну или 4 степени или какой там получится, зависит от схемы. Дальше извращаешься и смотришь когда \max_\phi |\lambda| < 1 + O(\tau)
У Дьяченко всё написано короче, только думать надо над тем, что написано.
Оставить комментарий
Имя или ник:
Комментарий: