Как сделать матрицу из

Добавил пользователь Алексей Ф.
Обновлено: 05.10.2024

Матрица $A^$ называется обратной по отношению к квадратной матрице $A$, если выполнено условие $A^\cdot A=A\cdot A^=E$, где $E$ – единичная матрица, порядок которой равен порядку матрицы $A$.

Невырожденная матрица – матрица, определитель которой не равен нулю. Соответственно, вырожденная матрица – та, у которой равен нулю определитель.

Обратная матрица $A^$ существует тогда и только тогда, когда матрица $A$ – невырожденная. Если обратная матрица $A^$ существует, то она единственная.

Есть несколько способов нахождения обратной матрицы, и мы рассмотрим два из них. На этой странице будет рассмотрен метод присоединённой матрицы, который полагается стандартным в большинстве курсов высшей математики. Второй способ нахождения обратной матрицы (метод элементарных преобразований), который предполагает использование метода Гаусса или метода Гаусса-Жордана, рассмотрен во второй части.

Метод присоединённой (союзной) матрицы

Пусть задана матрица $A_$. Для того, чтобы найти обратную матрицу $A^$, требуется осуществить три шага:

  1. Найти определитель матрицы $A$ и убедиться, что $\Delta A\neq 0$, т.е. что матрица А – невырожденная.
  2. Составить алгебраические дополнения $A_$ каждого элемента матрицы $A$ и записать матрицу $A_^=\left(A_ \right)$ из найденных алгебраических дополнений.
  3. Записать обратную матрицу с учетом формулы $A^=\frac\cdot ^T$.

Матрицу $>^T$ часто именуют присоединённой (взаимной, союзной) к матрице $A$.

Если решение происходит вручную, то первый способ хорош лишь для матриц сравнительно небольших порядков: второго (пример №2), третьего (пример №3), четвертого (пример №4). Чтобы найти обратную матрицу для матрицы высшего порядка, используются иные методы. Например, метод Гаусса, который рассмотрен во второй части.

Найти матрицу, обратную к матрице $A=\left( \begin 5 & -4 &1 & 0 \\ 12 &-11 &4 & 0 \\ -5 & 58 &4 & 0 \\ 3 & -1 & -9 & 0 \end \right)$.

Так как все элементы четвёртого столбца равны нулю, то $\Delta A=0$ (т.е. матрица $A$ является вырожденной). Так как $\Delta A=0$, то обратной матрицы к матрице $A$ не существует.

Ответ: матрицы $A^$ не существует.

Найти матрицу, обратную к матрице $A=\left(\begin -5 & 7 \\ 9 & 8 \end\right)$. Выполнить проверку.

Используем метод присоединённой матрицы. Сначала найдем определитель заданной матрицы $A$:

Так как $\Delta A \neq 0$, то обратная матрица существует, посему продолжим решение. Находим алгебраические дополнения каждого элемента заданной матрицы:

Составляем матрицу из алгебраических дополнений: $A^=\left( \begin 8 & -9\\ -7 & -5 \end\right)$.

Транспонируем полученную матрицу: $>^T=\left( \begin 8 & -7\\ -9 & -5 \end\right)$ (полученная матрица часто именуется присоединённой или союзной матрицей к матрице $A$). Используя формулу $A^=\frac\cdot >^T$, имеем:

$$ A^=\frac\cdot \left( \begin 8 & -7\\ -9 & -5 \end\right) =\left( \begin -8/103 & 7/103\\ 9/103 & 5/103 \end\right) $$

Итак, обратная матрица найдена:

$$A^=\left( \begin -8/103 & 7/103\\ 9/103 & 5/103 \end\right).$$

Чтобы проверить истинность результата, достаточно проверить истинность одного из равенств: $A^\cdot A=E$ или $A\cdot A^=E$. Проверим выполнение равенства $A^\cdot A=E$. Дабы поменьше работать с дробями, будем подставлять матрицу $A^$ не в форме $\left( \begin -8/103 & 7/103\\ 9/103 & 5/103 \end\right)$, а в виде $-\frac\cdot \left( \begin 8 & -7\\ -9 & -5 \end\right)$:

Проверка пройдена успешно, обратная матрица $A^$ найдена верно.

Ответ: $A^=\left( \begin -8/103 & 7/103\\ 9/103 & 5/103 \end\right)$.

Найти обратную матрицу для матрицы $A=\left( \begin 1 & 7 & 3 \\ -4 & 9 & 4 \\ 0 & 3 & 2\end \right)$. Выполнить проверку.

Начнём с вычисления определителя матрицы $A$. Итак, определитель матрицы $A$ таков:

Так как $\Delta A\neq 0$, то обратная матрица существует, посему продолжим решение. Находим алгебраические дополнения каждого элемента заданной матрицы:

Составляем матрицу из алгебраических дополнений и транспонируем её:

Используя формулу $A^=\frac\cdot >^T$, получим:

$$ A^=\frac\cdot \left( \begin 6 & -5 & 1 \\ 8 & 2 & -16 \\ -12 & -3 & 37\end \right)= \left( \begin 3/13 & -5/26 & 1/26 \\ 4/13 & 1/13 & -8/13 \\ -6/13 & -3/26 & 37/26 \end \right) $$

Чтобы проверить истинность результата, достаточно проверить истинность одного из равенств: $A^\cdot A=E$ или $A\cdot A^=E$. Проверим выполнение равенства $A\cdot A^=E$. Дабы поменьше работать с дробями, будем подставлять матрицу $A^$ не в форме $\left( \begin 3/13 & -5/26 & 1/26 \\ 4/13 & 1/13 & -8/13 \\ -6/13 & -3/26 & 37/26 \end \right)$, а в виде $\frac\cdot \left( \begin 6 & -5 & 1 \\ 8 & 2 & -16 \\ -12 & -3 & 37\end \right)$:

$$ A\cdot> =\left( \begin 1 & 7 & 3 \\ -4 & 9 & 4\\ 0 & 3 & 2\end \right)\cdot \frac\cdot \left( \begin 6 & -5 & 1 \\ 8 & 2 & -16 \\ -12 & -3 & 37\end \right) =\frac\cdot\left( \begin 26 & 0 & 0 \\ 0 & 26 & 0 \\ 0 & 0 & 26\end \right) =\left( \begin 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1\end \right) =E $$

Проверка пройдена успешно, обратная матрица $A^$ найдена верно.

Ответ: $A^=\left( \begin 3/13 & -5/26 & 1/26 \\ 4/13 & 1/13 & -8/13 \\ -6/13 & -3/26 & 37/26 \end \right)$.

Найти матрицу, обратную матрице $A=\left( \begin 6 & -5 & 8 & 4\\ 9 & 7 & 5 & 2 \\ 7 & 5 & 3 & 7\\ -4 & 8 & -8 & -3 \end \right)$.

Для матрицы четвёртого порядка нахождение обратной матрицы с помощью алгебраических дополнений несколько затруднительно. Однако такие примеры в контрольных работах встречаются.

Чтобы найти обратную матрицу, для начала нужно вычислить определитель матрицы $A$. Лучше всего в данной ситуации это сделать с помощью разложения определителя по строке (столбцу). Выбираем любую строку или столбец и находим алгебраические дополнения каждого элемента избранной строки или столбца.

Например, для первой строки получим:

Определитель матрицы $A$ вычислим по следующей формуле:

А далее продолжаем находить алгебраические дополнения:

Матрица из алгебраических дополнений:

$$A^*=\left(\begin 556 & -300 & -536 & -112\\ -77 & 50 & 87 & 4 \\ -93 & 50 & 83 & 36\\ 473 & -250 & -463 & -96\end\right)$$

$$^T=\left(\begin 556 & -77 & -93 & 473\\ -300 & 50 & 50 & -250 \\ -536 & 87 & 83 & -463\\ -112 & 4 & 36 & -96\end\right)$$

$$ A^=\frac\cdot \left( \begin 556 & -77 & -93 & 473\\ -300 & 50 & 50 & -250 \\ -536 & 87 & 83 & -463\\ -112 & 4 & 36 & -96 \end \right)= \left( \begin 139/25 & -77/100 & -93/100 & 473/100 \\ -3 & 1/2 & 1/2 & -5/2 \\ -134/25 & 87/100 & 83/100 & -463/100 \\ -28/25 & 1/25 & 9/25 & -24/25 \end \right) $$

Проверка, при желании, может быть произведена так же, как и в предыдущих примерах.

Ответ: $A^=\left( \begin 139/25 & -77/100 & -93/100 & 473/100 \\ -3 & 1/2 & 1/2 & -5/2 \\ -134/25 & 87/100 & 83/100 & -463/100 \\ -28/25 & 1/25 & 9/25 & -24/25 \end \right)$.

Во второй части будет рассмотрен иной способ нахождения обратной матрицы, который предполагает использование преобразований метода Гаусса или метода Гаусса-Жордана.

Заметили ошибку, опечатку, или некорректно отобразилась формула? Отпишите, пожалуйста, об этом в данной теме на форуме (регистрация не требуется).

Очень уважаю людей, которые имеют смелость заявить, что они что-то не понимают. Сам такой. То, что не понимаю, — обязательно должен изучить, осмыслить, понять. Статья "Математика на пальцах", и особенно матричная запись формул, заставили меня поделиться своим небольшим, но, кажется, немаловажным опытом работы с матрицами.

Получается, что для одномерного пространства определитель — это длина отрезка, для плоскости — площадь фигуры, для трёхмерной фигуры — её объём… дальше идут n-мерные пространства, вообразить которые нам не дано. Если объём фигуры (то есть определитель для матрицы 3*3) равен нулю, то это означает, что сама фигура не является трёхмерной (она может быть при этом двухмерной, одномерной или вообще представлять собой точку). Ранг матрицы — это истинная (максимальная) размерность пространства, для которого определитель не равен нулю.

Если матрица — это система уравнений (а иначе зачем нам таблица каких-то цифр, не имеющих к реальности никакого отношения?), то мы можем с ней делать разные вещи. Например, можем сложить две строки одной и той же матрицы, или умножить строку на число (то есть каждый коэффициент строки умножаем на одно и то же число). Если у нас есть две матрицы с одинаковыми размерностями, то мы их можем сложить (главное, чтобы при этом мы не сложили бульдога с носорогом — но разве математики, разрабатывая теорию матриц, думали о таком варианте развития событий?). Интуитивно понятно, тем более что в линейной алгебре иллюстрациями подобных операций являются системы уравнений.

Однако в чём смысл умножения матриц? Как я могу умножить одну систему уравнений на другую? Какой смысл будет иметь то, что я получу в этом случае? Почему для умножения матриц неприменимо переместительное правило (то есть произведение матриц В*А не то что не равно произведению А*В, но и не всегда осуществимо)? Почему, если мы перемножим матрицу на вектор-столбец, то получим вектор-столбец, а если перемножим вектор-строку на матрицу, то получим вектор-строку?

Если совокупность обычных векторов, т.е. направленных геометрических отрезков, является трёхмерным пространством, то часть этого пространства, состоящая из векторов, параллельных некоторой плоскости, является двумерным пространством, а все векторы, параллельные некоторой прямой, образуют одномерное векторное пространство.

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

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

Функции автозаполнения элементов массива

Это только часть основных функций для создания массивов с заданными значениями. Использовать их достаточно просто. Например, так:

Для функций eye и identity размерности указываются отдельными параметрами:

Функции ones, zeros и full работают по аналогии с функцией empty:

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

Функции создания матриц

Давайте посмотрим как работают эти функции.

Или же, вместо строк можно использовать список или кортеж:

Но, если из переданных данных нельзя сформировать прямоугольную таблицу (матрицу), то произойдет ошибка:

Следующая функция позволяет формировать диагональные матрицы:

Но, если ей передать двумерный список, то она возвратит одномерный массив из элементов, стоящих на главной диагонали:

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

Следующий набор функций используются для формирования треугольных матриц. Например:

Если нужно привести уже существующие матрицы к треугольному виду, то это можно сделать так:

Если указать одномерный список:

то будет создана треугольная матрица 3x3 из строк [1, 2, 3].

Также функции tril и triu будут работать и с многомерными массивами:

В этом случае последние двумерные сечения будут приведены к треугольному виду.

Последняя функция этойгруппы формирует матрицу Вандермонда из одномерных списков или массивов:

Функции формирования числовых диапазонов

Следующая группа функций, которые мы рассмотрим на этом занятии, служит для формирования числовых диапазонов. Что делают эти функции? Когда мы с вами изучали язык Python, то говорили о функции

range(Start, Stop, Step)

Давайте рассмотрим некоторые из них. Первая функция arrange довольно часто применяется в программах на Python. Она позволяет проходить заданный интервал с указанным шагом, например, так:

Обратите внимание, в отличие от функции range языка Python в arrange пакета NumPy можно указывать вещественные значения. Вот еще один пример, демонстрирующий это:

Здесь все величины вещественные. Мы начинаем движение от значения 0 с шагом 0,1 пока не дойдем до значения пи (не включая его). И, далее, используя этот массив, можно вычислить синус или косинус от всех этих значений:

Видите, как это удобно. Без пакета NumPyнам пришлось бы писать цикл и делать вычисление для каждого значения аргумента. А здесь мы сразу получаем готовый массив значений функции косинуса. Это работает гораздо быстрее циклов в Python.

Похожим образом работает и функция linspace. Она разбивает указанный интервал на равномерные отрезки и возвращает массив этих значений:


Мы указываем в качестве аргументов интервал [start; stop] и число отметок в этом интервале n. Если n = 0, то получим пустой массив. При n = 1 – значение start. При n = 2 – значения start и stop. При n> 2 равномерное разбиение интервала точками m = n-2. Например:

В чем отличие linspace от arange? В arange мы указываем сами шаг движения по числовой оси. При этом число значений определяется граничными значениями. А в linspace мы задаем граничные значения и число делений, а шаг вычисляется автоматически.

Функции logspace и geomspace работают аналогичным образом. У них указываются граничные значения и число членов, а на выходе имеем массив из соответствующих величин. Например:

Остальные функции этой группы используются при построении графиков и мы их рассмотрим, когда будем рассматривать построение графиков с помощью библиотеки matplotlib.

Пластилиновый макет – это какая-то недоматериализованная мысль. Уже можно потрогать, но нельзя пользоваться. Причем, пластилин при нагреве и остывании деформируется. Поэтому стоит поторопиться закрепить его стеклопластиком. Мне известны три способа ручного изготовления деталей из стеклопластика (пластмассы, упрочненной стекловолокном). Но, если мы хотим повторить наше изделие, то нам не обойтись без промежуточного этапа — изготовления матрицы.

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

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

Намечаем контур разъёма матрицы и ставим в него опалубку.

Еще на этапе проектирования тюнинга стоит подумать о сложности его изготовления. А уж во время ваяния модели из пластилина, мысль о матрице должна дисциплинировать разгулявшуюся фантазию.
1. В случае с Copen, я рискнул обойтись одним разъемом по контуру капота. В пластилине ставить опалубку разъема сравнительно просто. Для этого продираем борозду и загоняем в нее полосу оргалита (жести, фольги, картона, ПВХ, пластилина).

Процесс контактного формования стеклопластика тюнингеры часто называют клейкой. Возможно, причиной тому чей-то неудачный опыт “приклеивания” полиэфирной смолы к модели или матрице с печальными последствиями… Поэтому, перед формовкой стеклопластика на поверхность модели или матрицы необходимо нанести разделительный слой. Разделителем может быть воск, разведенный в скипидаре, полироль для паркета, автомобильная тефлоновая полироль или профессиональные термостойкие воски.

Изготовление матрицы начинается с нанесения гелькоата.

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

На затвердевшую плёнку гелькоата наносим слои стекломата/стеклоткани с послойной просушкой.

3. На затвердевшую пленку гелькоута послойно, с промежуточной выдержкой на полимеризацию (“сушку”) наносим 1 слой стекломата марки 300 и 3 слоя стекломата марки 600 с пропиткой полиэфирной смолой. Каждый затвердевший слой зашкуриваем наждачной бумагой. (Когда такие материалы как стекломат недоступны, можно использовать стеклоткань и стеклорогожу на последние слои).

Матрицу необходимо усилить рёбрами жесткости.

4, 5. Для того, чтобы избежать деформаций, я решил усилить матрицу капота. Шаблон из картона перенес на лист фанеры и выпилил две одинаковые полосы, нижним краем повторяющие форму матрицы капота. Теперь приформовываем усилители к матрице капота полоской стекломата 600 (или стеклотканью).

Перед съёмом матрицы необходимо просверлить монтажные отверстия.

6. Перед съемом матрицы, главное, не забыть просверлить монтажные отверстия во фланцах. Я задаю расстояние между отверстиями 15 см под болт М8 поближе к углу фланца.

Снятая матрица капота.

7. И вот, наступил торжественный момент первого съема. В этом мероприятии полезно участие крепких парней и применение макетной смекалки. Мне, например, часто помогает маленький домкрат. Снятую матрицу капота очищаем от остатков модели и подрезаем фланцы по контуру.

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

Очищаем подкапотное пространство, вылепливаем и изготавливаем съёмную деталь матрицы фланцев.

9. После съема матрицы капота, я очищаю подкапотное пространство от остатков модели. Теперь у меня открылся доступ к местам крепления на кузове “родных” крыльев и решетки радиатора. На этих же местах я планирую закрепить свои новые детали. Я вылепливаю пластилином форму фланцев новой решетки радиатора и крыльев, отмечая канавками точки их крепления на кузове.
Естественно, что изготовление дополнительной съемной детали матрицы фланцев было предусмотрено заранее.

10. Предварительно обработав разделителем поверхности для формовки, выклеиваем матрицу фланцев в том же порядке что и всю матрицу. Перед съемом матрицы не забываем сверлить монтажные отверстия во фланцах новой детали!

Снимаем готовую матрицу фланцев и дорабатываем шпаклёвкой и наждачной бумагой.

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

Снятие матрицы начинается с краёв.

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

Тщательно очищаем внутреннюю поверхность матрицы.

13. Когда матрица сдвинулась, ее можно снимать руками. Как правило, матрица отваливается вместе с кусками пластилина, пенопласта, ДСП и оргалита. Потом все это приходится выковыривать, счищать скребками, отмывать керосином.

14. Очищенную внутреннюю поверхность матрицы мы также как и матрицу капота проверяем на наличие пузырей, раковин, сколов и других дефектов. Выступающие на рабочей поверхности матрицы неровности, зашкуриваем наждачной бумагой. Большие раковины шпаклюем, маленькие (на черновой матрице, как в нашем случае) можно оставить. По секрету скажу, что матрицу, рассчитанную на один съем, я вообще “шпаклюю” пластилином.

Все детали матрицы следует скрепить болтами.

15. Чистую и обрезанную по краям матрицу крыльев с бампером и решеткой радиатора лучше сразу соединить с матрицей капота болтами. Матрица в сборе меньше подвержена деформации чем отдельные фрагменты. Надо помнить о том, что стеклопластик, как и любая другая пластмасса, со временем “течет”, скручивается и провисает под воздействием температурных колебаний и напряженного состояния. Поэтому хранить матрицу рекомендуют в собранном виде и естественном для нее положении.

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

Читайте также: