Проблема настройки матрицы с симпой - PullRequest
0 голосов
/ 03 июня 2018

Я хотел бы сделать несколько символических мате с некоторыми матрицами.Но мой код не работает.Установка моих первых матриц не проблема, но вычисление требуемой из стартовых матриц не работает, и я не знаю почему.Любые предложения?

from sympy import *
from sympy import Matrix , pprint, symbols



niso=4

MM = Matrix(niso-1,1, lambda i,j:var('MM_%s' % (i+1) ))
MA = Matrix (niso-1,1, lambda i,j:var('m_%s%s' % ('A', chr(66+i)) ) )
MX = Matrix (niso-1,1, lambda i,j:var('m_%s%s'% (chr(66+i), 'A')))
Rb = Matrix(niso-1,1, lambda i,j:var('Rb_%s%d' % ( chr(65)+chr(66+i)+',', i+2)))
R = Matrix (niso, niso-1, lambda i,j: var('R_%s%d' % (chr(65+i)+',' , j+1 )))



A = Matrix(niso-1,niso-1, lambda i,j:var('A_%d' % i))

for i in range(0,niso-1):
        for j in range(0,niso-1):
            A[i,j]=Rb[i,0]*MM[i,0] + MM[i,0]

Мой код приводит только к этому сообщению об ошибке.

TypeError: Невозможно умножить последовательность на нецелое число типа ''

Проблема в том, что я думал, что мои матрицы уже содержат только символы, так что умножение должно работать.

1 Ответ

0 голосов
/ 06 июня 2018

Я решил myselfe!Конструктор Rb действительно был проблемой!Поменять его на

R = Matrix (niso, niso-1, lambda i,j: var('R_%s%d' % (chr(65+i) , j+2 )))

помогло!

...