FunctionRange[f,x,y]
求变量为 x 的实函数 f 的值域,结果以 y 的形式返回.
FunctionRange[f,x,y,dom]
考虑 f 为变量和值在定义域 dom 上的函数.
FunctionRange[funs,xvars,yvars,dom]
求变量为 xvars 的映射 funs 的值域,结果以 yvars 的形式返回.
FunctionRange[{funs,cons},xvars,yvars,dom]
求映射 funs 的值域,其中 xvars 的值被约束 cons 限定.
FunctionRange
FunctionRange[f,x,y]
求变量为 x 的实函数 f 的值域,结果以 y 的形式返回.
FunctionRange[f,x,y,dom]
考虑 f 为变量和值在定义域 dom 上的函数.
FunctionRange[funs,xvars,yvars,dom]
求变量为 xvars 的映射 funs 的值域,结果以 yvars 的形式返回.
FunctionRange[{funs,cons},xvars,yvars,dom]
求映射 funs 的值域,其中 xvars 的值被约束 cons 限定.
更多信息和选项
- funs 应该是变量 xvars 的函数列表.
- funs 和 yvars 必须是长度相等的列表.
- dom 的可能值为 Reals 和 Complexes. 默认为 Reals.
- 如果 dom 为 Reals,则所有变量、参数、常数和函数值都被限定在实数范围内.
- cons 可以含有方程、不等式或者它们的逻辑组合.
- 可以给出下列选项:
-
GeneratedParameters C 如何对生成的参数命名 Method Automatic 应该使用什么方法 WorkingPrecision Automatic 计算所用的精确度 - 当 WorkingPrecision->Automatic 时,FunctionRange 可以使用数值优化估计值域.
范例
打开所有单元 关闭所有单元基本范例 (2)
范围 (7)
FunctionRange[x ^ 2 - 1, x, y]FunctionRange[Sqrt[x ^ 2 - 1] / x, x, y]FunctionRange[Sin[x] / Sqrt[x], x, y]FunctionRange[Sin[x ^ 2 - 1] - 1 / (x ^ 2 + 2), x, y]FunctionRange[{Sin[x ^ 2 - 1] - 1 / (x ^ 2 + 2), 0 ≤ x ≤ 1}, x, y]FunctionRange[Sqrt[x], x, y, Complexes]FunctionRange[(x - Sqrt[x ^ 2]) / x, x, y, Complexes]FunctionRange[x ^ 2 + x y + y ^ 2, {x, y}, z]FunctionRange[(x - y) / (1 + x ^ 2 + y ^ 2), {x, y}, z]FunctionRange[Sin[x y] - Cos[x + y], {x, y}, z]FunctionRange[{x ^ 2 + y, y ^ 2 + x}, {x, y}, {u, v}]FunctionRange[{x ^ 2, x y, y ^ 2}, {x, y}, {u, v, w}]FunctionRange[{(1 - x ^ 2) / (1 + x ^ 2), 2x / (1 + x ^ 2)}, {x}, {u, v}]FunctionRange[{{x y, x + y}, x ^ 2 + y ^ 2 ≤ 1}, {x, y}, {u, v}]FunctionRange[(x - y) / (1 + x ^ 2 + y ^ 2), {x, y}, z, Complexes]FunctionRange[{x ^ 2, x y, y ^ 2}, {x, y}, {u, v, w}, Complexes]选项 (3)
GeneratedParameters (1)
FunctionRange 可能会引入新的参数来表示结果:
FunctionRange[Boole[Sin[x] == 1 / 2]x, x, y]用 GeneratedParameters 控制如何生成参数:
FunctionRange[Boole[Sin[x] == 1 / 2]x, x, y, GeneratedParameters -> (Subscript[k, #]&)]Method (1)
默认情况下,由 FunctionRange 返回的结果可以不简化:
FunctionRange[{{x y, x + y}, x ^ 2 + y ^ 2 ≤ 1}, {x, y}, {u, v}]使用 Method 指定结果应该以简化形式给出:
FunctionRange[{{x y, x + y}, x ^ 2 + y ^ 2 ≤ 1}, {x, y}, {u, v}, Method -> {"Reduced" -> True}]WorkingPrecision (1)
默认情况下,FunctionRange 尝试计算精确结果:
FunctionRange[(Sqrt[x] + Sqrt[y]) / (x ^ 2 + y ^ 2 + 1), {x, y}, z]对于有限的 WorkingPrecision,不使用较慢的符号式方法:
FunctionRange[(Sqrt[x] + Sqrt[y]) / (x ^ 2 + y ^ 2 + 1), {x, y}, z, WorkingPrecision -> MachinePrecision]应用 (13)
基本应用 (7)
FunctionRange[x ^ 2 - 4, x, y]Show[{RegionPlot[%, ...], Plot[x ^ 2 - 4, {x, -3, 3}]}, ...]FunctionRange[Erf[Sec[x] / 2], x, y]Show[{RegionPlot[%, ...], Plot[Erf[Sec[x] / 2], {x, -5Pi, 5Pi}]}, ...]FunctionRange[{Fibonacci[x], -2 <= x <= 4}, x, y]Show[{RegionPlot[%, ...], Plot[Fibonacci[x], {x, -5, 5}]}, ...]f = 2 / (1 - I ^ x) - 1;FunctionRange[f, x, y, Complexes]GraphicsRow[{ComplexPlot3D[f + 1, {x, -3 - 3I, 3 + 3I}], ComplexPlot3D[f - 1, {x, -3 - 3I, 3 + 3I}]}, ...]FunctionRange[{(x - 1) / (x - 5 / 4), Abs[x] < 1}, x, y, Complexes]FunctionRange[{(x - 5 / 4) / (x - 1), Abs[x] < 1}, x, y, Complexes]RegionPlot@@{{%%, %} /. {Re[y] -> a, Im[y] -> b}, {a, 0, 2}, {b, -0.5, 0.5}, ...}当 FunctionRange 给出 True 时,函数为满射:
FunctionRange[Tan[x], x, y]可使用 FunctionSurjective 测试函数是否为满射:
FunctionSurjective[Tan[x], x]Plot[Tan[x], {x, -3Pi, 3Pi}]f = ParabolicCylinderD[5, x];r = FunctionRange[f, x, y]使用 FindInstance 证明区间
包含在
的值域内:
FindInstance[-5 <= y <= 5 && Not[r], y, Reals]使用 FunctionSurjective 验证
在
上满射:
FunctionSurjective[{f, True, -5 <= y <= 5}, x, y]Plot[f, {x, -10, 10}, ...]使用 FindInstance 证明区间
不在
的值域内:
FindInstance[0 <= y <= 10 && Not[r], y, Reals]Plot[f, {x, -10, 10}, ...]使用 FunctionSurjective 验证
在
上不是满射函数:
FunctionSurjective[{f, True, 0 <= y <= 10}, x, y]求解方程和最优化 (3)
当且仅当
属于
的实数值域时,方程
在
的实数定义域中有解:
r = FunctionRange[LogGamma[x], x, y]r /. y -> 1Solve[LogGamma[x] == 1, x, Reals]Plot[LogGamma[x], {x, -1, 5}, GridLines -> {x /. %, {1}}, Rule[...]]r /. y -> -1Solve[LogGamma[x] == -1, x, Reals]Plot[LogGamma[x], {x, -1, 5}, ...]f = (2 ^ x + 1) / (3 - 2 ^ x);r = FunctionRange[f, x, y, Complexes]r /. y -> 1 + ISolve[f == 1 + I, x]Show[{ComplexPlot3D[f - (1 + I), {x, -2 - 2 I, 2 + 2 I}], Graphics3D[...]}, Rule[...]]r /. y -> 1 / 3Solve[f == 1 / 3, x]ComplexPlot3D[f - 1 / 3, {x, -2 - 2I, 2 + 2I}, Rule[...]]FunctionRange[JacobiZN[x, 1], x, y]Plot[JacobiZN[x, 1], {x, -5, 5}, ...]您还可以使用 MinValue 和 MaxValue 计算函数的下确界和上确界:
MinValue[JacobiZN[x, 1], x]MaxValue[JacobiZN[x, 1], x]微积分 (3)
FunctionContinuous[{InverseHaversine[x], 0 <= x <= 1}, x]FunctionRange[InverseHaversine[x], x, y]Plot[InverseHaversine[x], {x, 0, 1}]FunctionContinuous[{KaiserWindow[x], -1 <= x <= 1}, x]FunctionRange[{KaiserWindow[x], -1 <= x <= 1}, x, y]Plot[KaiserWindow[x], {x, -1, 1}]FunctionContinuous[{HarmonicNumber[x, 3], -5 <= x <= 5}, x]FunctionRange[{HarmonicNumber[x, 3], -5 <= x <= 5}, x, y]Plot[HarmonicNumber[x, 3], {x, -5, 5}]FunctionRange[{(Cos[x] - 1) / x ^ 2, -1 <= x <= 1}, x, y]Limit[(Cos[x] - 1) / x ^ 2, x -> 0]Plot[(Cos[x] - 1) / x ^ 2, {x, -1, 1}, ...]FunctionRange[{SinIntegral[x], 2 <= x <= 4}, x, y]{lbd, ubd} = {SinIntegral[2], SinIntegral[π]}(4 - 2)使用 Integrate 验证计算得到的积分是否满足不等式:
int = Integrate[SinIntegral[x], {x, 2, 4}]lbd <= int <= ubdPlot[{SinIntegral[x](4 - 2), lbd, ubd, int}, {x, 2, 4}, ...]属性和关系 (1)
如果函数的 FunctionRange 为 True,则函数是满射的:
FunctionRange[x Sin[x], x, y]用 FunctionSurjective 测试函数是否为满射的:
FunctionSurjective[x Sin[x], x]可能存在的问题 (1)
FunctionRange[Hyperfactorial[x], x, y]Plot[{Hyperfactorial[x], %[[2]]}, {x, -3, 3}, PlotRange -> {0, 4}]Plot[Im[Hyperfactorial[x]], {x, -3.1, 0}]对于
,
的实数值可能在 FunctionRange 给出的范围之外:
Hyperfactorial[-3]相关指南
-
▪
- 数学函数和序列的属性 ▪
- 假设和域 ▪
- 不等式 ▪
- 微积分
文本
Wolfram Research (2014),FunctionRange,Wolfram 语言函数,https://reference.wolfram.com/language/ref/FunctionRange.html.
CMS
Wolfram 语言. 2014. "FunctionRange." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/FunctionRange.html.
APA
Wolfram 语言. (2014). FunctionRange. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/FunctionRange.html 年
BibTeX
@misc{reference.wolfram_2026_functionrange, author="Wolfram Research", title="{FunctionRange}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/FunctionRange.html}", note=[Accessed: 08-August-2026]}
BibLaTeX
@online{reference.wolfram_2026_functionrange, organization={Wolfram Research}, title={FunctionRange}, year={2014}, url={https://reference.wolfram.com/language/ref/FunctionRange.html}, note=[Accessed: 08-August-2026]}