Форум сайта python.su
Здравствуйте.
Возникла задача, связанная с полями Галуа. Решил заодно язык новый освоить.
Определил новый класс и перегрузил в нем операции сложения/умножения/и т.д.
Создал матрицу из объектов нового типа для проверки:
import numpy as np import gfpy as gf import random as rnd a=[[gf.GF(rnd.randint(0,7)) for v in range(sz)] for i in range(sz)] b=[[gf.GF(rnd.randint(0,7)) for v in range(sz)] for i in range(sz)] c=[gf.GF(rnd.randint(0,7)) for v in range(sz)] a=np.matrix(a,dtype=gf.GF) b=np.matrix(b,dtype=gf.GF) a+b c*a
np.linalg.inv(a)
Отредактировано Sadko (Ноя. 15, 2018 11:43:43)
Офлайн
-
Отредактировано Sadko (Ноя. 15, 2018 12:58:44)
Офлайн
Попробовал scipy.linalg inv() - пишет “ValueError: object arrays are not supported”.
Нужна простая, прямолинейная, неоптимизированная реализация инверсии матрицы, пусть медленная. Поиск приводит к numpy и scipy. Может, посоветуете где искать?
Отредактировано Sadko (Ноя. 15, 2018 12:56:29)
Офлайн
В общем нашел -
https://stackoverflow.com/questions/32114054/matrix-inversion-without-numpy
Отредактировано Sadko (Ноя. 15, 2018 13:05:29)
Офлайн