Лабораторная решение систем линейных уравнений

Решение систем линейных алгебраических уравнений (СЛАУ)

ЛАБОРАТОРНАЯ РАБОТА № 3

Тема: Решение систем линейных уравнений, работа с матрицами

Цель работы: Изучение возможностей пакета Ms Excel при решении задач линейной алгебры. Приобретение навыков решения систем линейных алгебраических уравнений и выполнение действий над матрицами средствами пакета.

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

Решение систем линейных алгебраических уравнений (СЛАУ).

Пусть задана СЛАУ следующего вида:

Эту систему можно представить в матричном виде: AX=b, где

– матрица коэффициентов системы уравнений;

– вектор неизвестных, – вектор правых частей.

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

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

Систему линейных алгебраических уравнений Ax=b умножим слева на матрицу, обратную к А. Система уравнений примет вид:

A -1. A . x=A -1. b, E . x=A -1. b,(E – единичная матрица)

Таким образом, вектор неизвестных вычисляется по формуле x=A -1. b.

В этом случае неизвестные x1,x2,…, xn вычисляются по формуле:

где D – определитель матрицы A, Di – определитель матрицы, получаемой из матрицы А путем замены i-го столбца вектором b.

Обратите внимание на особенность работы с матричными формулами: необходимо предварительно выделять область, в которой будет храниться результат, а после получения результата преобразовывать его к матричному виду, нажав клавиши F2 и Ctrl+Shift+Enter.

Теперь рассмотрим решение системы линейных уравнений методом обратной матрицы и методом Крамера на следующих примерах.

ПРИМЕР 3.1. Решить систему методом обратной матрицы:

.

В этом случае матрица коэффициентов А и вектор свободных коэффициентов b имеют вид:

, ,

Введём матрицу A и вектор b в рабочий лист MS Excel (рис. 3.1).

В нашем случае матрица А находится в ячейках B1:Е4, а вектор b в диапазоне G1:G4. Для решения системы методом обратной матрицы необходимо вычислить матрицу, обратную к A. Для этого выделим ячейки для хранения обратной матрицы (это нужно сделать обязательно. ); пусть в нашем случае это будут ячейки B6:E9. Теперь обратимся к мастеру функций, и в категории Математические выберем функцию МОБР,предназначенную для вычисления обратной матрицы (рис. 3.2), щелкнув по кнопке OK, перейдём ко второму шагу мастера функций. В диалоговом окне, появляющемся на втором шаге мастера функций, необходимо заполнить поле ввода Массив(рис. 3.3). Это поле должно содержать диапазон ячеек, в котором хранится исходная матрица — в нашем случае B1:E4. Данные в поле ввода Массив можно ввести, используя клавиатуру или выделив их на рабочем листе, удерживая левую кнопку мыши.

Если поле Массив заполнено, можно нажать кнопку OK. В первой ячейке, выделенного под обратную матрицу диапазона, появится некое число. Для того чтобы получить всю обратную матрицу, необходимо нажать клавишу F2 для перехода в режим редактирования, а затем одновременно клавиши Ctrl+Shift+Enter. В нашем случае рабочая книга MS Excel примет вид изображенный на рис. 3.4.

Теперь необходимо умножить полученную обратную матрицу на вектор b. Выделим ячейки для хранения результирующего вектора, например H6:H9. Обратимся к мастеру функций, и в категории Математические выберем функцию МУМНОЖ,которая предназначена для умножения матриц. Напомним, что умножение матриц происходит по правилу строка на столбец и матрицу А можно умножить на матрицу В только в том случае, если количество столбцов матрицы А равно количеству строк матрицы В. Кроме того, при умножении матриц важен порядок сомножителей, т.е. АВВА

Перейдём ко второму шагу мастера функций. Появившееся диалоговое окно (рис. 3.5) содержит два поля ввода Массив1 и Массив2. В поле Массив1 необходимо ввести диапазон ячеек, в котором содержится первая из перемножаемых матриц, в нашем случае B6:E9 (обратная матрица), а в поле Массив2 ячейки, содержащие вторую матрицу, в нашем случае G1:G4 (вектор b).

Если поля ввода заполнены, можно нажать кнопку OK. В первой ячейке выделенного диапазона появится соответствующее число результирующего вектора. Для того чтобы получить весь вектор, необходимо нажать клавишу F2, а затем одновременно клавиши Ctrl+Shift+Enter. В нашем случае результаты вычислений (вектор х), находится в ячейках H6:H9.

Для того чтобы проверить, правильно ли решена система уравнений, необходимо умножить матрицу A на вектор xиполучить в результате вектор b. Умножение матрицы A на вектор x осуществляется при помощи функции МУМНОЖ(В1:Е4;Н6:Н9), так как было описанной выше.

В результате проведенных вычислений рабочий лист примет вид изображенный на рис. 3.6.

ПРИМЕР 3.2. Решить систему из ПРИМЕРА 3.1 методом Крамера.

Введём матрицу А и вектор b на рабочий лист. Кроме того, сформируем четыре вспомогательные матрицы, заменяя последовательно столбцы матрицы A на столбец вектора b (рис. 3.7).

Для дальнейшего решения необходимо вычислить определитель матрицы A. Установим курсор в ячейку I10 и обратимся к мастеру функций. В категории Математические выберем функцию МОПРЕД,предназначенную длявычисления определителя матрицы, и перейдём ко второму шагу мастера функций. Диалоговое окно, появляющееся на втором шаге содержит поле ввода Массив.В этом поле указывают диапазон матрицы, определитель которой вычисляют. В нашем случаеэтоячейки B1:E4.

Для вычисления вспомогательных определителей введем формулы:

В результате в ячейке I10 хранится главный определитель, а в ячейках I11:I14 – вспомогательные.

Воспользуемся формулами Крамера и разделим последовательно вспомогательные определители на главный. В ячейку K11 введём формулу =I11/$I$10. Затем скопируем её содержимое в ячейки K12, K13 и K14. Система решена.

ПРИМЕР 3.3. Вычислить матрицу С по формуле: C=A 2 +2AB, где

Введем исходные данные на рабочий лист (рис. 3.8).

Для умножения матрицы А на матрицу В, выделим диапазон B5:D7ивоспользуемся функцией МУМНОЖ(B1:D3;G1:I3).

Результат вычисления A 2 =A*Aпоместим в ячейкиG5:I7,воспользовавшисьформулой МУМНОЖ(B1:D3;B1:D3).

Умножение (деление) матрицы на число можно выполнить при помощи элементарных операций. В нашем случае необходимо умножить матрицу из диапазона B5:D7начисло 2. Выделим ячейки B9:D11 и введем формулу =2*B5:D7.

Сложение (вычитание) матриц выполняется аналогично. Например, выделим диапазон G9:I11 и введем формул =B9:D11+ G5:I7.

Для получения результата в обоих случаях необходимо нажать комбинацию клавиш Ctrl+Shift+Enter.

Кроме того, в строке формул рабочего листа, изображенного на рис. 3.8, показано как можно вычислить матрицу Содним выражением.

ВАРИАНТЫ З А Д А Н И Й

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

2. Решить систему уравнений с помощью обратной матрицы.

3. Выполнить действия над матрицами.

При решении систем обязательно выполнить проверку.

Вариант №1 1) 2)

3) 2 (A + B) (2B – A),

Вариант №2 1) 2)

3) 3 A — (A + 2B) B,

Вариант № 3 1) 2)

3) 2(A–B)(A 2 + B),

Вариант №4 1) 2)

3) (A 2 – B 2 )(A + B),

Вариант №5 1) 2)

3) (A–B 2 )(2A+B),

Вариант №6 1) 2)

3) (A – B) A + 2B,

Вариант №7 1) 2)

3) 2(A–0,5B)+AB,

Вариант №8 1) 2)

3) (A – B)A + 3B,

Вариант №9 1) 2)

3) 2A – (A 2 + B) B,

Вариант №10 1) 2)

3) 3 (A 2 – B 2 ) –2АB,

Вариант №11 1) 2)

3) (2A–B)(3А+B)–2АВ,

Вариант №12 1) 2)

3) А(A 2 –B)-2(B+А)В,

Вариант №13 1) 2)

3) (A+B)A–B(2А+3В),

Вариант №14 1) 2)

3) A(2A+B)–B(А–В),

Вариант №15 1) 2)

3) 3(A+B)(AВ–2А),

Вариант №16 2)

3) где

Вариант №17 1) 2)

3) 2А + 3B(АB-2А),

Вариант №18 1) 2)

3)

Вариант №191) 2)

3) 2A — АB(В — А) + В,

Вариант №20 1) 2)

3) A 2 — (A + B)–(А – 3В),

Вариант №21 1) 2)

3)

Вариант№22

Вариант №23 1) 2)

3) А(A — B) + 2В(A + В),

Вариант№24 1) 2)

Вариант№25

Вариант №26

Вариант №27

Вариант №28

Вариант№29

Вариант №30

Лабораторная_работа «Решение системы линейных уравнений»

Обращаем Ваше внимание, что в соответствии с Федеральным законом N 273-ФЗ «Об образовании в Российской Федерации» в организациях, осуществляющих образовательную деятельность, организовывается обучение и воспитание обучающихся с ОВЗ как совместно с другими обучающимися, так и в отдельных классах или группах.

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

Цель работы: приобрести навыки решения линейных алгебраических уравнений в среде Excel .

1. Изучить представленный ниже материал, повторить приведенные примеры

В общем виде система линейных алгебраических уравнений записывается следующим образом:

Эту систему можно представить в матричном виде: AX = b , где

— матрица коэффициентов системы уравнений;

— вектор неизвестных; — вектор правых частей.

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

Систему линейных алгебраических уравнений AX = b умножим слева на матрицу, обратную к матрице А . Система уравнений примет вид:

Вектор неизвестных вычисляется по формуле X=A -1 b .

В этом случае неизвестные x 1 , x 2 ,…, x n вычисляются по формуле:

где  – определитель матрицы A ;

I – определитель матрицы, получаемой из матрицы А путем замены i -го столбца вектором b.

Рассмотрим решение системы линейных уравнений методом обратной матрицы и методом Крамера на следующих примерах.

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

Матрица коэффициентов А и вектор свободных коэффициентов b имеют вид:


.

Введем эти данные в рабочий лист Excel (рисунок 12).

Рисунок 12 – Шаг 1 решения системы линейных уравнений

Для решения системы методом обратной матрицы необходимо вычислить матрицу, обратную к A . Для этого определим ячейки для хранения обратной матрицы, пусть это будут ячейки B6:E9.

Обратимся к мастеру функций, и выберем функцию МОБР , щелкнув по кнопке OK, перейдём ко второму шагу мастера функций. В диалоговом окне, появляющемся на следующем шаге мастера функций, необходимо заполнить поле ввода Массив . Это поле должно содержать диапазон ячеек, в котором хранится исходная матрица — в нашем случае B1:E4. Данные в поле ввода Массив можно ввести, используя клавиатуру или выделив их на рабочем листе, удерживая левую кнопку мыши.

Если поле Массив заполнено, нажать кнопку OK. В первой ячейке, выделенного под обратную матрицу диапазона, появится некое число. Для того чтобы получить всю обратную матрицу, необходимо нажать клавишу F2, а затем одновременно клавиши Ctrl+Shift+Enter. Рабочий лист Excel примет вид, изображенный на рисунке 13.

Р
исунок 13 – Шаг 2 решения системы линейных уравнений

Теперь необходимо умножить полученную обратную матрицу на вектор b . Выделим ячейки для хранения результирующего вектора, например H6:H9. Обратимся к мастеру функций, и выберем функцию МУМНОЖ , предназначенную для умножения матриц. На втором шаге мастера функций в диалоговом окне введем в поле Массив1 необходимо ввести диапазон ячеек, в котором содержится первая из перемножаемых матриц, в нашем случае B6:E9 (обратная матрица), а в поле Массив2 ячейки, содержащие вторую матрицу, в нашем случае G1:G4 (вектор b ).

Для того чтобы проверить, правильно ли решена система уравнений, необходимо умножить матрицу A на вектор х и получить в результате вектор b . Умножение матрицы A на вектор x осуществляется при помощи функции = МУМНОЖ (В1:Е4;Н6:Н9), так как было описанной выше.

В
результате проведенных вычислений рабочий лист примет вид изображенный на рисунке 13.

Рисунок 13 – Шаг 3 решения системы линейных уравнений матричным методом

Решим пример методом Крамера.

Введём матрицу А и вектор b на рабочий лист. Сформируем четыре вспомогательные матрицы, заменяя последовательно столбцы матрицы A на столбец вектора b (рисунок 14).

Для дальнейшего решения необходимо вычислить определитель матрицы A. Установим курсор в ячейку I10 и обратимся к мастеру функций. В категории Математические выберем функцию МОПРЕД, предназначенную для вычисления определителя матрицы, и перейдём ко второму шагу мастера функций. Диалоговое окно, появляющееся на втором шаге содержит поле ввода Массив. В этом поле указывают диапазон матрицы, определитель которой вычисляют. В нашем случае это ячейки B1:E4.

Для вычисления вспомогательных определителей введем формулы:

I12= МОПРЕД (B11:E14) ,

I13= МОПРЕД (B16:E19),

I14= МОПРЕД (B21:E24) .

В результате в ячейке I10 хранится главный определитель, а в ячейках I11:I14 — вспомогательные.

Воспользуемся формулами Крамера и разделим последовательно вспомогательные определители на главный. В ячейку K11 введём формулу=I11/$I$10. Затем скопируем её содержимое в ячейки K12, K13 и K14. Система решена.

Рисунок 14 — Решения системы линейных уравнений методом Крамера

2. Решить системы уравнений согласно вариантам с помощью обратной матрицы и методом Крамера.

При решении систем обязательно выполнить проверку.

Вариант 2 Вариант 3 Вариант 4 Вариант 5 Вариант 6 Вариант 7 Вариант 8 Вариант 9 Вариант 10 Вариант 11 Вариант 12 Вариант 13 Вариант 14 Вариант 15 Вариант 16 Вариант 17 Вариант 18 Вариант 19 Вариант 20

Обратите внимание на особенность работы с матричными формулами: необходимо предварительно выделять область, в которой будет храниться результат, а после получения результата преобразовывать его к матричному виду, нажав клавиши F2 и Ctrl+Shift+Enter.

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

Страницы работы

Содержание работы

Лабораторная работа №3

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

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

Решить систему линейных алгебраических уравнений (САУ)

, , ,

итерационными методами Зейделя и наискорейшего спуска с точностью до e = 0,001. Для сравнения с истинными значениями корней выполнить решение указанной САУ методом Гаусса.

Общий вид алгоритма Зейделя и наискорейшего спуска

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

Расчетные соотношения метода Зейделя для подготовленной системы уравнений (4.13) имеют вид

,(4.18)

.

При составлении программы для вычислений на ЭВМ вместо соотношения (4.18) удобнее использовать выражение, в котором фигурируют элементы исходной системы уравнений

,

.

Если матрица симметрическая и положительно определенная, а подготовленная к итерациям система определяется в виде

(4.13)

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

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

.

Метод наискорейшего спуска. Данный метод относится к группе нелинейных градиентных алгоритмов. Градиентные алгоритмы, уточнение решения в которых осуществлялось по отдельным координатам, предполагают траекторию движения к истинному решению сразу по всем координатам по линии наискорейшего спуска в направлении, противоположном вектору градиента функционала, связанного с ошибкой между истинным решением и решением на -й итерации. Именно такой выбор направления обеспечивает наиболее быстрое убывание функционала ошибки. Вычислительная схема метода наискорейшего спуска выглядит следующим образом. Задаются некоторым начальным приближением (если нет никакой априорной информации, то полагают ), а далее осуществляется итерационный процесс уточнения

, (4.19)

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

, (4.20)

. (4.21)

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

.

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

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

SUBROUTINE N1YMGS (A,B,N,G,X),

SUBROUTINE N1YMNS (A,B,N,G,X)

реализуют алгоритмы решения САУ методами Зейделя и наискорейшего спуска (одна итерация) соответственно.

Входные параметры подпрограмм:

А(N,N) — (N ´ N)-мерная матрица САУ;

B(N) — N-мерный вектор правой части САУ;

N — мерность САУ;

G(N) — N-мерный вектор невязки (g = b — Ax);

X(N) — N-мерный вектор начальных условий решения САУ.

Выходные параметры подпрограммы:

X(N) — N-мерный вектор уточненных значений решения САУ.

Окончание итерационной процедуры производиться при выполнении условия , где , i[1, n], k = 1, 2, 3, …,

SUBROUTINE N1YGAU (A,B,X,N)

реализует алгоритм метода Гаусса с выбором главного элемента.

Входные A, B, N и выходной X параметры подпрограммы N1YGAU совпадают по описанию с аналогичными параметрами в подпрограммах N1YMGS, N1YMNS.

В подпрограмме N1YGAU матрица A приводится к треугольной.


источники:

http://infourok.ru/laboratornaya-rabota-reshenie-sistemi-lineynih-uravneniy-1962417.html

http://vunivere.ru/work36005