D

D[f,x]

给出偏导数 .

D[f,{x,n}]

给出高阶导数 .

D[f,x,y,]

给出偏导数 .

D[f,{x,n},{y,m},]

给出高阶偏导数 .

D[f,{{x1,x2,}}]

给出标量 f 的向量导数 .

D[f,{array}]

给出数组导数.

更多信息和选项

  • D 也被称作一元函数的导数.
  • 通过 pd\[PartialD] 输入字符 以及下标,导数的输入方式如下:
  • D[f,x]xf
    D[f,{x,n}]{x,n}f
    D[f,x,y]x,yf
    D[f,{{x,y}}]{{x,y}}f
  • 通过使用字符 \[InvisibleComma],,可以使逗号不可见.
  • 偏导数 D[f[x],x] 可以用 定义,高阶导数 D[f[x,y],x,y] 可以用 等递归地定义.
  • 导数的阶数 nm 可以是符号,并被认为是正整数.
  • 符号 f 的导数 D[f[x],{x,n}] 表示为 Derivative[n][f][x].
  • 对于有些函数 fDerivative[n][f][x] 可能是未知的,但可以通过应用 N 逼近. »
  • 新的导数规则可以通过对 Derivative[n][f][x] 添加值来添加. »
  • 对于列表,D[{f1,f2,},x] 等价于递归式地进行 {D[f1,x],D[f2,x],}. »
  • D[f,{array}] 实际上会将 D 逐项作用于 array 的每个元素.
  • D[f,{array,n}] 等价于 D[f,{array},{array},],其中 {array} 被重复 n 次.
  • D[f,{array1},{array2},] 通常等价于 First[Outer[D,{f},array1,array2,]]. »
  • 常见的数组导数包括:
  • D[f,{{x1,x2,}}]梯度{D[f,x1],D[f,x2],}
    D[f,{{x1,x2,},2}]海森{{D[f,x1,x1],D[f,x1,x2],},{D[f,x2,x1],D[f,x2,x2],},}
    D[{f1,f2,},{{x1,x2,}}]雅可比{{D[f1,x1],D[f1,x2],},
    {D[f2,x1],D[f2,x2],},}
  • 如果 f 为标量且 x={x1,},则在 x0={x01,} 处的多元泰勒级数可以表示为:
  • 其中 fi=D[f,{x,i}]/.{x1x01,} 是一个张量秩为 的数组. »
  • 如果 fx 均为数组,则 D[f,{x}] 实际上会先逐项作用于 f 的各个元素,然后再逐项作用于 x 的各个元素. 结果是维数为 Join[Dimensions[f],Dimensions[x]] 的数组. »
  • VectorSymbolMatrixSymbolArraySymbol 可用于表示变量或函数值是向量、矩阵或数组.
  • D 可以正式地对积分和求和之类的算符进行求导,考虑到作用域受限的变量以及特殊算符的结构.
  • 算符导数的范例包括:
  • 不受积分限制
    受限于积分
    不受积分变换限制
    受限于积分变换
  • 认为所有不显式依赖已知变量的表达式具有零偏导.
  • 设置 NonConstants{u1,} 指定 ui 依赖于所有变量 xy 等,并且不具有零偏导数. »

范例

打开所有单元关闭所有单元

基本范例  (7)

关于 x 的导数:

关于 x 的四阶导数:

关于 xn 阶导数:

关于 xy 的导数:

包含符号函数 f 的导数:

数值法计算导数:

pd 输入 ,用 输入下标:

范围  (89)

基本用法  (12)

表达式关于 x 的导数:

二阶导数:

表达式在某点的导数:

函数在一般点 x 的导数:

这也可以使用流数符号得到:

在点 x==5 的导数:

这可以更轻松地使用流数符号得到:

在点 x==-1 的三阶导数:

关于符号函数的导数:

表达式关于 xy 的偏导数:

混合偏导数

混合偏导数

关于复合表达式的导数:

关于不同复合表达式的导数:

向量表达式的导数:

矩阵表达式:

嵌套列表的导数:

表达式的向量导数,也称作梯度:

二阶向量导数,也称作海森矩阵:

矩阵导数:

创建基本导数的表格:

符号函数  (9)

符号式函数的导数:

f 代入纯函数得到特定结果:

和的导数:

积:

商:

复合函数链式法则:

三个函数的乘积规则:

使用 Inactive 导数表明规则:

符号函数的偏导数:

f 代入具有两个变量的纯函数:

纯函数关于无自变量参数的导数:

得到的函数给出 在点 x 关于 a 的导数:

局部变量与导数变量无关:

符号函数在一个点的导数:

使用撇号,结果相同:

反函数的导数:

n 阶导数的乘积规则:

链式规则:

初级函数  (6)

多项式和有理函数:

代数函数:

三角函数和反三角函数:

指数和对数函数:

双曲函数:

创建一个函数,为表达式列表制作一个格式美观的导数表格:

创建一个三阶导数表格:

创建一个双曲导数表格:

特殊函数  (8)

Gamma 的对数导数是 PolyGamma 函数:

艾里函数的导数以 AiryAiPrimeAiryBiPrime 的形式给出:

Zeta 的导数在原点处具有解析形式表达式:

具有初等导数的特殊函数:

导数以相同形式的函数表示的特殊函数:

JacobiSN 的导数:

JacobiCD 的导数:

LogIntegral 的导数:

ExpIntegralEi 的导数:

SinIntegraln 阶导数:

创建一个特殊函数的导数表格:

分段函数和广义函数  (8)

分段函数的导数:

ConditionalExpression 的导数:

将符号函数转换为实数区间上的分段函数,并对其求导:

计算有限域上的分段导数:

点态定义工程函数的经典导数:

广义函数的分布式导数:

RealAbs 的导数:

RealSign

它们的相应部分在复平面上不可微分:

Floor 的导数:

Ceiling

程序式定义的函数导数:

隐式定义函数  (3)

D 逐项作用于 Equal 以计算隐函数的导数:

计算双变量隐函数的偏导数:

由方程组定义的隐式函数的偏导数:

矢量值函数  (5)

列表的导数:

二阶导数:

向量值函数在广义值 t 处的一阶导数:

使用撇号进行相同的计算:

t==0 处的三阶导数:

使用撇号进行相同的计算:

矩阵的导数:

四阶导数:

存储为 SparseArray 的向量值函数的导数:

将结果转换为普通数组:

SymmetrizedArray 对象表示矩阵的导数:

将结果转换为普通数组:

向量参数函数  (6)

标量函数的梯度:

海森矩阵:

矢量值函数的雅可比行列式:

二阶导数张量:

计算行列式关于原始矩阵的导数:

存储为 SparseArray 的向量值函数的梯度:

结果也是一个 SparseArray,仅含有非零项:

将结果转换为普通矩阵:

作为 SparseArray 计算的海森行列式:

梯度也可以作为 SparseArray 计算,但在此例中它实际上是稠密的:

SparseArray 计算雅可比行列式:

符号数组参数和函数  (8)

符号向量值函数关于标量参数的导数:

符号矩阵-值函数关于标量参数的导数:

符号数组-值函数关于标量参数的导数:

标量-值函数关于符号向量参数的导数:

实数符号矢量参数:

标量值函数关于符号矩阵参数的导数:

实数符号矩阵参数:

标量值函数关于符号数组参数的导数:

符号数组-值函数关于符号数组参数的导数:

符号数组复合函数的导数:

积分和积分变换  (6)

对未计算的积分求导:

傅立叶变换:

拉普拉斯变换:

卷积:

对积分的 Inactive 形式求导,得到积分的基本定理:

基本定理的更为广义的形式:

对未激活的 FourierTransform 求导:

验证正式结果:

求和和与求和变换  (4)

对未计算的和式求导:

对虚拟变量求导得到零:

离散卷积:

对和式的 Inactive 形式求导:

ZTransform

对未激活的 GeneratingFunction 求导:

验证正式结果:

索引微分  (9)

对带有下标的变量微分,引入 KroneckerDelta 因子:

使用 Inactive 防止和式的展开:

必要时和式的指标将被重新命名,以避免名称的混淆:

对未激活的表格关于带下标的变量进行微分:

激活结果得到显式的向量结果:

对未激活的表格关于带下标的变量进行两次微分:

在这种情况下,只有第 j 个项非零:

在和式和表格中将任意符号用作变量的下标:

对下标变量的符号式表格进行微分:

激活结果,给出显式的梯度:

对下标变量的符号式表格进行两次微分,引入一个虚拟指标:

用显式值代替符号式变量:

使用另一个符号向量的符号向量微分:

向量关于自身进行向量微分得到单位矩阵:

导数定义的函数  (5)

定义带有撇号的导数:

用这个规则运算导数:

定义在某点处的导数:

定义二阶导数:

规定 fg 的值和导数:

求该组合在 x=3 的导数:

Derivative 定义偏导数:

选项  (1)

NonConstants  (1)

y 作为 x 的变量进行微分:

求解 y 的导数以实现隐式微分:

应用  (47)

导数的几何表示  (5)

导数给出在某点处的切线斜率:

对于从基点 π 的小位移 h,切线给出对 f 很好的近似:

在很小且只在很小的绘图区域上,切线和 f 在视觉上无法区分彼此:

导数给出连接 {x,f[x]}{x+h,f[x+h]} 的割线斜率极限:

可视化点 {1,f[1]} 的过程:

求函数的切线方程:

x=a 处的一般切线方程:

x=4 处的切线:

求函数的法线方程:

x=a 处的一般法线方程:

x=1 处的法线:

求通过某点的函数切线方程:

x=a 处的一般切线方程:

f[x] 通过 (0,-4) 的切线:

函数特征  (5)

求平面曲线的拐点:

求函数的临界点:

根据二阶导数检测,这些是极大值或极小值:

可视化临界点:

求区间上满足中值定理的所有 c 值:

定义从 ab 的割线:

定义与 c 的两个值关联的切线:

可视化沿原函数与割线平行的两条切线:

使用一阶导数表征函数:

求函数的临界点:

求函数的递增区域:

求函数的递减区域:

可视化结果:

使用二阶导数表征函数:

求函数的拐点:

求函数的正凹区域:

求函数的负凹区域:

可视化结果:

积分关系  (2)

t=x^2 改变积分中的变量:

验证符号积分的结果:

多变量和向量微积分  (6)

求双变量的函数的临界点:

计算 和二阶偏导数的行列式的正负号:

根据二阶导数检测,头两个点(在图形中用红色和蓝色表示)为极小值点,第三个点(绿色)为鞍点:

求圆形螺旋的曲率,其半径为 r,螺距为 c

使用 ArcCurvature 得到相同结果:

手动计算一元泰勒级数:

手动计算多元泰勒级数:

编写一个函数来自动执行此过程:

使用新函数重新进行上述计算:

梯度向量可以通过求函数的偏导数计算:

求函数 的梯度向量:

使用单位向量表示可视化梯度向量的方向:

平面上向量场的旋度可以通过减去其分量的导数计算:

求向量场 的旋度:

可视化向量场在一个点作为净旋转的二维旋度,红色和绿色分别表示顺时针和逆时针旋度,半径与旋转幅度成正比:

向量场的散度可以通过分量导数的加和计算:

求二维向量场的散度:

可视化向量场在一个点作为净的二维散度,分别用红色和绿色表示流出和流入,半径与流量大小成正比:

微分方程  (6)

构建满足隐函数 y[x] 的微分方程:

使用 D 指定普通和偏微分方程:

这些可以通过 DSolve 求解:

定义两个空间变量的波动方程:

定义函数及第一次导数的初始值:

指定边界条件:

使用 DSolve 求解:

Inactive 和式中提取几个项:

二维波在垂直方向进行周期运动:

使用 D 指定拉普拉斯算子:

指定齐次狄利克雷边界条件:

求算子在单位圆盘上的4个最小的特征值和特征函数:

可视化特征函数:

使用 D 指定积分微分方程:

得到通解:

指定初始条件,得到特解:

a 取不同值时解的图形:

求微分方程的二次多项式解:

变化率  (5)

抛物体在 t 时刻的高度由下式给出:

计算在 t 时刻的速度:

计算在 t 时刻的加速度:

求抛物体何时到达最高点:

求抛物体的最高点:

作为时间函数的圆面积由下式给出:

计算面积的变化率:

求半径为 10 m 的面积的变化速率,如果半径的递增速率为 5m/s

粒子位置由下式给出:

计算粒子的速度、加速度、加加速度、突弹跳变(snap)、裂变(crackle)和变形(pop):

两个电阻并联的电路总电阻由下式给出:

已知 R1R2,计算 RT

求总电阻的变化速率:

计算给定值的总电阻的变化速率:

边长为 l 的立方体体积由下式给出:

立方体的表面积由下式给出:

使用链式法则计算立方体体积相对于表面积的变化速率:

用面积的形式求解 l,并代入结果:

隐函数  (3)

求隐函数在 (1,) 处的切线方程:

计算在 x=1 处的斜率:

x=1 处的切线:

可视化切线:

求隐函数斜率等于 时点的位置:

函数之间的关系由下式给出:

z[t] 的导数:

用给定值计算 z'[t]

优化  (3)

矩形篱笆总长 2000 英尺,其中一条边与谷仓毗邻,求该篱笆的最大面积:

计算面积,用宽度表示:

求最大值:

根据二阶导数检测,该值为真实最大值:

另外,也可以用长度表示面积:

可视化长度变化时面积的变化:

求曲线上到一点 (1,5) 的最短距离:

计算距离,用 y 表示:

求最小值点:

根据二阶导数检测,这是最小值:

可视化距离随位置的变化:

用最少的材料制作一个可以容纳2升水的无盖圆柱体,求圆柱体的尺寸:

利用体积约束条件计算高度,用半径表示:

计算表面积,用半径表示:

对应于最小表面积的半径:

根据二阶导数检验,这是最小值:

计算最小配置下的半径、高度和表面积:

可视化尺寸随半径的变化:

洛必达法则  (3)

求两个函数的比值在 x0 时的极限:

直接求解极限会导致类型为 的未定式:

可以使用洛比达法则,因为在 附近的区间上, 均有定义,且 :

事实上, 是连续的,且 ,因此 显然可以得到:

使用 Limit 验证结果:

可视化这两个函数及其比值:

求两个函数的比值在 x 时的极限:

直接求解极限会导致类型为 的未定式:

可以使用洛比达法则,因为对于 均有定义,且有

然而,使用一阶导数也会导致未定式:

二阶导数为常数,明显满足洛比达法则的条件:

因此 显然可以得到:

使用 Limit 验证结果:

求在 x0 时两个函数之积的极限:

直接求解极限将导致类型为 0× 的未定式:

注意到 未定义:

然而, 存在,且对于所有 均为正,对于所有 也存在且为负:

由于 对全部实数 有明确定义,可以应用洛比达法则:

等式右边的比值给出极限易于计算的连续表达式:

符号数组微积分  (6)

近似扰动向量的方差:

零阶近似:

与精确值进行比较:

一阶近似:

与精确值进行比较:

二阶近似:

由于二阶导数不取决于 ,因此二阶近似值等于精确值:

近似扰动矩阵的行列式:

零阶近似:

与精确值进行比较:

一阶近似:

与精确值进行比较:

二阶近似:

与精确值进行比较:

针对以 配对列表形式给出的数据 ,推导出最小二乘法解:

求数据的垂直偏差向量

定义数据垂直偏差的平方和:

设立最小二乘方程:

生成一些数据:

求解这些数据的最小二乘法问题:

使用最大似然法求得最拟合给定数据的 GammaDistribution 参数:

最大化对数似然函数

计算 的梯度:

代替 ,求梯度的零点:

将结果可视化:

与使用 EstimatedDistribution 计算出的结果进行比较:

为预期收益率为 、标准差为 的投资组合优化问题找出最优条件:

当资产权重向量 满足 Total[x]=1 时,目标是最大化 . 该约束可以用来表示 ,其中无约束向量变量 的前 个坐标组成:

最大值出现在 的临界点:

表示条件:

计算方程 所代表的线性回归模型的对数似然函数的梯度,其中 为正态分布随机变量,均值为零,方差为

对数似然函数 由以下给出:

计算

表示结果:

计算

其他应用  (3)

计算幂级数的系数:

通过对 关于 处求导,推导 的解析形式:

现在首先计算 的积分,然后关于 处求导:

最终结果:

验证结果:

通过对 关于 处求导,推导 的解析形式:

计算 ,然后求导:

结果:

验证结果:

属性和关系  (23)

函数导数是作为极限被定义的:

DifferenceQuotientLimit 是导数 D

DIntegrate 的逆运算:

微积分基本定理:

Integrate 内部的微分:

D 返回以 Derivative 表示的正式结果:

D 关于已知变量对表达式求导:

Derivative 是一个算符,返回纯函数结果:

函数在某点的导数可能没有解析形式:

可以使用 N 获得导数的逼近值:

D[f,{array1},] 实际上等价于 First[Outer[D,{f},array1,]]

如果 fa 为数组,Dimensions[D[f,{a}]==Join[Dimensions[f],Dimensions[a]]

D[f,{{x1,x2,,xn}}] 实际上等价于 Grad[f,{x1,x2,,xn}]

Div[{f1,f2,,fn},{x1,x2,,xn}]f 的向量导数的迹:

更一般地,Div[f,x]f 的向量导数后两个维数的缩并:

Curl[f,x] 乘以 f 的向量导数的 HodgeDual,其中 rf 的秩:

对于标量 fLaplacian[f,{x1,x2,,xn}]f 的二阶向量导数的迹:

更一般地,Laplacian[f,x]f 的二阶向量导数后两个维数的缩并:

使用符号数组计算 Total[a] 关于 a 的导数:

与使用索引微分法得出的结果进行比较:

ArcCurvature 可以定义为 D 的形式:

涉及 D 的微分方程组可以通过 DSolve 求解:

使用 D 指定具有齐次狄利克雷边界条件的热方程:

此微分系统的特征系统可以通过 DEigensystem 得到:

特征值:

特征函数:

D 可以使用 DifferenceDelta 定义:

D 可以使用 DiscreteShift 定义:

右单侧导数可以用右侧极限计算:

左单侧导数可以用左侧极限计算:

注意此函数在 x==0 处不可微:

D 假定其他变量独立于微分变量:

Dt 假定其他变量可以取决于微分变量:

通过手动指定所有其它变量为常数,Dt 可以得到与 D 相同的结果:

使用 DSolve 计算隐函数的导数:

使用 ImplicitD 计算隐函数的导数:

可能存在的问题  (5)

可能不能立即以最简单的形式给出结果:

以不同形式给出的函数的导数可能相同:

D 返回的一般解可能不考虑不连续点、尖点或其他特殊点:

fg0 处均不可微:

f 不连续,g 有尖点:

如果函数可以展开为 Piecewise 表达式,D 可以提供更准确的结果:

D 的缓存值可能会错过底层定义的变化:

这个问题可以通过清除系统缓存解决:

不对微分变量进行处理,直接使用:

下面数学上与上式等价的式子的结果为 0,因为第一个参数中没有 Sin[x]

互动范例  (2)

求函数的正切线:

可视化正割,当 时对于不同的基点 收敛于切线:

巧妙范例  (2)

计算三维参数函数的正切向量和法向量:

创建 n 阶导数的表格:

Wolfram Research (1988),D,Wolfram 语言函数,https://reference.wolfram.com/language/ref/D.html (更新于 2024 年).

文本

Wolfram Research (1988),D,Wolfram 语言函数,https://reference.wolfram.com/language/ref/D.html (更新于 2024 年).

CMS

Wolfram 语言. 1988. "D." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2024. https://reference.wolfram.com/language/ref/D.html.

APA

Wolfram 语言. (1988). D. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/D.html 年

BibTeX

@misc{reference.wolfram_2024_d, author="Wolfram Research", title="{D}", year="2024", howpublished="\url{https://reference.wolfram.com/language/ref/D.html}", note=[Accessed: 18-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_d, organization={Wolfram Research}, title={D}, year={2024}, url={https://reference.wolfram.com/language/ref/D.html}, note=[Accessed: 18-November-2024 ]}