2016-05-06 7 views
0

Я хотел бы решить плоскую систему дифференциальных уравнений, в которой задано начальное условие для одной переменной, а начальное условие другого необходимо определить в чтобы система сходилась к ее равновесию. Если равновесие является устойчивой седловой точкой (что представляет интерес для систем, возникающих из задач оптимального управления, анализируемых в экономике), то для достижения конвергенции существует единственное начальное значение этой переменной. Таким образом, основным вопросом является определение такого начального значения, чтобы иметь возможность решить проблему. Можно ли использовать R для определения значения такого начального условия и, таким образом, решить систему?Решение системы дифференциальных уравнений в R (устойчивость к седловым точкам)

Система:

х '= SQRT (х) -x -y

у' = у * ((SQRT (х))^(- 1) -1)

с x и y неотрицательными. Анализ показывает, что существует единственное равновесие, при котором оба х и у строго положительны, а анализ матрицы Якоби показывает, что одно собственное значение положительно, а другое отрицательно, поэтому равновесие устойчиво к седлу. Если x (0) задано, скажем, равным 1, как мы можем определить значение y (0) так, чтобы система сходилась к положительному равновесному значению (x, y)? Я хотел бы иметь возможность имитировать уникальные сходящиеся динамические пути x и y. Может кто-то помочь мне с этим?

С помощью deSolve мы можем легко решить систему, но нам нужно указать x (0) и y (0). Может ли deSolve или какой-либо другой пакет использоваться для определения того, что является значением y (0), позволяющим y сходиться к его равновесному значению? Вероятно, мы должны полагаться на алгоритм съемки, чтобы угадать и перекалибровать начальное условие y (0), но я не знаю, как это можно сделать.

ответ

0

Что вы хотели бы сделать, это вычислить «устойчивое многообразие седло» Это делается

  1. вычислительном якобиан, J, в равновесии, xStar
  2. Нахождение собственных значений и собственных векторов J
  3. Использование в качестве начального условия y0 = Xstar - eps * eigenvector, где eigenvector является собственным вектором, соответствующий отрицательным собственным J и eps является очень малым числом (например, eps = 1e-7)
  4. Имитировать динамику, но в обратном направлении, например. раз = сл (-10,0, от = .1), в lsoda
  5. Повторите шаги 3 & 4 для но с начальным условием y0 = Xstar + eps * eigenvector

 Смежные вопросы

  • Нет связанных вопросов^_^