Top menu

Урок 22. Линейные уравнения в Mathcad

В этом уроке мы рассмотрим применение векторов и матриц, а именно решение систем линейных уравнений.

Пример

Есть система трех линейных уравнений с тремя неизвестными:

mathcad_22_01

Традиционный метод решения таких систем – последовательное исключение переменных. Например, мы можем сложить (1) и (3), затем (2) и (3):

mathcad_22_02

Из уравнения (5):

mathcad_22_03

Затем, используя (4):

mathcad_22_04

Наконец, из (1):

mathcad_22_05

Итак, получили:

mathcad_22_06

Линейные уравнения можно решить с помощью векторов и матриц. Запишем левую часть уравнений (1), (2) и (3) как произведение матрицы коэффициентов A на вектор решений X:

mathcad_22_07

Убедитесь, что элементы матрицы A совпадают с коэффициентами системы уравнений. Правую часть запишем как вектор решений:

mathcad_22_08

Краткая запись системы уравнений:

mathcad_22_09

Тогда решение можно найти:

mathcad_22_10

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

Расчет цепи постоянного тока

Цепь состоит из резисторов и источников ЭДС. Необходимо определить токи во всех ветвях цепи:

mathcad_22_11

Примем значения сопротивлений и ЭДС:

mathcad_22_12

Запишем уравнения для контуров I, II и III, исходя из второго правила Кирхгофа:

mathcad_22_13

Для узлов a, b и c запишем уравнения по первому правилу Кирхгофа:

mathcad_22_14

Запишем матрицу A, содержащую коэффициенты при токах, а в вектор b – правые части уравнений:

mathcad_22_15

Решение системы уравнений:

mathcad_22_16

Решение X можно найти по-другому – с помощью функции lsolve(A,B):

mathcad_22_17

Линейные уравнения

С линейными уравнениями обычно не возникает проблем, но есть несколько вещей, о которых следует знать. Продемонстрируем их на системе двух уравнений:

mathcad_22_18

Можно записать как:

mathcad_22_19

Решение – точка (0,1), и здесь проблем не возникло:

mathcad_22_20

Это обычный случай. Интересно вычислить определитель матрицы коэффициентов:

mathcad_22_21

Он не равен нулю. Теперь поменяем второе уравнение системы и попробуем найти решение:

mathcad_22_22

Система имеет бесконечное множество решений:

mathcad_22_23

Определитель матрицы коэффициентов:

mathcad_22_24

Он равен нулю. При попытке решить систему Mathcad скажет, что матрица является сингулярной. Здесь два уравнения идентичны, но результат будет тот же, если одно из уравнений кратно другому. Такие уравнения называются линейно зависимыми.

В третьем варианте изменим константу во втором уравнении:

mathcad_22_25

Здесь нет решений: две прямые параллельны:

mathcad_22_26

Как Вы догадывались, определитель снова равен нулю:

mathcad_22_27

Поведение большего числа уравнений аналогично.

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

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

Резюме

  1. Система линейных уравнений обычно имеет своим решением столько переменных, сколько самих уравнений.
  2. Небольшие системы линейных уравнений могут быть решены последовательным исключением переменных.
  3. Для больших систем уравнений нужна краткая запись. Мы использовали векторы и матрицы. Левая часть уравнений является произведением матрицы коэффициентов A на вектор решений x, правая часть – это вектор решений b. Решение: mathcad_22_28.
  4. С помощью матриц и векторов мы решили задачу цепи постоянного тока.
  5. Решение не будет найдено, если матрица коэффициентов сингулярна.