Определим вектор начальных условий
Определим матрицу Якоби, первый столбец которой содержит производные правых частей системы по аргументу 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