2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

Если Вы зададите новый вопрос в существующей теме, то в случае нарушения оформления или других правил форума Ваше сообщение и все ответы на него могут быть удалены без предупреждения.

Не ищите на этом форуме халяву, правила запрещают участникам публиковать готовые решения стандартных учебных задач. Автор вопроса обязан привести свои попытки решения и указать конкретные затруднения.

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.



Начать новую тему Ответить на тему На страницу 1, 2  След.
 
 Схема Кранк-Николсон для уравнения переноса
Сообщение05.11.2008, 19:04 


05/11/08
5
Дано уравнение переноса (нужно найти решение на сетке)
$$\dfrac{\partial u}{\partial t}  + C(x,t)\frac{\partial u}{\partial x} = 0, где 0 \leq x \leq 1, \quad 0 \leq t \leq 1$$ и схема Кранка-Николсон $$\dfrac{u^{j+1}_k - u^j_k}{\tau} + C\left(\frac{u^{j+1}_{k+1} + u^j_{k+1}}{4h} - \frac{u^{j+1}_{k-1} - u^j_{k-1}}{4h \right) = 0}$$ и даны функции, которые задают решения для $t = 0$ и $x = 0$.

Собственно, я не могу понять как находить значения функции на $j+1$ слое. То есть понятно, что там логично использовать прогонку, но нет граничного условия на $x=1$ и получается, что система не разрешается...

В чем я ошибаюсь или ошибка в схеме?

 Профиль  
                  
 
 
Сообщение05.11.2008, 19:16 
Аватара пользователя


02/04/08
742
Вообще-то уравнения первого порядка не решают с гран. условиями ни с одним ни с двумя, Решений такие краевые задачи вообще говоря не имеют, если только Ваша $C$ не согласована очень жестко с этими гранусловиями. Решение единственным образом определяется по начальным условиям.

 Профиль  
                  
 
 
Сообщение05.11.2008, 19:22 


05/11/08
5
я имел ввиду, что у меня есть начальные условия $$u(x, 0) = \varphi(x)$$ и $$u(0, t) = \psi(t)$$, но как из этой схемы найти решение на $j+1$ уровне?

 Профиль  
                  
 
 
Сообщение05.11.2008, 19:31 
Аватара пользователя


02/04/08
742
решайте методом характеристик и считайте уравнение характеристик может полегчает, но повторюсь: задача вообще говоря, некорректна

 Профиль  
                  
 
 
Сообщение05.11.2008, 19:34 


05/11/08
5
хм... извините сразу за глупость, но если мы используем, предположим, явную схему $$\dfrac{u^{j+1}_k - u^j_k}{\tau} + C \dfrac{u^j_k - u^j_{k-1}}{h} = 0 $$, то задача вполне просто... либо я просто Вас не понимаю, либо...

Добавлено спустя 2 минуты 3 секунды:

Вообще-то нужно написать программу, которая находит решение уравнения переноса на узлах сетки...

 Профиль  
                  
 
 
Сообщение05.11.2008, 19:34 
Аватара пользователя


02/04/08
742
serge_bykov писал(а):
хм... извините сразу за глупость, но если мы используем, предположим, явную схему $$\dfrac{u^{j+1}_k - u^j_k}{\tau} + C \dfrac{u^j_k - u^j_{k-1}}{h} = 0 $$, то задача вполне просто... либо я просто Вас не понимаю, либо...

а Вы в курсе, что схемы могут расходиться?

 Профиль  
                  
 
 
Сообщение05.11.2008, 19:36 


05/11/08
5
к сожалению, да...
но они только могут расходится, в принципе, явная схема (при некотором варьировании шагов) дает вполне приемлемые решения...

 Профиль  
                  
 
 
Сообщение05.11.2008, 19:41 
Аватара пользователя


02/04/08
742
serge_bykov писал(а):
к сожалению, да...
но они только могут расходится, в принципе, явная схема (при некотором варьировании шагов) дает вполне приемлемые решения...

совет вообщем такой: во-первых разобраться с уравнением характеристик, фазовый портрет прикинуть на плоскости $(x,t)$ что бы хотя бы понять, что Вы считаете. Когда это поймете то во-вторых программируйте уравнение характеристик, с обыкновенными дифурами как-то проще.

 Профиль  
                  
 
 
Сообщение05.11.2008, 20:29 


02/11/08
1193
А какая физика стоит за вашей постановкой. Если у вас справа "тишь да благодать" при больших значениях пространственной переменной - то там функция U(x,t) будет постоянной, пока туда не придут возмущения. Например задача о поршне, который движется слева направо. Примеры есть у Рождественского Яненко "Системы квазилинейных уравнений", у Самарского, Годунова.

 Профиль  
                  
 
 
Сообщение05.11.2008, 20:35 
Аватара пользователя


02/04/08
742
Я так понимаю, что сейчас в этой ветке начнется парад невежд.

Для прочистки мозгов, предлагаю каждому любителю решать уравнения первого порядка с гран условиями, прежде чем писать сюда ахинею, решить предложенную автором ветки задачу с $C=-1$ $\psi=t$ и $\varphi=0$ (т.е. $u_t-u_x=0,\quad u(x,0)=0,\quad u(0,t)=t$), точнее говоря, убедиться, что она не имеет решений при $t,x\ge 0$.

 Профиль  
                  
 
 
Сообщение05.11.2008, 21:06 


02/11/08
1193
Как бы не начался парад резких выражений. Есть корректная постановка задачи для уравнения переноса - см. например стр. 64 Рождественского Яненко "Системы квазилинейных уравнений" изд. 1968 года. Но когда вам необходимо решать задачу численно - то как правило задача решается в ограниченной области - в "хороших" студенческих задачах, как правило нет проблем с граничными условиями. Может человеку просто надо посчитать динамику движения бегущей волны со стациционарными условиями на левой и правой бесконечности - возьмите достаточно широкую область, где нет возмущений на краях и расчитывайте, что будет например со ступенчатыми начальными данными, пока не дойдут возмущения до границ вашей расчетной области. Придумать некорректных постановок можно кучу - это не проблема - вопрос был о физике задачи - может дождемся ответа автора темы.

 Профиль  
                  
 
 
Сообщение05.11.2008, 21:12 
Аватара пользователя


02/04/08
742
Yu_K писал(а):
Как бы не начался парад резких выражений. Есть корректная постановка задачи для уравнения переноса - см. например стр. 64 Рождественского Яненко "Системы квазилинейных уравнений" изд. 1968 года.

а я что разве сказал, что корректная постановка невозможна? я указал автору темы, что его постановка вообще говоря (без ограничений на $C$), некорректна. Он не понял даже этого. :lol1: Тогда я привел контр пример и предостерег любителей бездумного счета.
Yu_K писал(а):
Но когда вам необходимо решать задачу численно - то как правило задача решается в ограниченной области - в "хороших" студенческих задачах, как правило нет проблем с граничными условиями. Может человеку просто надо посчитать динамику движения бегущей волны со стациционарными условиями на левой и правой бесконечности - возьмите достаточно широкую область, где нет возмущений на краях и расчитывайте, что будет например со ступенчатыми начальными данными, пока не дойдут возмущения до границ вашей расчетной области. Придумать некорректных постановок можно кучу - это не проблема - вопрос был о физике задачи - может дождемся ответа автора темы.

я никаких постановок не придумывал, я использовал постановку автора темы, вопрос был не о физике, а о численном решении некорректной, вооще говоря, задачи. При том, что автор темы даже не понимавет этой некорректности.

 Профиль  
                  
 
 Re: Схема Кранк-Николсон для уравнения переноса
Сообщение06.11.2008, 10:53 
Заслуженный участник
Аватара пользователя


23/08/07
5492
Нов-ск
serge_bykov писал(а):
Дано уравнение переноса (нужно найти решение на сетке)
\dfrac{\partial u}{\partial t}  + C(x,t)\frac{\partial u}{\partial x} = 0, где 0 \leq x \leq 1, \quad 0 \leq t \leq 1 и схема Кранка-Николсон \dfrac{u^{j+1}_k - u^j_k}{\tau} + C\left(\frac{u^{j+1}_{k+1} + u^j_{k+1}}{4h} - \frac{u^{j+1}_{k-1} - u^j_{k-1}}{4h \right) = 0} и даны функции, которые задают решения для t = 0 и x = 0.

Собственно, я не могу понять как находить значения функции на j+1 слое. То есть понятно, что там логично использовать прогонку, но нет граничного условия на x=1 и получается, что система не разрешается...

В чем я ошибаюсь или ошибка в схеме?

Судя по постановке, величина $C(x,t)$ положительна, поэтому недоопределённую систему разностных уравнений дополните ещё одним, для чего запишите разностную схему в последней точке, аппроксимируя пространственную производную не центральной разностью, а разностью назад, т.е. не так
\dfrac{u^{j+1}_n - u^j_n}{\tau} + \frac{C}{2}\left(\frac{u^{j+1}_{n+1} - u^{j+1}_{n-1}}{2h} + \frac{u^{j}_{n+1} - u^{j}_{n-1}}{2h}  \right) = 0}
а вот так
\dfrac{u^{j+1}_n - u^j_n}{\tau} + \frac{C}{2}\left(\frac{3u^{j+1}_{n} - 4u^{j+1}_{n-1}+u^{j+1}_{n-2}}{2h} + \frac{3u^{j}_{n} - 4u^{j}_{n-1}+u^{j}_{n-2}}{2h}  \right) = 0}

 Профиль  
                  
 
 
Сообщение06.11.2008, 12:25 
Аватара пользователя


02/04/08
742
TOTAL в сообщении #156278 писал(а):
Судя по постановке, величина $C(x,t)$ положительна, поэтому недоопределённую систему разностных уравнений дополните ещё одним, для чего запишите разностную схему в последней точке, аппроксимируя пространственную производную не центральной разностью, а разностью назад, т.е. не так
\dfrac{u^{j+1}_n - u^j_n}{\tau} + \frac{C}{2}\left(\frac{u^{j+1}_{n+1} - u^{j+1}_{n-1}}{2h} + \frac{u^{j}_{n+1} - u^{j}_{n-1}}{2h} \right) = 0}
а вот так
\dfrac{u^{j+1}_n - u^j_n}{\tau} + \frac{C}{2}\left(\frac{3u^{j+1}_{n} - 4u^{j+1}_{n-1}+u^{j+1}_{n-2}}{2h} + \frac{3u^{j}_{n} - 4u^{j}_{n-1}+u^{j}_{n-2}}{2h} \right) = 0}

а какой краевой задаче эта разностная схема соответствует в терминах исходного уравнения?

 Профиль  
                  
 
 
Сообщение06.11.2008, 12:32 
Заслуженный участник
Аватара пользователя


23/08/07
5492
Нов-ск
zoo писал(а):
а какой краевой задаче эта разностная схема соответствует в терминах исходного уравнения?

Исходное уравнение переноса с положительным коэффициентом $C$ решается в области $0 < x < 1, \;\; t>0$.
Краевые условия задаются на границе $t=0$ и на границе $x=0$

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 25 ]  На страницу 1, 2  След.

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group