Вычисление определителя

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
(Постановка задачи)
Строка 4: Строка 4:
== Постановка задачи ==
== Постановка задачи ==
-
Задание подразумевает знакомство с тем, как считает компьютер и какие последствия это имеет при реализации численных методов на ЭВМ. Требуется изложить и проанализировать процедуру, которая вычисляет требуемую величину и оценивает допущенную при этом ошибку. Процедура должна возвращать 2 значения: result и error. Важно дать рекомендации по выбору параметров, в том числе связанные с форматом представления чисел. Важно дать обзор русских и английских терминов, чтобы было понятно, под какими названиями искать численные процедуры в библиотеках и что означают их параметры.
+
Задание подразумевает знакомство пользователя с основными понятиями численных методов, такими как определитель и обратная матрица, и различными способами их вычислений. В данном теоретическом отчете простым и доступным языком сначала вводятся основные понятия и определения, на основании которых проводится дальнейшее исследование. Данная работа подразумевает, что пользователь может не иметь специальных знаний в области численных методов и линейной алгебры, но с легкостью сможет воспользоваться результатами работы. Для наглядности приведена программа вычисления определителя матрицы несколькими методами, написанная на языке программирования C++. Программа используется как лабораторный стенд для создания иллюстраций к отчету. А также проводится исследование методов для решения систем линейных алгебраических уравнений. Доказывается бесполезность вычисления обратной матрицы, поэтому в работе приводится более оптимальные способы решения уравнений не вычисляя ее. Рассказывается почему существует такое количество различных методов вычисления определителей и обратных матриц и разбираются их недостатки. Также рассматриваются погрешности при вычислении определителя и оценивается достигнутая точность. Помимо русских терминов в работе используются и их английские эквиваленты для понимания, под какими названиями искать численные процедуры в библиотеках и что означают их параметры.
-
 
+
-
В теме решение СЛАУ важно рассказать, зачем используют столько много разных методов. Оценить достижимую точность.
+
-
Программа используется как лабораторный стенд для создания иллюстраций к отчету. Именно наличие числовых результатов и графиков в отчете является основным подтверждением работоспособности программы. Основным языком программирования в ходе практикума является С++. При этом программа может просто давать числовые результаты, а построение графиков и диаграмм по результатам можно выполнять в других системах (например, Excel). Подразумевается, что написанным кодом потенциально способны будут воспользоваться другие студенты. Отсюда исходят требования по комментированию и документированию кода. Ориентировочно, студент может предполагать, что комментировать и документировать код надо так, чтобы остались довольны третьекурсники.
+
-
 
+
-
При программировании разрешается пользоваться сторонними библиотеками. Но те части, которые относятся к самой сути задания, должны быть реализованы студентом самостоятельно и присутствовать в исходном коде. Сдаваемый исходный код должен компилироваться на удовлетворяющем международному стандарту компиляторе С++ (или С). Следовательно, особенно при использовании сторонних библиотек, требуется четко сообщить, что надо сделать для компиляции и запуска программы.
+
-
Ограничений на операционную систему не накладывается. Скорее наоборот, желательно, чтобы код был независим от платформы.
+
== Алгоритм решения ==
== Алгоритм решения ==

Версия 15:49, 20 октября 2008

Название статьи необходимо изменить. Текст статьи нуждается в существенной переработке (см. Обсуждение).--Strijov 12:53, 20 октября 2008 (MSD)


Содержание

Постановка задачи

Задание подразумевает знакомство пользователя с основными понятиями численных методов, такими как определитель и обратная матрица, и различными способами их вычислений. В данном теоретическом отчете простым и доступным языком сначала вводятся основные понятия и определения, на основании которых проводится дальнейшее исследование. Данная работа подразумевает, что пользователь может не иметь специальных знаний в области численных методов и линейной алгебры, но с легкостью сможет воспользоваться результатами работы. Для наглядности приведена программа вычисления определителя матрицы несколькими методами, написанная на языке программирования C++. Программа используется как лабораторный стенд для создания иллюстраций к отчету. А также проводится исследование методов для решения систем линейных алгебраических уравнений. Доказывается бесполезность вычисления обратной матрицы, поэтому в работе приводится более оптимальные способы решения уравнений не вычисляя ее. Рассказывается почему существует такое количество различных методов вычисления определителей и обратных матриц и разбираются их недостатки. Также рассматриваются погрешности при вычислении определителя и оценивается достигнутая точность. Помимо русских терминов в работе используются и их английские эквиваленты для понимания, под какими названиями искать численные процедуры в библиотеках и что означают их параметры.

Алгоритм решения

Основная идея решения: для наиболее полного раскрытия темы исследования вычисления обратной матрицы и определителя написан теоретический отчет, в котором простым и доступным языком сначала вводятся основные понятия и определения, на основании которых проводится дальнейшее исследование. Данная работа подразумевает, что пользователь может не иметь специальных знаний в области численных методов и линейной алгебры, но с легкостью сможет воспользоваться результатами работы. Для наглядности приведена программа вычисления определителя матрицы несколькими методами, написанная на языке программирования C++. А также проводится исследование методов для решения систем линейных алгебраических уравнений. Доказывается бесполезность вычисления обратной матрицы, поэтому в работе приводится более оптимальные способы решения уравнений не вычисляя ее.


Определитель

Введем определение определителя квадратной матрицы любого порядка. Это определение будет рекуррентным, то есть чтобы установить, что такое определитель матрицы порядка  n , нужно уже знать, что такое определитель матрицы порядка n - 1. Отметим также, что определитель существует только у квадратных матриц.

Определитель квадратной матрицы  A будем обозначать  |A| или det  A .


Определение 1. Определителем квадратной матрицы Изображение:1.png‎ второго порядка называется число Изображение:2.png‎.

Определителем Изображение:3.png‎ квадратной матрицы порядка  n ,  n \geq 3 , называется число Изображение:4.png‎

где  M_k - определитель матрицы порядка  n - 1 , полученной из матрицы  A вычеркиванием первой строки и столбца с номером  k .

Для наглядности запишем, как можно вычислить определитель матрицы четвертого порядка: Изображение:5.png‎

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

Замечание. В определении 1 было бы точнее сказать, что определитель есть функция, определенная на множестве квадратных матриц порядка и принимающая значения в множестве чисел.

Замечание. В литературе вместо термина "определитель" используется также термин "детерминант", имеющий тот же самый смысл. От слова "детерминант" и появилось обозначение det  A .

Рассмотрим некоторые свойства определителей, которые сформулируем в виде утверждений.


Обратная матрица

Вычисление определителя и обратной матрицы с помощью метода Гаусса

Прагматика

Классификация методов

Обращение матрицы методом Гаусса

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

Примеры работы алгоритма

Руководство пользователя

Руководство программиста

Литература

  1. http://e-lib.gasu.ru/eposobia/metody/
  2. http://www.exponenta.ru/educat/systemat/slivina/lection/lection2/lection2.asp
  3. http://elib.ispu.ru/library/math/sem1/index.html
  4. Киселёв В.Ю., Пяртли А.С., Калугина Т.Ф. Высшая математика.
  5. Боглаев Ю.П. Вычислительная математика и программирование. - М., Высшая школа, 1990, 544с.


См. также

Личные инструменты