Определим вектор начальных условий

Определим матрицу Якоби, первый столбец которой содержит производные правых частей системы по аргументу x (в рассматриваем случае - нулевой столбец), а остальные четыре столбца - производные правых частей по компонентам решения, т.е. для линейной системы - матрица системы

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

Решим задачу методом Рунге-Кутты с шагом 0.01, решение присвоим матрице YR

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

Решим задачу специальным методом интегрирования жестких систем с использованием функции stiffb, решение присвоим матрице YS

В Mathcad для решения жестких систем предназначены функции Stiffb и Stiffr с одинаковыми параметрами.

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

Сравним решение в конечной точке

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

Сравним вычисленные решения графически.

Черная линия - график приближенного решения, вычисленного методом Рунге-Кутты, красная - график приближенного решения вычисленного функцией stiffb

Для того чтобы построить графики решений, вычисленных функциями rkfixed и stiffb, щелкните в панели graph по пиктограмме двумерного декартова графика, введите в помеченной позиции возле оси абсцисс имя первого столбца матрицы YR, запятую и имя первого столбца матрицы YS. В помеченной позиции возле оси ординат введите в том же порядке имена соответствующих столбцов этих же матриц

Для того чтобы ввести имя столбца матрицы, введите имя матрицы, щелкните по соответствующему символу (имя с угловой скобкой в качестве верхнего индекса) в панели Matrix и введите в помеченной позиции номер столбца

Решим двумя способами задачу Коши для линейной системы дифференциальных уравнений на отрезке [0, 0.1]

Определим номер первого элемента вектора равным 1 (а не 0, как полагается по умолчанию)

Определим и введем матрицу системы A

Для того чтобы определить матирицу, щелкните по пиктограмме матрицы в панели Matrix, определите размеры матрицы (число строк и столбцов) и введите с клавиатуры в промеченных позициях элементы матрицы

Определим и введем вектор начальных условий y0

Вычислим собственные значения матрицы системы

Для вычисления собственных значений матрицы в Mathcad предназначена функция eigenvals. Введите имя функции, укажите в скобках имя матрицы, введите знак равенства и щелкните вне выделяющей рамки

Проверим условие жесткости системы

Для того чтобы вычислить модуль числа, щелкните по символу модуля в панели Matrix и ввведите имя переменной в помеченной позиции

Система жесткая, поскольку 0.1>> 0.005273

Введем условия задачи в стандартной для Mathcad форме определения правой части, начальных условий задачи Коши для системы обыкновенных дифференциальных уравнений

Система, записанная в нормальной форме имеет вид y' = f(x,y), где f(x,y) - правая часть сиcтемы x - аргумент, y - решение системы.

Для линейной системы y' = Ay, f(x,y)= Ay - вектор, равный произведению матрицы системы A, на вектор-столбец решения y

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

Для того чтобы ввести знак символьного преобразования, щелкните по соответствующему символу в панели Evaluation