- •Введение
- •1. Матрицы и действия с матрицами
- •2. Определители
- •3. Обратная матрица. Решение матричных уравнений
- •4. Ранг матрицы
- •5. Системы линейных уравнений. Основные понятия
- •6. Решение линейных систем по формулам Крамера
- •7. Решение систем с помощью обратной матрицы
- •8. Исследование систем линейных уравнений. Метод Гаусса
- •9. Однородные системы
- •10. Собственные значения и собственные векторы матрицы
- •11. Действия с матрицами на компьютере в excel
- •12. Решение систем линейных уравнений в excel
- •Индивидуальное задание
12. Решение систем линейных уравнений в excel
Сначала рассмотрим решение системы линейных уравнений методом Крамера. Для этого используем уже решенный пример 11.
В EXCEL реализована функция вычисления определителей (см. п.7). Запишем матрицу коэффициентов и матрицы, полученные из нее заменой по очереди всех столбцов на столбец свободных членов. Листинг вычислений представлен на рис. 8:
Рис. 8
Матрицы записаны в диапазонах
, а значения определителей – в ячейках . Столбец свободных членов – вG2:G6. Решение системы – в I2:I6.
Тот же пример решим с помощью обратной матрицы. В EXCEL реализованы функции для нахождения обратных матриц и перемножения матриц (см. п.7). Листинг решения представлен на рис. 9. В диапазоне записана матрица коэффициентов, в ячейках– вектор свободных членов, в диапазонеобратная матрица, в ячейках– решение системы, полеченное как результат умножения матрицына матрицу.
Рис. 9
Предложим еще один способ решения линейных систем в EXCELL. Возможно, для систем он не покажется эффективным, однако знакомство с ним полезно для решения задач оптимизации, в частности задач линейного программирования. Инструментом для этого метода служит процедура Поиск решения, которая находится в Надстройках. После вызова процедуры появляется окно, представленное на рис. 11.
Покажем решение системы на примере.
►Пример 18. Решить систему
Рис. 10
В ячейки введена матрица коэффициентовуравнений системы, в– коэффициенты последнего уравнения, в ячейкиG3:G6 - столбец свободных членов. Ячейки B1:E1 отведем для значений неизвестных. В ячейках F3:F6 сосчитаем сумму произведений коэффициентов каждого уравнения на неизвестные (для этого воспользуемся встроенной функцией СУММПРОИЗВ). Выберем ячейку F6 в качестве целевой и вызовем процедуру Поиск решения. В окошке установим, что целевая ячейка должна быть равной свободному члену последнего уравнения, и заполним поля. В поле «изменяя ячейки» введем B1:E1. В поле «ограничения» будем вводить первые уравнения. А именно, значение в ячейкеF3 должно равняться заданному значению в ячейке G3 (1-е уравнение). Аналогично добавляем два других уравнения. После заполнения всех полей нажимаем .
Решение системы находится в ячейках B1:E1.
Рис. 11
Индивидуальное задание
Каждый студент выполняет задание при конкретных значениях и, которые определяются по номеру в журнале группы:−первая цифра номера по списку,− вторая. Если номер по списку однозначный.
№ |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 | |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 | |
№ |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
|
2 | |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 | |
№ |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
2 |
2 |
2 |
2 |
2 |
2 |
2 |
2 |
2 |
3 | |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
1. Вычислить определители:
, ,.
2. Даны матрицы:
,,,.
Вычислить:
, где - единичная матрица;
(вычисления проводить, сохраняя три знака после запятой).
3. Решить матричное уравнение (найти матрицу ).
.
4. Решить системы уравнений двумя способами: по формулам Крамера и с помощью обратной матрицы:
а) б)
5. Исследовать системы уравнений и найти решение, если оно существует:
а)
б)
в)
6. Исследовать и решить системы уравнений:
а)
б)
в)
Приложение
Здесь приведены примеры работы с матрицами и примеры решения систем с использованием математического пакета MATHEMATICA. Первоначально студент должен ознакомиться с работой интерфейса. Для любой работы необходимо знать операции ввода, вывода результатов; команды для выполнения операций.
Ввод данных осуществляется через знак «=». Программа подтверждает ввод строкой «In[1]:=…». Результат выполнения операции находится в строке, начинающейся словом «Out[1]=». Номера в квадратных скобках ввода и вывода совпадают.
Выполнение любой операции происходит по команде со строгим выполнением заданного формата.
Найти эти форматы можно в справке VIRTUALBOOK. Там же приведены примеры выполнения операций. Ниже приведен ряд команд для выполнения заданий по теме.
Ввод матрицы.
In[4]:= m1 = {{2, -5, 4}, {3, -1, 8}, {2, 6, 1}, {-1, 3, 4}} Out[4]= {{2, -5, 4}, {3, -1, 8}, {2, 6, 1}, {-1, 3, 4}}
Имя матрицы m1. Сама матрица вводится построчно с использование фигурных скобок.
Умножение матриц.In[1]:= m2 = {{1, 6, 4}, {-4, -2, 4}, {3, 1, 8}} In[1]:= m3 = {{2, -1, 2, 6}, {-5, 5, -2, 3} Out[1]= {{1, 6, 4}, {-4, -2, 4}, {3, 1, 8}} Out[2]= {{2, -1, 2, 6}, {-5, 5, -2, 3}} In[7]:= m1.m2 Out[7]= {{34, 26, 20}, {31, 28, 72}, {-19, 1, 40}, {-1, -8, 40}}
Команда для умножении «.».
Вычисление определителя.
In[10]:=Det[m2]Out[10]= 252
Матрица m2 введена выше.
Нахождение обратной матрицы.In[8]:=Inverse[m2]Out[8]= {{-(5/63), -(11/63), 8/63}, {11/63, -(1/63), -(5/63)}, {1/126, 17/252, 11/ 126}}
Вычисление собственных чисел и собственных векторов.In[14]:=Eigenvalues[{{1, 2}, {2, 1}}]Out[14]= {3, -1}In[16]:=Eigenvectors[{{1, 2}, {2, 1}}]Out[16]= {{1, 1}, {-1, 1}}
m4 = {{2, 1}, {8, 7}, {3, -5}, {-4, 6}}
Определение ранга матрицы.
In[18]:=MatrixRank[m1]Out[18]= 3
Решение систем линейных уравнений.In[17]:=Solve[{2x+y-z+ 2t== 12, -x+ 2y+ 4z+ 3t== 4, 2x+y+ 4z- 2t== -10,x+ 3y+ 5z+ 2t== 3}, {x,y,z,t}]Out[17]= {{x-> 1,y-> 2,z-> -2,t-> 3}}.
В этом примере система имеет единственное решение. Вместо знака равенства в ответе используется « ->». Ниже система, имеющая множество решений и система, не имеющая решений.
In[20]:= Solve[{x + y + z == 4, 2 x + y + z == 5, 3 x + 2 y + 2 z == 9}, {x, y, z}] Equations may not give solutions for all"solve", In[21]:= Solve[{x + y + z == 4, 2 x + y + z == 5, 3 x + 2 y + 2 z == 10}, {x, y, z}] Out[20]= {{x -> 1, y -> 3 - z}} Out[21]= {}
Наряду со строчной записью ввода вывода использоваться записью матриц и других математических объектов в привычном виде. Для этого можно использовать команду TraditionalForm
Использование традиционной символики.
In[23]:=m= {{1, 2, 3}, {2, 3, 7}, {-8, 6, 4}}
In[24]:= TraditionalForm[m]
Out[23]= {{1, 2, 3}, {2, 3, 7}, {-8, 6, 4}}
Out[24]//TraditionalForm
=
1Элементами матрицы могут быть и другие математические объекты, при этом свойства, рассмотренные для числовых матриц, в основном сохраняются.