Python 如何显式写出符号函数的导数?

Python 如何显式写出符号函数的导数?,python,symbolic-math,sage,differentiation,Python,Symbolic Math,Sage,Differentiation,我有 我感兴趣的是,当一些标量a的幂是微分算子的特征值时会发生什么(即D^n u=a^n*u)。对于n=1,2基本函数示例存在(De^(a*x)=a*e^(a*x),sin和cos对于a=i和n=2),但对于更高的幂,我需要抽象 我的问题是,如何将导数符号化地分配给u?一个选项是编写一个函数,它可以正常区分所有内容,但将u发送到a*u,但如果我只想D^3u=a^3*u,该怎么办 换句话说,如果我想让u的每一个导数都是“u的导数”(D[…](u)(x)),除了第三个,对于一些标量a,我想是a^3*

我有

我感兴趣的是,当一些标量
a
的幂是微分算子的特征值时会发生什么(即
D^n u=a^n*u
)。对于
n=1,2
基本函数示例存在(
De^(a*x)=a*e^(a*x)
sin
cos
对于
a=i
n=2
),但对于更高的幂,我需要抽象

我的问题是,如何将导数符号化地分配给
u
?一个选项是编写一个函数,它可以正常区分所有内容,但将
u
发送到
a*u
,但如果我只想
D^3u=a^3*u
,该怎么办


换句话说,如果我想让
u
的每一个导数都是“u的导数”(
D[…](u)(x)
),除了第三个,对于一些标量
a
,我想是
a^3*u
)。我如何实现这一点?

您在第二段中提出的解决方案有什么问题?EG在Maxima中

u = function('u',x)
给你想要的,不是吗

Maxima允许你用
gradef
符号化地分配一阶导数,但我不知道有什么方法可以这样分配高阶导数

D[n](u, x) := if n=3 then a^3*u(x) else diff(u(x),x,n)$