Решение дифференциального уравнения 2-ой степени в Xcos.

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

Мы остановимся на рассмотрении ОДУ 2-ой степени и двух подходах поиска его решения посредством составления блок-схем Xcos. Первый подход заключается в последовательном интегрировании правой части дифференциального уравнения, то есть, использования двух блоков-интеграторов.

Способ 1: последовательное интегрирование

Рассмотрим дифференциальное уравнение второго порядка с заданными начальными условиями:

\( y''-0.5y'+y=0.2x-1.3, y(0)=-1, y'(0)=1 \) (1)

Как и в случае с д.у. первой степени, уравнение (1) необходимо привести к виду, где слева от знака «равно» будет наивысшая производная, а справа – остальные слагаемые, то есть к следующему виду:

\( y''=0.5y'-y+0.2x-1.3 \) (2)

И в последующем рассмотреть сумму, стоящих справа от знака «равно» слагаемых, при этом, приняв каждую из производных y, как интеграл от исходной суммы. То есть, условно произвести последовательную замену и подстановку производных и воспользоваться принципом, что \( \int{y''}=y'\), а \( \int{\int{y''}}=\int{y'}=y\). Рассмотрим данный процесс на нашем примере.

Чтобы составить блок-схему дифференциального уравнения второй степени (2) нужно:

  1. Добавить блок сумматора BIGSOM_f. Во внутренних параметрах данного блока указать вектор знаков слагаемых. В нашем случае справа стоят 4 слагаемых, знак первого слагаемого «+», далее «-», потом опять «-» и снова «+», поэтому во внутреннем параметре Input ports signs нужно указать [1;-1;1;-1];

  2. Добавить два интегратора (так как уравнение 2-й степени), указав соответствующие начальные условия из (1) во внутренних параметрах каждого из блоков INTEGRAL_f;

    Соединённых последовательно блок сумматора и интеграторов. На данном этапе должна получиться схема, изображённая на рис. 33.

    Рисунок 33. Блок-схема из интеграторов и сумматора. Рисунок 33. Блок-схема из интеграторов и сумматора.
  3. Далее необходимо добавить в сумму слагаемые \( y \) и \( y' \) с соответствующими множителями, как показано на рис. 34. Здесь первые два слагаемых в блоке сумматора образуют сумму \( 0.5y'-y\)

    Рисунок 34. Добавление соединительных линий между интеграторами и сумматором. Рисунок 34. Добавление соединительных линий между интеграторами и сумматором.
  4. В сумматоре остались два свободных положительных входа. На них нужно подать независимую переменную , усиленную блоком GAINBLK_f и константу
    см. рис.35.

    Рисунок 35. Блок-схема правой части дифференциального уравнения (1). Рисунок 35. Блок-схема правой части дифференциального уравнения (1).
  5. Для вывода графической информации, используйте блоки MUX, CMSCOPE, END и CLOCK_c с уже известным функционалом.

Итоговая блок-схема для поиска решения ОДУ с заданными начальными условиями изображена на рисунке 36.

Рисунок 36. Блок-схема численного поиска решения задачи Коши для ОДУ 2-го порядка путем последовательного интегрирования. Рисунок 36. Блок-схема численного поиска решения задачи Коши для ОДУ 2-го порядка путем последовательного интегрирования.

Моделирование проводилось на временном отрезке [0;10] с шагом дискретизации 0.1. На рис. 37. Представлены графики: зелёным цветом - искомой функции \( y \) и красным - её производной \( y' \).

Рисунок 37. Решение задачи Коши для ОДУ 2-го порядка Рисунок 37. Решение задачи Коши для ОДУ 2-го порядка

Мы разобрали на примере один из способов численного интегрирования в Xcos дифференциальных уравнений степени, выше 1 с заданными начальными условиями. Обозначим основные принципы рассмотренного подхода последовательного интегрирования:

  • Приведение дифференциального уравнения n-ой к виду, когда слева от знака «равно» находится только производная;

  • Использование блока TIME_f для подачи независимой переменной на вход функциональных блоков;

  • Последовательное подключение блоков INTEGRAL_f для обозначения производных порядка до (n-1) искомой функции;

  • Задание начальных условий в соответствующих блоках-интеграторах;

  • Задание отрезка интегрирования во внутренних параметрах блока END, начальной точки и шага дискретизации в блоке CLOCK_c;

  • Возможность выбора численного метода поиска решения дифференциального уравнения в настройкам параметров интегрирования.

Комментарии

Гость
Ответить
Войдите, чтобы оставить комментарий.
Гость
Ответить
Гость
Ответить
Гость
Ответить
Еще нет комментариев, оставьте первый.