Решение систем линейных уравнений методом крамера в матлабе

Видео:2 - Решениt систем линейных алгебраических уравнений (СЛАУ) с помощью Matlab.Скачать

2 - Решениt систем линейных алгебраических уравнений (СЛАУ) с помощью Matlab.

Решение систем линейных уравнений методом крамера в матлабе

% Решим систему методом Крамера
A = [1 2 3 4; -1 2 -3 4; 0 1 -1 1; 1 1 1 1];
b = [30;10;3;10];

% Проверим невырожденность системы
rank(A)

% По правилу Крамера
A1 = A;
A2 = A;
A3 = A;
A4 = A;
A1(:,1) = b;
A2(:,2) = b;
A3(:,3) = b;
A4(:,4) = b;

x1 = det(A1) / det(A);
x2 = det(A2) / det(A);
x3 = det(A3) / det(A);
x4 = det(A4) / det(A);
x=[x1;x2;x3;x4];

Видео:Решение систем линейных алгебраических уравнений методом Крамера.Скачать

Решение систем линейных алгебраических уравнений  методом Крамера.

Решение СЛАУ и матрицы в Matlab

Доброго времени суток, читатели! Сегодня мы поговорим о матрицах в Matlab, об их применении в решении систем линейных алгебраических уравнений. Подробно разберем методы решения, и для этого необходимо знание нескольких базовых алгоритмов.

Также стоит отметить, что у каждого алгоритма, которым мы будем искать решение СЛАУ в Matlab, своя скорость нахождения этого решения, наличие или отсутствие условия выполнения алгоритма и т.д.

В традициях нашего сайта разберём на примере:

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

4*a + b — c = 6
a — b + c = 4
2*a — 3*b — 3*c = 4

Видео:Метод Крамера за 3 минуты. Решение системы линейных уравнений - bezbotvyСкачать

Метод Крамера за 3 минуты. Решение системы линейных уравнений - bezbotvy

Метод обратной матрицы в Matlab

Начнем с достаточно распространенного метода. Его суть состоит в том, что сначала необходимо выписать коэффициенты при a, b и c (то есть те коэффициенты, которые находятся слева) в одну матрицу, а свободный член (то есть то, что справа) в другую.

В итоге у нас получится 2 матрицы:

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

После проверки условия можем перейти к следующему шагу: нахождение обратной матрицы. В Matlab для этого используется оператор inv .
А само решение СЛАУ в Matlab находится как перемножение найденной обратной матрицы на матрицу свободных членов:

Мы получили 3 значения, которые и соответствуют нашим коэффициентам: то есть a = 2, b = -1, c = 1 . Можете проверить, подставив полученные ответы в исходную систему, и убедиться, что мы решили СЛАУ правильно.

Также следует отметить, что матрицы нужно перемножать именно, как сделали мы, то есть слева обратная матрица, справа матрица свободных членов.

Если вы не все поняли, то советую вам почитать нашу статью по основам Matlab.

Видео:Метод Крамера для решения систем линейных алгебраических уравнений (СЛАУ) в ExcelСкачать

Метод Крамера для решения систем линейных алгебраических уравнений (СЛАУ) в Excel

Метод Гаусса

Метод Гаусса в Matlab реализуется достаточно просто: для этого нам нужно всего лишь изучить один новый оператор.
() — левое деление.
При следующей записи:

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

Видео:10. Метод Крамера решения систем линейных уравнений.Скачать

10. Метод Крамера решения систем линейных уравнений.

Метод разложения матрицы

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

Возможны следующие разложения:

  • разложение Холецкого
  • LU разложение
  • QR разложение

Разберём решение через LU и QR разложение, так как в задачах чаще всего встречается задание на решение именно через такие разложения.

Основное отличие этих двух разложений: LU разложение применимо только для квадратных матриц, QR — возможно и для прямоугольных.

LU разложение

Решим выше предложенную задачу через LU разложение:

QR разложение

И через QR разложение соответственно:

Отметим, что апостроф ( ) после Q означает транспонирование.

Видео:2 минуты на формулы Крамера ➜ Решение систем уравнений методом КрамераСкачать

2 минуты на формулы Крамера ➜ Решение систем уравнений методом Крамера

Стандартные функции Matlab

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

Как видите, ничего сложного тут нет, на то они и стандартные функции Matlab.

Видео:Решение системы уравнений методом Крамера 2x2Скачать

Решение системы уравнений методом Крамера 2x2

Повторение

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

Решить систему линейных уравнений:
6*a — b — c = 0
a — 2*b + 3*d = 0
3*a — 4*b — 4*c = -1

  • Методом обратной матрицы:
  • Методом Гаусса:
  • LU разложение:
  • QR разложение:

На этом я с вами попрощаюсь, надеюсь, вы научились применять матрицы в Matlab для решения СЛАУ.

Видео:Решение системы уравнений методом Крамера.Скачать

Решение системы уравнений методом Крамера.

Методика выполнения задания №3 «Создание М-файла»

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

3.1.Создайте файл-функцию. Для этого М-файла на панели инструментов нажмите Новый М-файл (New M-file), либо выполните команды File – New—M-file.

Открывается окно М-файла. Сюда введите операторы, соответствующие решению системы уравнений методом Крамера. Назовите функцию Kramer. Входными аргументами являются матрица системы А и вектор свободных членов b, выходными – вектор Х. Название функции, набор входных и выходных параметров определяются первым оператором файла-функции, имеющим следующий вид: function X = Kramer (A, b)

Далее рассчитывается определитель матрицы системы А, вводятся новые матрицы А1, А2, А3 и А4, где соответственно 1-й, 2-й, 3-й и 4-й столбцы заменяются столбцом свободных членов b, рассчитываются определители новых матриц и элементы вектора корней системы Х. Файл-функция имеет вид, представленный на рисунке 1.3.

Решение систем линейных уравнений методом крамера в матлабе

Рисунок 1.3 – Файл-функция решения системы уравнений методом Крамера

Вектор Х представляет из себя вектор-столбец. На это указывает нумерация элементов вектора, где первая цифра номер строки, вторая – номер столбца. Если пронумеровать элементы вектора Х, как Х(1), Х(2), Х(3) и Х(4), то вектор Х будет представлять из себя вектор-строку.

3.2. Сохраните файл-функцию под именем Kramer в папке work каталога MATLAB. Важно – имя файла должно совпадать с именем функции (Kramer).Для этого нажмите в строке меню Файл (File) – Сохранить как (Save As), либо на Панели инструментов нажмите Сохранить. Появляется окно Сохранить как ((Save As)с содержимым папки work (рисунок 1.4). Нажать Сохранить (Save).

Решение систем линейных уравнений методом крамера в матлабе

Рисунок 1.4 – Сохранение М-файла

3.3.Создайте файл-сценарий, где будут указаны исходные матрицы, произведен вызов созданного ранее файла-функции Kramer и решена система уравнений матричным методом. Блок-схема алгоритма решения задачи представлена на рисунке 1.5. Предопределенный процесс «Решение системы уравнений методом Крамера» представляет из себя файл-функцию Kramer, введенную ранее.

Аналогично пункту 3.1 создайте новый М-файл. Запишите в него соответствующий приведенному алгоритму следующий программный код:

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

A=[1 1 1 0; 1 -1 3 1; -1 2 0 3; 3 1 1 -1]

b=[3; 7; -2; 7]

% Решение методом Крамера

Xk=Kramer(A,b)

% Решение матричным методом

Xm=inv(A)*b

3.4. Запустите на выполнение файл-сценарий. Для этого в строке меню выберите Отладка (Debug) – Сохранить и запустить (Save and Run).Следует помнить, что на решение запускается именно файл-сценарий, а не файл-функция. Происходит выполнение программы. Результаты отображаются в основном окне MATLAB.

Решение систем линейных уравнений методом крамера в матлабе

Решение систем линейных уравнений методом крамера в матлабе

Рисунок 1.5 Блок-схема алгоритма

В Окне команд отображаются результаты выполнения каждой строки программы, где в конце строки не стоит знак «точка с запятой» (;). Это удобно при отладке программ. Если вы не хотите вывода промежуточных результатов, то в конце соответствующей строки программы поставьте знак «точка с запятой». Ошибки отображаются в Окне команд красным цветом.

3.5. Проанализируйте результаты расчетов. В Рабочей области (Workspace) окна MATLAB отображаются переменные и массивы, введенные в программу и рассчитанные в ней. В данном случае там будут отображаться матрица А, вектор-столбец b, векторы-столбцы результатов решения системы, методом Крамера – Xk, матричным методом Xm. Щелкнув дважды левой кнопкой мыши по любому массиву или переменной из Рабочей области, можно раскрыть их значения в специальном окне Array Editor: (рисунок 1.6).

Решение систем линейных уравнений методом крамера в матлабе

Рисунок 1.6 – Результаты решения задачи

3.6.Завершите работу MATLAB/

🎬 Видео

Решение систем линейных уравнений, урок 2/5. Метод Крамера (метод определителей)Скачать

Решение систем линейных уравнений, урок 2/5. Метод  Крамера (метод определителей)

Решение системы трех уравнений по формулам КрамераСкачать

Решение системы трех уравнений по формулам Крамера

Решение системы уравнений методом Крамера 4x4Скачать

Решение системы уравнений методом Крамера 4x4

Правило Крамера. Самый простой способ решения .Скачать

Правило Крамера. Самый простой способ решения .

Математика Без Ху!ни. Система линейных уравнений. Метод Крамера.Скачать

Математика Без Ху!ни. Система линейных уравнений. Метод Крамера.

Метод Крамера Пример РешенияСкачать

Метод Крамера Пример Решения

Решение системы уравнений методом ГауссаСкачать

Решение системы уравнений методом Гаусса

Линейная алгебра, 8 урок, Метод КрамераСкачать

Линейная алгебра, 8 урок, Метод Крамера

Решение СЛАУ методом Крамера. Линейная алгебраСкачать

Решение СЛАУ методом Крамера. Линейная алгебра

Математика без Ху!ни. Метод Гаусса.Скачать

Математика без Ху!ни. Метод Гаусса.

Метод Гаусса решения систем линейных уравненийСкачать

Метод Гаусса решения систем линейных уравнений

Матричный метод решения систем уравненийСкачать

Матричный метод решения систем уравнений
Поделиться или сохранить к себе: