Перейти к содержанию
    

Hi ALL!

Помогите пожалуйста. Мне надо собрать на ПЛИС устройство, которое вычисляет определитель матрицы размерностью 6х6. И всё бы ничего, но формула определителя имеет 720 слагаемых в каждом из которых по 5 опреаций умножения (...-a1*b2*c3*d4*f5+...) :blink:

Так вот я решил разложить матрицу по минорам и алгеброическим дополнениям

так, чтобы получилось 120 (если не ошибаюсь) матриц 3х3 умноженных на алгеброические дополнения. Есть ли в Matlab'e такая функция, которая производит разложение матриц (в символьном виде) на миноры ну и соответственно алг.доп.?

P.S. Извиняюсь перед математиками, за неккоректное использование терминов :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...Так вот я решил разложить матрицу по минорам и алгеброическим дополнениям...

Можно попробовать использовать т.н. QR разложение. При этом исходная

матрица представляется в виде произведения матрицы Q(det(Q)=1), и

матрицы R, которая является верхней триугольной. Следовательно

определитель исходной матрицы будет равен произведению диагональных

элементов матрицы R.

 

Реализацию алгоритма на C и Pascal можно найти здесь

 

Удачи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Еще вариант - смотрите, как вычисляется определитель в Матлабе (набрав в командной сторке "doc det"). Метод Гаусса.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...