0
내가 SymPy에서 다항식을 만들고 싶어
같은 매트릭스 SymPy의 기능을 평가하지만, 이상적으로 나는 가능한 한 일반적으로 내 코드를 작성하려면 :입력
이from sympy import *
sx, sa0, sa1, sa2 = symbols('x sa0 sa1 sa2')
sa = MatrixSymbol('a',3,1)
polynomial = sum([sa[i,0]*sx**i/factorial(i) for i in range(sa.shape[0])])
다음 식을 다항식을 명시 적으로 제공하지만, 이 표현 sa0
, sa1
에서
poly2 = sx**2*sa2/2 + sx*sa1 + sa0
,
sa2
이
sa[0,0]
,
sa[1,0]
및
sa[2,0]
각각 대체 : 나는 싶습니다 같은 코드는 일반적으로하지 않습니다.
내 문제는 내가 poly2
하지만 '다항식'평가할 수 있다는 것입니다 :
>>> print(poly2.evalf(subs={sx: 10, sa0: 1, sa1: 1, sa2: 1}))
>>> 61.0000000000000
>>> print(polynomial.evalf(subs={sx: 10, sa[0,0]: 1, sa[1,0]: 1, sa[2,0]: 1}))
>>> 0.5*x**2*a[2, 0] + x*a[1, 0] + a[0, 0]
>>> print(polynomial.evalf(subs={sx: 10, sa: [[1, 1, 1]]}))
>>> 0.5*x**2*a[2, 0] + x*a[1, 0] + a[0, 0]
어떻게 기능에 MatrixSymbol 객체 sa
의 값을 삽입 할 수 있습니까?