给定一个为数值编写的现有函数,Sympy是否有建议的方法来扩展它处理符号?例如:
import numpy as np
def foo(ax, ay, az):
A = np.matrix([[1. , ax, 0],
[0 , 1./ay, 0],
[0 , 0, np.cos(az)]])
return A
foo(1, 2, 3)
# We want this to work too:
import sympy as spy
ax, ay, az = spy.symbols(('ax', 'ay', 'az'))
foo(ax, ay, az)
如何扩展 foo()
以处理交感符号 ax, ay, az
并因此返回符号矩阵 A
?是否有任何公用事业可以帮助解决这个问题?
1 回答
遗憾的是,你无法处理numpy函数中的sympy符号 . 一个肮脏的解决方案是检查变量的类型并决定使用哪个函数 .