2014 dxdy logo

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

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




 
 Интегрирование СНДУ
Сообщение02.02.2011, 19:28 
Есть такая СНДУ
$A'=0.02*A-0.02*A*B+0.01*A*C$
$B'=0.33*A*B-375*B+C*B$
$C'=0.35*A*C+3*B*C-407*C$
Начальные условия $A=1146.5, B=1.866265, C=1.481062$
Нужно проинтегрировать на промежутке $0...1$ (задача Коши). Примерно на $0.4$ решение резко возрастает до очень больших величин.
Что это такое (жёсткая системы или "неустойчивая" точка или ещё что) и как это обойти?

 
 
 
 Re: Интегрирование СНДУ
Сообщение02.02.2011, 19:35 
Посчитайте собственные числа матрицы коэффициентов. Численно

 
 
 
 Re: Интегрирование СНДУ
Сообщение02.02.2011, 19:44 
Собственные значения:
$   0.0199910188468$
$  -374.9065057756685$
$  -407.0934852431781$

 
 
 
 Re: Интегрирование СНДУ
Сообщение02.02.2011, 21:38 
Я бы попробовал перейти к новым функциям:$f=\ln A,g=\ln B,h=\ln C$.

 
 
 
 Re: Интегрирование СНДУ
Сообщение02.02.2011, 22:02 
А смысл в данном преобразовании функций?

-- Ср фев 02, 2011 23:06:54 --

А смысл в данном преобразовании функций?

 
 
 
 Re: Интегрирование СНДУ
Сообщение02.02.2011, 22:15 
Они медленнее меняются,может быть удастся понять,чем вызван быстрый рост решения.

 
 
 
 Re: Интегрирование СНДУ
Сообщение02.02.2011, 23:33 
Map в сообщении #408312 писал(а):
Примерно на $0.4$ решение резко возрастает до очень больших величин.

Gortaur в сообщении #408314 писал(а):
Посчитайте собственные числа матрицы коэффициентов. Численно

Map в сообщении #408318 писал(а):
Собственные значения:
$ 0.0199910188468$
$ -374.9065057756685$
$ -407.0934852431781$

Так все, собственно, ответ получен. Система жесткая, нужно менять метод интегрирования.

 
 
 
 Re: Интегрирование СНДУ
Сообщение03.02.2011, 00:02 
Да, но вот только одна проблема: методов перепробовано много (Гир, куча РК, эйлер, льюисон, розенброк), а результат тот-же. Если кто-то посоветует хороший метод решения буду премного благодарен.

 
 
 
 Re: Интегрирование СНДУ
Сообщение03.02.2011, 00:21 
В нелинейных системах возможен уход на бесконечность за конечное время : $\dot x=x^2$.
Судя по всему это Ваш случай. Значит модель неадекватна и уравнения не годятся.

 
 
 
 Re: Интегрирование СНДУ
Сообщение03.02.2011, 00:52 
Map в сообщении #408448 писал(а):
Да, но вот только одна проблема: методов перепробовано много (Гир, куча РК, эйлер, льюисон, розенброк), а результат тот-же.

Да, действительно - немного погонял Вашу систему (розенброком и парой предикторно-корректорных вариантов), похоже, что она действительно разваливается, и дело не в жесткости. Так что, пожалуй, Ales прав.

Что это (в смысле что именно моделируется)?

 
 
 
 Re: Интегрирование СНДУ
Сообщение03.02.2011, 01:07 
Ales
Ок, если это так, то можно немного поподробнее.

 
 
 
 Re: Интегрирование СНДУ
Сообщение03.02.2011, 11:14 
Map в сообщении #408455 писал(а):
Ок, если это так, то можно немного поподробнее.

К сожалению, подробнее нельзя:
если тестирование системы показывает уход на бесконечность,
то значит она уходит на бесконечность.
Теоретически таких систем куча и уход на бесконечность может иметь самую разную структуру.
Даже простое линейное уравнение с большим положительным собственным значением уводит на бесконечность почти мгновенно, а уж нелинейная система может вести себя как угодно.

Мои рекомендации: прогнать с малым шагом все равно каким методом при разных начальных условиях.
Попробовать нарисовать фазовый портрет в пространстве.
Найти особые точки и исследовать их тип (седла, узлы или еще что).

Если такая система описывает реальный процесс, то значит все сломается или взорвется.

 
 
 
 Re: Интегрирование СНДУ
Сообщение03.02.2011, 20:53 
А, там нелинейность (куда только смотрят модераторы - до сих пор форматирование висит нe в $\TeX$).

Map
по-моему, логично попробовать сделать линейную замену чтобы величины были одного порядка, а то у Вас то сотни, то десятые. Там уже и фазовый портрет нарисуем.

 
 
 
 Re: Интегрирование СНДУ
Сообщение03.02.2011, 21:36 
Gortaur
На самом деле я уже сделал замену т.к. в оригинале $B,C * 10^6$ соответственно и коэфициенты ещё больше разняться (например не 3, а 0.000003).

 
 
 
 Re: Интегрирование СНДУ
Сообщение04.02.2011, 16:50 
Итак, критических точек 5, две из них близко достаточно к начальным условиям. С другой стороны около начальной точки градиент хороший - и так где-то до 0.3, но при прохождении около точки $(1093,8.13,14.27)$ - начинаются неприятности в основном сначала в $b$ и $c$ - ну а потом они конечно $a$ подхватывают.

Собственно, откуда эффект - система представима в виде
$$
\dot{a} = a(0.02 +0.01(c-2b)),\dot{b} = b (0.33a - 375+c),\dot{c} = c(0.35a + 3b - 407).
$$
Смотрим на скобки во втором и 3м уравнениях. Они возрастают по $a,b,c$. Изначально векторное поле по $b$ около $8$, а $c$ медленно убывает. Поэтому рост $b$ перекрывает убывание $c$ в третьей скобке, а высокое значение $a$ перебивает убывание $c$ во второй скобке. И вот когда $b$ минует значение около $6$ - тут $a$ начинает медленно убывать, а $b$ и $c$ теперь в квадратичной положительной связке примерное
$$
\dot{b} = bc, \dotc{c} = 3bc.
$$

Т.к. $b$ в начале такого роста больше $c$, то $a$ убывает - но т.к. рост $c$ становится теперь быстрее, через некоторое время и $a$ начинает возрастать. Через некоторое время они достигают тех значений, при которых большие числа $375$ и $407$ не играют роли - ну и собственно дальше все ясно.


Проверьте (а лучше выложите сюда) постановку задачи. Может ошибку сделали пока вычисляли?

-- Пт фев 04, 2011 17:55:09 --

P.s. на точное описание не претендую - но по-моему, мысль достаточно ясна. Точно можно сделать - оценив рост $a,b,c$ на каждом отдельном интервале - только не знаю, есть ли смысл. Другое дело - что Вам нужно от этой системы, почему именно на $[0,1]$ интегрировать?

-- Пт фев 04, 2011 17:56:29 --

И последнее - для нелинейных систем может данные методы неустойчивы? может там шаг какой специальный надо брать?

 
 
 [ Сообщений: 15 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group