微积分

微分
D[f,x]
偏导数
D[f,x,y,]
多重导数
D[f,{x,n}]
n 阶导数
D[f,x,NonConstants->{v1,v2,}]
,将 vi 视为依赖于 x
偏微分运算.
以下给出
三阶导数:
可以对不含有明确数学运算任意表达式进行微分:
D 执行偏微分. 假定 yx 无关:
如果 y 依赖于 x,则可以使用显式函数形式 y[x]. 导数的表示描述了如何处理 y'[x] 这样的对象:
不用给出显式函数 y[x],也可以告诉 D y 隐式依赖于 x. D[y,x,NonConstants->{y}] 表示 y 隐式依赖于 x
D[f,{{x1,x2,}}]
标量函数 的梯度
D[f,{{x1,x2,},2}]
f 的 Hessian 矩阵
D[f,{{x1,x2,},n}]
n 阶泰勒级数的系数
D[{f1,f2,},{{x1,x2,}}]
向量函数 f 的 Jacobian 矩阵
向量导数.
以下给出函数 的梯度:
给出 Hessian 矩阵:
给出向量函数的 Jacobian 矩阵:
全导数
Dt[f]
全微分 df
Dt[f,x]
全导数
Dt[f,x,y,]
多重全导数 f
Dt[f,x,Constants->{c1,c2,}]
全导数,ci 为常数 (即 dci=0
y/:Dt[y,x]=0
=0
SetAttributes[c,Constant]
在所有情况下将 c 定义为常数
全微分运算.
在求表达式 关于 的导数时,实际上是求 变化时 变化的速度. 通常 不只依赖于 ,还依赖于其他变量,如 . 获得的结果取决于你如何假设 随着 的变化而变化.
有两种常见的情况. 假设 发生变化时保持不变,或者允许它们随 发生变化 在标准偏导数 中,假定除 外的所有变量均保持不变. 另一方面,在全导数 中,允许所有变量随 发生改变.
在 Wolfram 系统中,D[f,x] 给出了偏导数,假定其他所有变量与 x 无关. Dt[f,x] 给出全导数,假定所有都变量依赖于 x. 在这两种情况下,都可以添加参数以提供有关依赖关系的更多信息.
给出偏导数 :假定 yx 无关:
给出全导数 . 假定 y 依赖于 x
可以替换
还可以明确定义 . 需使用 y/: 以确保定义与 y 相关联:
根据这个定义,Dty 视为与 x 无关:
删除你对 y 的导数的定义:
求全导数,假定 z 不变:
指定微分时将 c 作为常数:
将变量 c 视为常数:
函数 c 也被假定为常数:
给出全微分
对全微分进行替换:
未知函数的导数
对已知函数进行微分可得出明确的结果:
对未知函数 f 进行微分给出用 f' 表示的结果:
Wolfram 语言将链式规则应用于微分,用 f' 表示结果:
对结果再次微分给出用 ff'f'' 表示的结果:
当一个函数有多个参数时,上标用于表示每个参数被微分多少次:
下式表示 . Wolfram 语言假定对不同变量求导的顺序无关:
通过将 x 替换为 0,可以求出 时的导数值:
f '[x]
一元函数的一阶导数
f(n)[x]
一元函数的 n 阶导数
f(n1,n2, )[x]
多元函数关于变量 ini 阶导数
未知函数的导数的输出形式.
导数的表示
Wolfram 系统中的导数的工作原理与标准数学中的导数基本相同. 但是,普通的数学符号通常藏有许多细节. 要想了解 Wolfram 系统中导数的表示方式,必须查看细节.
标准数学符号 实际上是 的简写,其中 虚拟变量. 同样, 的简写. 如符号 所示,对象 实际上可被视为纯函数,可以通过选择参数 对其进行计算. 可以将微分运算视为作用在函数 上以给出一个新函数,通常称为 .
对于有多个自变量的函数,简单的符号就会出问题. 你无法判断 表示的是 ,还是 ,对于几乎所有的 ,结果是完全不同的. 然而, 只是一个虚拟变量,唯一的作用是表示 关于求微分.
在 Wolfram 系统中,就像在数学的某些分支中一样,是将微分视为作用于函数上,而不是表达式. 需要的是一个运算,接受函数 ,并给出求导函数 . 像这样的作用于函数而不是变量的运算在数学上称为运算符.
Wolfram 系统中的对象 f' 是将微分算子应用于函数 f 的结果. 实际上 f' 的完整格式是 Derivative[1][f]. Derivative[1] 是 Wolfram 系统的微分算子.
运算符 Derivative[n1,n2,] 中的参数指定关于函数的每个 "slot" 要进行几阶微分. 通过使用运算符来表示微分,Wolfram 系统不必引入显式虚拟变量.
函数 f 的导数的完整格式:
给出参数 x
二阶导数:
给出函数 g 关于第二个 "slot" 的导数:
完整格式:
以下是关于变量 y 的二阶导数,它位于 g 的第二个 "slot" 上:
混合导数:
因为 Derivative 只指定关于每个 "slot" 进行几次微分,所以求导的顺序无关:
下面是一个更复杂的例子,其中 g 的两个参数都依赖于微分变量:
下面是结果的完整形式:
对象 f' 实际上类似于 Wolfram 系统中的任何其他函数. 可以对任何参数计算函数,可以使用 Wolfram 系统的标准运算符 /. 改变参数. (如果在微分过程中引入了显式虚拟变量,则不能这样操作.)
以下是 Wolfram 系统内对函数 f 的导数的表示,在原点进行计算:
求导结果含有参数为 x^2 时计算 f'
通过 Wolfram 系统标准的替换操作,可在点 处计算结果:
当需要基于像 f[x_] 这样的对象的定义来推导 f' 的值时,会有一些微妙之处.
以下是函数 h 的定义:
当对 h[x] 求导时,Wolfram 系统先计算 h[x],然后对结果进行微分:
通过将函数 h' 应用于参数 x,可以得到相同的结果:
函数 h' 本身:
函数 f' 完全由函数 f 的形式确定. 对 f[x_] 之类的对象的定义不能立即应用于 f'[x] 之类的表达式. 问题在于 f'[x] 的完整格式为 Derivative[1][f][x],其中没有包含与模式 f[x_] 明确匹配的任何内容. 此外,出于许多原因,函数 f' 自身表示的这种形式可以带来很多方便,不必将其应用于任何参数.
Wolfram 系统尝试找到代表对象 f' 的显式形式的纯函数. 当 Wolfram 系统获得与 Derivative[1][f] 类似的表达式时,实际上是将其转换成显式形式 D[f[#],#]&,然后尝试计算导数. 对于显式形式,Wolfram 系统可以立即使用为 f[x_] 这样的对象定义的值.如果 Wolfram 系统成功地完成了导数运算,它将返回显式的纯函数结果. 如果不成功,则保留原始的 f' 形式.
下面以纯函数形式给出了 Tan 的导数:
将纯函数应用于特定参数 y 的结果:
定义导数
在 Wolfram 语言中,可以通过 f'[x_]=fp[x] 这样简单的赋值中定义有一个参数的函数 f 的导数.
定义 的导数为 . 此处,可用 = 替换 :=
f'[x_] 的规则计算导数:
再次微分,给出 的导数:
定义 的导数在原点的值:
使用 g'[0] 的值:
定义 g 的二阶导数,可使用任意参数:
使用为二阶导数定义的值:
如果想要定义有几个参数的函数的导数,必须使用 Wolfram 语言中导数的一般表示形式.
f'[x_]:=rhs
定义 f 的一阶导数
Derivative[n][f][x_]:=rhs
定义 fn 阶导数
Derivative[m,n,][g][x_,_,]:=rhs
定义 g 关于各个参数的导数
定义导数.
定义 g 关于第二个参数的二阶导数:
使用刚刚给出的定义:
积分
下面是 Wolfram 语言中的积分
稍微更复杂的例子:
Wolfram 语言知道如何执行绝大多数可以通过标准数学函数完成的积分. 但是,应该知道,即使一个被积函数可能只包含相当简单的函数,但它的积分却可能涉及非常复杂的函数,或者可能根本无法用标准数学函数表示.
这是一个相当简单的积分:
下面的积分只能通过双对数函数来完成:
下面的积分涉及 Erf
以下积分则涉及 Fresnel 函数:
即便是这个简单的函数,其积分也需要用超几何函数来表示:
不能用标准的数学函数完成下面的积分. 结果,Wolfram 语言只能不完成该积分:
Integrate[f,x]
不定积分 f dx
Integrate[f,x,y]
多重积分 dx dy f
Integrate[f,{x,xmin,xmax}]
定积分 f dx
Integrate[f,{x,xmin,xmax},{y,ymin,ymax}]
多重积分 dxdy f
积分.
定积分
另一个定积分:
Wolfram 语言无法提供此定积分的解析式:
不过,你仍然可以获得数值结果:
下面计算多重积分 . 先出现的是最外层积分变量的范围:
在圆形区域上求 的积分:
不定积分
Wolfram 语言函数 Integrate[f,x] 给出不定积分 . 可以将不定积分运算视为微分的逆运算. 如果对 Integrate[f,x] 的结果进行微分,则始终会得到数学上等于原始表达式 f 的结果.
总的来说,有这样一组导数为 f 的结果存在. Integrate[f,x] 只给出一个导数是 f 的表达式. 可以通过添加任意积分常数,或除一些离散点外都为常数的函数来获得其他表达式.
当为积分添加上下限时,则必须删除此类积分常数. 但即使不定积分允许有任意常数,不添加积分上下限在处理时往往更方便.
Wolfram 语言应用标准规则来求不定积分:
可以将一个任意常数添加到不定积分中,并且仍然获得相同的导数. Integrate 只是给出一个具有要求的导数的表达式:
求不定积分
微分应返回原始函数:
需要对其进行操作以恢复原始形式:
Integrate 函数假定未明确包含积分变量的任何对象都是独立的,可以将其视为常量. 因此,Integrate 就像是偏微分函数 D 的反函数.
假定变量 ax 无关:
积分变量可以是不涉及显式数学运算的任何表达式:
Integrate 隐含的另一个假设是被积函数中的所有符号量都具有 "generic" 值. 因此,Wolfram 语言会给出 的结果是 ,尽管当 时并非如此.
Wolfram 语言给出此积分的标准结果,隐式假设 n 不等于 -1
如果专门给出指数 -1,Wolfram 语言会产生不同的结果:
应该认识到,通常可以用许多不同的形式写出任何特定积分的结果. Wolfram 语言会遵循一定的原则,尝试给出最方便的形式,例如避免出现复数,除非输入中已经包含复数.
ArcTan 给出的积分:
ArcTanh 给出的积分:
下式在数学上等于第一个积分,但是是以不同的形式给出的:
导数仍然是正确的:
尽管看起来不同,ArcTan[x]-ArcTan[1/x] 都是 的不定积分:
Integrate 选择使用两个形式中较简单的一种:
可以完成与无法完成的积分
计算积分比计算导数要困难得多. 对于导数,有一个基于链式法则的系统性过程,实际上可以计算出任何导数. 但是对于积分,没有这样系统性的过程.
主要问题之一是很难知道计算特定积分将需要哪些函数. 算出导数时,总是会得到与求导函数相同或更简单的函数. 但是,当算积分时,通常需要使用比被积函数复杂得多的函数.
可以使用与输入相同类型的函数来计算积分:
但是,对于此积分,则需要特殊函数 LogIntegral
很容易给出需要各种函数的积分:
以下积分涉及不完全伽马函数. 注意,指数经过仔细设置以允许 x 取任何复数:
Wolfram 语言包含的数学函数范围很广,通过使用这些函数,可以求出很多积分. 但是,仍然有可能找到看上去很简单却无法用任何标准数学函数来完成的积分.
这是一个看起来很简单的积分,却无法用任何标准数学函数来完成:
能够用标准数学函数进行积分的主要目的在于,它可以让人们使用这些函数的已知属性来计算或操纵得到的结果.
在最方便的情况下,可以用初等函数(例如指数函数,对数函数和三角函数)完成积分. 实际上,如果给出只涉及此类初等函数的被积函数,则 Integrate 的重要功能之一就是,如果相应的积分可以用初等函数表示,那么 Integrate 总是会成功地给出结果.
有理函数的积分很容易计算,并且总是以有理函数、对数和反三角函数的形式出现:
此处的积分形式仍然相同,但现在涉及多项式根上的隐式和:
给出所有根对象的数值近似:
三角函数的积分通常是用其他三角函数表示的:
这是一个涉及代数函数的相当简单的积分:
嵌套平方根的积分:
通过嵌套初等函数,有时会得出可以用初等函数完成的积分:
但更常出现的情况是需要其他类型的函数:
这样的积分通常用椭圆函数表示:
但是偶尔会得到只用初等函数表示的结果:
可以使用 Piecewise 系统地完成这样的积分:
除了初等函数,Integrate 还包括了用于处理特殊函数的大量算法. 有时,它将用于初等函数的过程直接进行推广. 但更常见的策略是先尝试将被积函数写成以某些复杂的特殊函数表示的形式,然后执行此操作以尝试将这些复杂的函数简化为熟悉的函数.
要想求出下面的 Bessel 函数的积分,需要广义超几何函数:
有时,积分可以被简化为更熟悉的形式:
一个大的积分表可能列出数千个不确定积分. Wolfram 语言基本上可以完成所有这些积分. 而且由于 Wolfram 语言包含的是通用算法,而不仅仅是特定情况,因此它实际上可以进行范围更广的积分.
在任何大型积分表中应该都能找到以下积分:
但是,要完成下面的积分,需要更通用的算法,而不是直接到表中查找:
特别是如果引入了自定义的新数学函数,则可能需要教 Wolfram 语言新的积分形式. 可以通过对 Integrate 进行适当的定义来做到这一点.
在进行微分时,链式法则允许将所有导数简化为标准形式,以 Wolfram 语言中的 Derivative 表示. 但是对于积分,不存在类似的标准格式,因此,经常必须对同一积分的多个不同版本进行定义. 很少能通过 Integrate 自动完成变量的更改和其他转换.
无法通过 Wolfram 语言内置的任何标准数学函数来完成此积分:
在添加自己的积分规则之前,必须删除写保护:
可以设置自己的规则来将积分定义为 "Jones" 函数:
现在,Wolfram 语言可以进行给出 Jones 函数的积分:
事实证明,积分 原则上可以表示为 超几何函数的无穷和,也可以表示为两个变量的适当广义化的 Kampé de Fériet 超几何函数.
定积分
Integrate[f,x]
不定积分
Integrate[f,{x,xmin,xmax}]
定积分
Integrate[f,{x,xmin,xmax},{y,ymin,ymax}]
多重积分
积分函数.
下面是积分
多重积分
先完成 y 的积分. 它的极限取决于 x 的值. 与 SumTable 等函数中使用的顺序一样:
在简单的情况下,可以通过求出不定积分然后计算适当的极限来求出定积分. 但是,有很多种积分,不能用标准数学函数来表示不定形式,却可以用标准数学函数来表示定积分.
无法用标准数学函数完成以下不定积分:
可用 Bessel 函数完成以下定积分:
对于下面的积分,可以求出不定积分,但直接求定积分更高效:
一个被积函数可能包含特殊函数,这并不意味着定积分一定会很复杂:
尽管如此,结果中依旧出现了特殊函数:
被积函数很简单,但定积分却并不如此:
即使求出了积分的不定形式,如果只将每个端点的极限值相减,通常也不会得到定积分的正确答案. 问题是,在积分范围内,如果遵循此过程,则可能会忽略奇点的影响.
的不定积分:
每个端点处的极限值相减:
真正的定积分是发散的,因为在 处有双极点:
这是一个更微妙的例子,涉及分支切割而不是极点:
对不定积分求极限的结果为 0:
但是,定积分给出了依赖于 的正确结果. 该假设可确保收敛:
Integrate[f,{x,xmin,xmax},PrincipalValue->True]
定积分的柯西主值
主值积分.
的不定积分:
代入 处的极限给出含有 的奇怪结果:
普通的黎曼定积分是发散的:
而柯西主值则是由有限的:
当参数以不定积分的形式出现时,基本上总是有可能获得对几乎所有参数值都正确的结果. 但是对于定积分,情况就不再如此. 最常见的问题是,只有当定积分中出现的参数满足某些特定条件时,定积分才收敛.
对于所有的 ,此不定积分都是正确的:
但是,对于定积分, 必须满足一个条件才能使积分收敛:
如果用 2 取代 ,则满足条件:
选项名称
默认值
GenerateConditionsAutomatic
是否生成显式条件
Assumptions$Assumptions
假定的参数之间的关系
Integrate 的选项.
如果给出假设条件 ,结果始终为
即便定积分收敛,当参数变化时,积分路径上的奇点也会导致断点的变化. 有时可以使用包含 Sign 等函数的单个公式来归纳结果. 但是,其他情况下,使用显式 If 更为方便.
这里的 If 给出了积分收敛的条件:
这是假设 为实数的结果:
结果是 的函数,是不连续的. 不连续性可以追溯到 处的本质奇点:
Sign 来表示此答案的简单方式不存在,所以 Wolfram 语言生成了显式的 If
所得函数 的曲线:
区域上的积分
在单位圆的内部进行积分:
等效形式:
即使在简单的矩形区域上积分很容易,但在圆形区域上积分却会复杂得多.
结果中给出了 Bessel 函数:
Integrate[f Boole[cond],{x,xmin,xmax},{y,ymin,ymax}]
condTrue 的区域上对 f 进行积分
区域上的积分.
特别是如果在定义区域的条件内有参数,则区域上的积分结果可能会分成几种情况.
分段函数
仅仅两个参数,积分就分解成了多种情况:
一个圆与一个正方形相交:
下面的区域可以有无限多个组成部分:
处理符号形式的积分
当 Wolfram 语言无法给出明确的积分结果时,它会给出符号形式的积分. 操纵此符号形式通常很有用.
Wolfram 语言无法给出此积分的明确结果,因此它以符号形式给出积分:
对该符号形式微分给出原被积函数:
这是一个不能明确计算的定积分:
这里给出该定积分的导数:
这是一个积分上下限不明确依赖于 x 的定积分:
关于 u 的偏导数为 0:
但是,非平凡全导数存在:
微分方程
可以使用 Wolfram 语言函数 DSolve 求常微分方程的符号解.
求解微分方程实际上是求未知函数的形式. 在 Wolfram 语言中,未知函数用如 y[x] 这样表达式来表示,其导数用 y'[x]y''[x] 等表示.
Wolfram 语言函数 DSolve 返回的结果是一个函数的规则列表. 问题是这些函数如何被表示的. 如果令 DSolve 关于 y[x] 求解,那么 DSolve 将返回 y[x] 的规则. 某些情况下,这个规则正是所需要的. 但这个规则本身并不给出 y'[x]y[0] 的值. 因此,多数情况下,最好让 DSolve 关于 y 本身求解,而不是关于 y[x] 求解. 这种情况下,DSolve 返回的是将 y 作为纯函数的规则,如纯函数中所讨论的那样.
如果令 DSolve 关于 y[x] 求解,它将给出关于 y[x]的规则:
该规则仅适用于 y[x] 自身,而不适用于 y[0]y'[x] 等对象.:
如果令 DSolve 关于 y 求解,它将给出对象 y 本身作为纯函数的规则:
现在规则适用于所有的 y
将解代入原方程得到 True
DSolve[eqn,y[x],x]
关于 y[x] 解微分方程
DSolve[eqn,y,x]
关于函数 y 解微分方程
获取微分方程不同形式的解.
在标准数学表示法中,通常通过明确引入虚拟变量表示函数的自变量的方法来表示微分方程的解. 如果用户需要的仅仅是符号形式的解,那么引入虚拟变量可能很方便. 但是,如果打算将解用于其它运算中,那么最好是得到不带虚拟变量的纯函数形式的解. 注意,这种形式虽然易于用 Wolfram 语言表示,但在标准数学表示法中没有相应的形式.
DSolve[{eqn1,eqn2,},{y1,y2,},x]
求解微分方程组
求解联立微分方程组.
求解两个联立微分方程:
在这种情况下,Wolfram 语言返回 y 的两个不同的解:
通过明确给出附加方程,如 y[0]==0,可以为微分方程添加约束和边界条件
求满足条件 y[0]==1 的解:
如果要求 Wolfram 语言求解微分方程组,而不给出约束和边界条件,那么 Wolfram 语言将尝试求出通解. 这个通解将包含待定常数. 方程中的每一阶导数将引入一个新的常数.
默认情况下,这些常数被命名为 C[n],其中 n1 开始,随着调用 DSolve 的次数而递增. 通过设置选项 GeneratedParameters 可以覆盖这个选择. 你所给的任何函数被应用于每一个相继的 n 值,从而得到每次调用 DSolve 所用的常数.
此四阶方程的通解包含四个待定常数:
所给的每一个独立初始或边界条件确定一个待定常数:
应该认识到,求微分方程的解的精确式子比较困难. 事实上,至少在标准数学函数方面,只有少数方程能求出这样的解.
人们研究最多的是线性微分方程,即方程中要求解的函数及其导数是线性的.
这是一个齐次、一阶线性微分方程,它的解很简单:
如果将方程变为非齐次方程,解将变得非常复杂:
如果只有一个线性微分方程,并且只包含所求函数的一阶导数,那么通过积分总能求出方程的解.
但如果超过一个微分方程,或包含高阶导数,这将不再成立. 但是,仍然可以使用特殊函数中的各种特殊函数来求解一些简单的二阶线性微分方程. 事实上,在历史上许多特殊函数就是为了表示这种方程的解而引入的.
这是 Airy 方程,用 Airy 函数表示解:
用 Bessel 函数表示解:
这里用到 Mathieu 函数:
Legendre 函数:
偶尔,仅使用初等函数即可解出二阶线性方程:
对于二阶以上的方程,即便是求解相当简单的线性微分方程所需的函数种类也极为复杂. 对于三阶方程,有时可使用广义 Meijer G 函数 MeijerG,但对于四阶或更高阶的方程,绝对没有标准的数学函数能满足要求,除非是很特殊的情况.
这是一个三阶线性微分方程,可用广义超几何函数给出解:
此处需要更广义的 Meijer G 函数:
对于非线性微分方程,仅有一些特殊情形能用标准数学函数求解. 尽管如此,DSolve 包含了相当通用的程序,能够处理几乎所有在标准参考书中能找到解的非线性微分方程.
本身不独立出现的一阶非线性微分方程很容易求解:
Riccati 方程的解就要复杂得多:
Bernoulli 方程的解却相当简单:
一个 阶 Bernoulli 方程通常有 个不同的解:
能解出 Abel 方程,但仅给出隐式解:
在实际应用中,建立含有分段函数的微分方程通常很方便. 可以使用 DSolve 来求这种方程的符号解.
下面的方程含有分段强制函数:
方程的解被分成了三种情况:
除了常微分方程,还需考虑微分代数方程,这种方程是微分方程和代数方程的的组合.
求解微分代数方程:
DSolve[eqn,y[x1,x2,],{x1,x2,}]
关于 y[x1,x2,] 求解偏微分方程
DSolve[eqn,y,{x1,x2,}]
关于函数 y 求解偏微分方程
求解偏微分方程.
DSolve 不仅能求解仅有一个自变量的常微分方程,也能求解有两个或多个自变量的偏微分方程.
求一个简单二元偏微分方程的通解:
以下是纯函数形式的解:
偏微分方程涉及的数学基础比常微分方程要复杂得多. 一个特征是:常微分方程的通解仅包含任意常数,而偏微分方程的通解必须包含任意函数. 实际上, 元偏微分方程的通解,包含 元的任意函数. 默认情况下,DSolve 将这些函数命名为 C[n].
这是一个简单的三元偏微分方程:
方程的解包含一个任意二元函数:
一维波动方程:
该二阶方程的解含有两个任意函数:
对于常微分方程,一般情况下通解都存在,通过简单地添加初始或边界条件,就能确定解中的任意常数. 但对于偏微分方程就不行了,因为只有线性的或少数一些特殊类型的偏微分方程存在通解.
对于其它的偏微分方程,只有给定特定的初始或边界条件才能求解,并且大多数情况,不能用以标准数学函数表示的精确式子来给出解.
由于 y 及其导数都是线性的,通解存在:
对于下面的弱非线性 PDE,通解存在:
以下非线性 PDE 没有通解:
积分变换与相关运算

拉普拉斯变换

LaplaceTransform[expr,t,s]
expr 的拉普拉斯变换
InverseLaplaceTransform[expr,s,t]
expr 的拉普拉斯逆变换
一维拉普拉斯变换.
函数 的拉普拉斯变换由 给出. 对于适当的 的拉普拉斯逆变换由 给出.
下面是一个简单的拉普拉斯变换:
拉普拉斯逆变换:
即使简单的变换也常常包含特殊函数:
含有 Meijer G 函数的结果:
InverseLaplaceTransform 返回原函数:
贝塞尔函数的拉普拉斯变换仅涉及初等函数:
拉普拉斯变换能把积分和微分运算转换为代数运算. 因此常常被用于研究微分方程控制的系统.
当进行拉普拉斯变换时,积分变为乘以
LaplaceTransform[expr,{t1,t2,},{s1,s2,}]
expr 的多维拉普拉斯变换
InverseLaplaceTransform[expr,{s1,s2,},{t1,t2,}]
expr 多维拉普拉斯逆变换
多维拉普拉斯变换.

傅立叶变换

FourierTransform[expr,t,ω]
expr 的傅立叶变换
InverseFourierTransform[expr,ω,t]
expr 的傅立叶逆变换
一维傅立叶变换.
积分变换能生成包含广义函数(如 HeavisideTheta)的结果:
求逆变换:
在 Wolfram 语言中,默认情况下,函数 的傅立叶变换被定义为 . 的傅立叶逆变换则被定义为 .
在不同的科学和技术领域,通常使用不同的约定来定义傅立叶变换. Wolfram 语言中的选项 FourierParameters 允许用户选择所需的任何约定.
常见约定
设置
傅立叶变换
傅立叶逆变换
Wolfram 语言默认定义
{0,1}
纯数学
{1,-1}
经典物理学
{-1,1}
现代物理学
{0,1}
系统工程
{1,-1}
信号处理
{0,-2Pi}
一般情形
{a,b}
各种约定下 FourierParameters 的常见设置.
选择默认参数的傅立叶变换:
选择用于信号处理的参数的傅立叶变换:
FourierSinTransform[expr,t,ω]
傅立叶正弦变换
FourierCosTransform[expr,t,ω]
傅立叶余弦变换
InverseFourierSinTransform[expr,ω,t]
傅立叶正弦逆变换
InverseFourierCosTransform[expr,ω,t]
傅立叶余弦逆变换
傅立叶正弦变换和余弦变换.
在傅立叶变换的某些应用中,避免引入复指数会使计算变得更方便. 傅立叶正弦变换和余弦变换分别对应于与 进行积分,而不是 ,使用极限 0 和 ,而不是 .
的傅立叶正弦变换和余弦变换:
FourierTransform[expr,{t1,t2,},{ω1,ω2,}]
expr 的多维傅立叶变换
InverseFourierTransform[expr,{ω1,ω2,},{t1,t2,}]
expr 的多维傅立叶逆变换
FourierSinTransform[expr,{t1,t2,},{ω1,ω2,}]
,
FourierCosTransform[expr,{t1,t2,},{ω1,ω2,}]
expr 的多维傅立叶正弦和余弦变换
InverseFourierSinTransform[expr,{ω1,ω2,},{t1,t2,}]
,
InverseFourierCosTransform[expr,{ω1,ω2,},{t1,t2,}]
expr 的多维傅立叶正弦和余弦逆变换
多维傅立叶变换.
计算二维傅立叶变换:
计算逆变换:

Z 变换

ZTransform[expr,n,z]
expr 的 Z 变换
InverseZTransform[expr,z,n]
expr 的 Z 逆变换
Z 变换.
函数 的 Z 变换由 给出. 的 Z 逆变换由围道积分 给出. Z 变换实际上是离散版本的拉普拉斯变换,被广泛应用于求解微分方程,特别是在数字处理和控制理论领域. 可将其视为常常用于组合数学和数论中的生成母函数.
计算 的 Z 变换:
Z 逆变换:
的母函数是指数函数:
广义函数与相关对象
在许多实际情况中,常常会考虑将某种固定量集中到一个无穷小区域的极限. 微积分中的普通数学函数不能表示这种极限. 然而,引入广义函数分布来表示积分和其它类型的计算中的这些极限是可能的.
DiracDelta[x]
Dirac delta 函数
HeavisideTheta[x]
Heaviside theta 函数 时,等于 0, 时,等于 1
Dirac delta 和 Heaviside theta 函数.
集中于 附近的函数:
随着 的增大,函数越来越集中:
对于任意 ,其积分总是等于 1:
趋向于无穷大时,函数的极限实际上是 Dirac delta 函数,其积分还是 1:
DiracDelta 以外的所有实数上均为 0:
在积分中插入一个 delta 函数能使被积函数在 delta 函数的自变量为 0 处的离散点上被采样.
对函数 f 在自变量为 2 处进行采样:
这是更复杂的例子:
统计 在积分区域上零点的个数:
Heaviside 函数 HeavisideTheta[x] 是 delta 函数的不定积分. 它有多种表示法:. 作为广义函数,Heaviside 函数只在积分内部有定义. 这与单位跃阶函数 UnitStep[x] 不同,后者是一个分段函数.
delta 函数的不定积分是 Heaviside theta 函数:
积分的值取决于 是否位于区间 内:
DiracDeltaHeavisideTheta 经常出现在积分变换中.
常数的傅立叶变换是 delta 函数:
的傅立叶变换包含两个 delta 函数的和:
可将 Dirac delta 函数用在 DSolve 中,求由线性方程和某些其他微分方程表示的系统的冲激响应或格林函数.
求在 受到冲激的谐波振荡器的行为:
DiracDelta[x1,x2,]
多维 Dirac delta 函数
HeavisideTheta[x1,x2,]
多维 Heaviside theta 函数
多维 Dirac delta 和 Heaviside theta 函数.
多维广义函数实际上是一元广义函数的乘积.
多维 Heaviside 函数的导数:
与多维 Dirac delta 函数相关的是两个整数函数:离散 delta 函数和 Kronecker delta 函数. 如果所有的 ,离散 delta 函数 为 1,否则为零. 如果所有的 都相等,Kronecker delta 函数 为 1,否则为零.
DiscreteDelta[n1,n2,]
离散 delta 函数
KroneckerDelta[n1,n2,]
Kronecker delta 函数
整数 delta 函数.