为什么 Mathematica 会为导数生成看似错误的答案?

Why is Mathematica producing a seemingly wrong answer for a derivative?

我对让 Mathematica 为我做的偏导数错误感到困惑。

具体来说,这是我拥有的: Derivative I'd like to take

我正在尝试对以下 w.r.t 求偏导数。变量 θ(对格式表示歉意):

f=(1/4)(-4e((1+θ)/2)ψ+eN((1+θ)/2)ψ+eN((1+θ)/2-θd) ψ)-s

但是 Mathematica 生成的解似乎与我自己求导时得到的解非常不同。而 Mathematica 说的是 f w.r.t 的偏导数。 θ 为:

(1/4)eψ(N-2)

我亲手得到并且非常有信心正确答案是:

(1/4)eψ(N(1-d)-2)

也就是说,Mathematica 正在生成一些东西,在微分时会丢弃变量 d。我已经探索了在 Mathematica 中采用导数的不同函数,并且可能我正在使用的某些变量(例如 d)可能受到保护或以其他方式特殊,但我不能说我知道答案的原因所以关闭。这是 d 第一次在笔记本中出现,所以它没有设置为 0。对于上下文,我试图确认函数的导数对于特定范围内的变量值是正的,并且我们有 d >0 且 d<(1/2)。手动完成所有这些工作,但我正在尝试与 Mathematica 确认,因为我将处理更复杂的函数,并且需要确保我让 Mathematica 产生正确的导数。

你没有在 eNθd 中添加空格,因此它认为它们是其他一些 2 字符变量。

在它们之间添加空格会得到您预期的结果:

f[θ,e,N,ψ,d,s] = (1/4) (-4 e ((1+θ)/2) ψ + e N ((1+θ)/2) ψ + e N ((1+θ)/2 - θ d) ψ) - s;
D[f[θ, e, N, ψ, d, s], θ] // FullSimplify
(* 1/4 e (-2 + N - d N) ψ *)