符号微分然后获得数值

Differentiating symbolically then obtaining a numerical value

syms x
syms y

f = 2*x^2 + y
z = diff(f,x)

x = 3
SolvedDiffEq = z

显然 z = 4x。但是我该如何解决才能得到 12 的数字答案呢?我玩过 vpa、double、subs 但无法弄清楚。

这是一个简单的例子。我的实际代码具有非常复杂的方程式,其中包含许多变量。此外,我正在尝试迭代求解这些方程式,因此手动替换每个变量是不切实际的。

您正在寻找 symbolic substitution 命令,即 subs。在您的示例中,subs(z) returns 12.