Решение параболического уравнения
Uxx+Ut=0, используя явную схему, для следующих условий: x (0, 10), t (0, 100);
граничное значение: U(0, t)=100; U(10, t)=200;
начальное условие
Проверьте, кто может, правильность моего решения, а то меня терзают сомнения.:confused:
И ещё,может кто подскажет, как лучше визуализировать решение под borland c++ 3.1?
* из граничных условий: U(0, t) = 100 => U(0, 0) = 100;
* из начального условия: U(x, 0) = sin(Pi*x/5) => U(0, 0) = 0.
Вот да. Вот в этом вся фишка задачи. Если у нас синусоида, то у нас граничные условия должны быть нулевыми. Вот что получается у меня,если они нулевые Но преподаватель утверждает, что всё задано правильно.
А как решать с такими условиями, я не имею понятия. У кого какие есть ещё варианты решения задачи?
Код:
U(x, t) = sin(pi*x/5) * exp(pi^2*t/25)
Можете сравнить это с тем, что вы получили.
[QUOTE=saabru]
преподаватель утверждает, что всё задано правильно.
[/QUOTE]
А вы ему показывали то, что я написал в предыдущем посте? Чем он это объясняет?
Да, и еще вопрос такой... Честно говоря, у вас немного странное уравнение. По картинке, я смотрю, вы ищете какую-то температуру, т.е. предполагаете, насколько я понимаю, что ваша система должна прийти в термодинамическое равновесие. А уравнение описывает, напротив, экспоненциальный уход от состояния равновесия. Проверьте знак перед вторым членом в самом уравнении, уравнение Uxx - Ut = 0 для температуры гораздо логичнее.
[QUOTE=saabru]
А как решать с такими условиями, я не имею понятия.
[/QUOTE]
А никак. Бред - он и есть бред.
Да это уравнения теплопроводности. Минус точно должен быть,т.к. uxx = ut. Да ничем он не объяснил, ссылался на отсутствие времени. Сказал только, что решение меня сходится и dt dx я выбрал правильно, т.к. сигма=dt/dx*dx <0.5 :facepalm:
Цитата: saabru
сигма=dt/dx*dx <0.5
Это к чему?