Mathematica 函数单调性与极值点分析代码
使用 Mathematica 代码分析函数单调性与极值点
以下代码可以生成一个表格,显示函数在指定区间上的单调性、极值点以及导数的正负性。
RangePlot[x_, f_, {xmin_, xmax_}] :=
Module[{df = D[f, x], ddf = D[f, {x, 2}],
critpts = Solve[df == 0, x]},
Grid[{{'x', Row[{x, '(', xmin, ',', xmax, ')'}]},
{'f'(x)',
Row[{If[df > 0, '+', If[df < 0, '-', 0]],
'(', If[df == 0, 'x=' <> ToString[x /. critpts], ''], ')'}]},
{'f''(x)',
Row[{If[ddf > 0, '↗', If[ddf < 0, '↘', ' ']],
'(', If[ddf != 0, '极', ''],
If[ddf > 0, '小', If[ddf < 0, '大', '']], '值',
If[ddf != 0, '点', ''], ')'}]}}, Alignment -> Left]
]
使用方法:
f[x_] := x^3 - 3 x
RangePlot[x, f[x], {-2, 2}]
该代码首先定义了一个名为 RangePlot 的函数,该函数接受三个参数:
- 自变量
x - 函数
f - 自变量的取值范围
{xmin, xmax}
RangePlot 函数内部计算了函数的一阶导数 df 和二阶导数 ddf,并求解了 df 等于 0 的解,即函数的临界点 critpts。随后,RangePlot 使用 Grid 函数生成一个表格,该表格包含三行:
- 第一行为自变量
x的取值范围 - 第二行为函数一阶导数
f'(x)的正负性判断 - 第三行为函数二阶导数
f''(x)的单调性判断以及极值点
使用示例中,我们定义了函数 f[x] = x^3 - 3x,并调用 RangePlot 函数对其在区间 {-2, 2} 上进行分析。该代码会输出一个表格,显示函数 f[x] 在该区间上的单调性、极值点以及导数的正负性。
注意:
- 该代码使用了一些简单的判断语句来判断导数的正负性以及函数的单调性,因此可能无法处理所有情况,例如当导数等于 0 时,函数可能存在拐点而不是极值点。
- 该代码仅供参考,使用者需要根据具体情况进行修改和完善。
更多功能:
该代码可以扩展以实现更多功能,例如:
- 绘制函数图像
- 标记极值点
- 显示函数的凹凸性
- 支持多种函数类型
原文地址: https://www.cveoy.top/t/topic/oO7O 著作权归作者所有。请勿转载和采集!