import numpy as np
import sympy as sym
from numpy import sin
from sympy import symbols, diff
func = lambda x: sin(x)
x = symbols('x')
print diff(func(x),x)
Это работает, если я заменяю свою функцию полиномом или помещаю функцию триггера непосредственно в оператор diff. Но в этом формате я получаю AttributeError: sin.
В принципе, я думаю, что python не может распознать func как просто триггерную функцию, которую он знает, как символически интегрировать. У меня может быть просто sympy import sin, и тогда все будет работать, но тогда я застрял с func, ссылающимся на sin в пространстве имен sympy, и есть будущие вещи, которые я хочу делать с func, которые требуют, чтобы он был определен с использованием sin в пространстве имен numpy .
np.sin
не приметsympy.core.symbol.Symbol
, и я сомневаюсь, что есть какие-то разумные способы сделать это так. Почему вы пытаетесь это сделать? - person M4rtini   schedule 17.02.2014