![]() |
|
![]() ![]() ![]() |
|
TeeT |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 9.12.2005 Где: Нальчик Репутация: нет Всего: нет |
подскажите пожалста оптимальный алгоритм нахождения обратной матрицы
|
|||
|
||||
popovda |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 290 Регистрация: 9.6.2006 Где: Москва Репутация: 1 Всего: 6 |
Для каких размеров? Для любых?
-------------------- С уважением, Попов Д.А. |
|||
|
||||
esperant0 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 714 Регистрация: 20.5.2005 Репутация: 4 Всего: 14 |
оптимальный по каким параметрам? без этого уточнения ваш вопрос бессмыслен. -------------------- Student->Teacher Assistant ->Research assistant->Microsoft Software Development Engineer Пользователь получил наказание за то, что проигнорировал замечание которое было написано модератором а затем стерто и которое он - пользователь не мог видеть. |
|||
|
||||
popovda |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 290 Регистрация: 9.6.2006 Где: Москва Репутация: 1 Всего: 6 |
Если это идет как лабораторная работа или матрица небольшая, то можно воспользоваться модификацией метода Гаусса, например методом Ершова:
В нем для A[nxn] строится последовательность матриц A^(0),A^(1),A^(2)...,A^(n). Здесь верхний индекс после ^, нижний - _, как в TeX'е. Где A^(0) = A - E, a[i,j]^(m)' = a) a[i,j]^(m-1), если i != m, = б) 1, если i = m и i = j = в) 0, если i = m и i != j a[i,j]^(m) = a[i,j]^(m)' - (a[i,m]^(m)' * a[m,j]^(m-1)) / ( 1 + a[m,m]^(m-1)); i,j,m = 1,2,...,n Штрихованные матрицы являются вспомогательными, а результат A^(n) == A^(-1). Можете посмотреть метод Фадеева. Если же задача серьезная, то надо использовать иные методы,весьма эффективные, например через LU-разложение или метод Холецкого. Методичка по LU Или здесь, правда тут только Fortran 77 и C с него транслированный НИВЦ МГУ - Обращение матриц. А если Вам не критично самому писать метод, воспользуйтесь библиотеками IMSL или LAPACK. Там алгоритмы очень эффективны. Кроме того в инете можно скачать в djvu трехтомник Бартеньева "ФОРТРАН для профессионалов. Математическая библиотека IMSL". Рекомендую. Советую Уилкинсон, Раш - Алгоритмы линейной алгебры (- там на Алголе (считай Паскаль) ). Это сообщение отредактировал(а) popovda - 18.6.2006, 21:07 -------------------- С уважением, Попов Д.А. |
|||
|
||||
podval |
|
|||
![]() Где я? Кто я? ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3094 Регистрация: 25.3.2002 Где: СПб Репутация: 18 Всего: 62 |
||||
|
||||
maxim1000 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
насколько я понял, вопрос не в реализации метода Гаусса, а в сравнении различных методов по какому-то критерию (кстати, ещё не указанному ![]() -------------------- qqq |
|||
|
||||
TeeT |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 9.12.2005 Где: Нальчик Репутация: нет Всего: нет |
esperant0,
по скорости, матрицы большие порядка 10000х10000 Добавлено @ 13:43 podval,
Пасибо Добавлено @ 13:48 popovda,
ThanX |
||||||
|
|||||||
maxim1000 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
ну ещё посмотреть на саму матрицу
возможно, для данной задачи она будет иметь какие-нибудь свойства, которые помогут ускорить обращение например, тридиагональная матрица или разбиваемая на несколько квадратных меньшей размерности... -------------------- qqq |
|||
|
||||
maxim1000 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
-------------------- qqq |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |