0 / 0 / 0
Регистрация: 13.11.2017
Сообщений: 1

Найти детерминант матриц не используя (np.linalg)

01.12.2017, 16:03. Показов 21009. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подумал тут, можно ли найти детерминант матриц не используя (np.linalg), может знает кто, или сталкивался когда-нибудь?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.12.2017, 16:03
Ответы с готовыми решениями:

Найти детерминант квадратной матрицы без numpy.linalg.det
также нельзя использовать никакие функции связаные из numpy. я попытался сделать это таким способом.. но это долго и некрасиво.. идей...

Нужно найти детерминант используя numpy
Найти детерминант используя numpy но не используя np. linalg. det

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

8
 Аватар для Zuzik
298 / 256 / 57
Регистрация: 11.06.2012
Сообщений: 1,557
02.12.2017, 19:49
Можно. Есть стандартные формулы, которые реализуются через рекурсию, если мне не изменяет память. Насчет не рекурсивного варианта - не помню.
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
06.12.2017, 02:12
Можно начать с правильного раздела
0
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
06.12.2017, 18:27
Можно, надо курить учебник по численным методам (они же вычислительные методы, она же вычислительная математика).
Я сейчас уже не помню как именно, но точно помню, что там есть метод проще по сравнению с вычислением "в лоб", как полагается по линейной алгебре. Сам реализовывал.
0
 Аватар для regio1961
601 / 293 / 178
Регистрация: 06.06.2016
Сообщений: 552
07.12.2017, 14:42
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import copy
 
def print_matrix( A ):
    for strA in A:
        print( strA )
        
def minor( A, i, j ):
    M = copy.deepcopy(A)  # копирование!
    del M[ i ]
    for i in range( len( A[0] ) - 1 ):
        del M[ i ] [ j ]
    return M   
    
def det( A ):
    m = len( A )
    n = len( A[0] )
    if m != n:
        return None
    if n == 1:
        return A[0][0]
    signum = 1
    determinant = 0
    # разложение по первой строке
    for j in range( n ):
        determinant += A[0][j]*signum*det( minor( A, 0, j ) ) 
        signum *= -1
    return determinant                           
      
A = [[ 2, 1, 0 ],
     [ 1, 5, 0  ],
     [ 0, 3, 4  ] ]      
               
print_matrix( A )  
print( "\n" )
print( det( A ) )
0
 Аватар для Zuzik
298 / 256 / 57
Регистрация: 11.06.2012
Сообщений: 1,557
07.12.2017, 15:04
regio1961, разве такой вариант для длины больше 3 будет работать?
0
 Аватар для regio1961
601 / 293 / 178
Регистрация: 06.06.2016
Сообщений: 552
07.12.2017, 15:06
Цитата Сообщение от Zuzik Посмотреть сообщение
regio1961, разве такой вариант для длины больше 3 будет работать?
А в чем проблема?
0
Эксперт Python
 Аватар для dondublon
4652 / 2072 / 366
Регистрация: 17.03.2012
Сообщений: 10,182
Записей в блоге: 6
07.12.2017, 16:18
Нашёл. Классика.
Демидович, Марон. Основы вычислительной математики. 1966.
Глава VII, параграф 15. С богом.
0
 Аватар для Zuzik
298 / 256 / 57
Регистрация: 11.06.2012
Сообщений: 1,557
07.12.2017, 20:54
Цитата Сообщение от regio1961 Посмотреть сообщение
А в чем проблема?
Виноват, все ок. Не внимательно прочитал код.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.12.2017, 20:54
Помогаю со студенческими работами здесь

Вычислить детерминант используя рекурсию
Нужно вычислить определитель(детерминант) матрицы размером n методом разложения по строке или столбцу, в моем случае по первой строке....

Найти детерминант матрицы
#include <iostream> #include <fstream> #include <sstream> #include <vector> #include <string> using namespace...

Используя процедуру умножения матриц, найти степени квадратной матрицы A^2,A^3...A^n
Помогите пожалуйста написать программу! Используя процедуру умножения матриц ,найти степени квадратной матрицы A^2,A^3...A^n,где ...

Найти суммы элементов матриц 5х5 и 3х4, используя подпрограммы
С помощью подпрограммы, находящей сумму элементов вектора, найти суммы элементов матриц 5х5 и 3х4.

Используя функции пользователя, найти min и мах элементы матриц
используя функции пользователя написать программу для нахождения min и мах элементов массивов А (Na * Ma), B (Nb * Mb), C (Nc * Mc).


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru