判断函数50 * x - x ** 3的极值点代码
时间: 2024-10-07 17:00:18 浏览: 25
多元二次函数极值的研究
判断函数 \( f(x) = 50x - x^3 \) 的极值点通常涉及到求导和设置导数等于零的过程。这是因为极值点(包括最大值和最小值)是由函数在某一点处切线斜率为零的情况决定的。
首先,我们需要计算该函数的一阶导数 \( f'(x) \),如果它等于零,那么那个点可能是极值点。一阶导数公式是 \( f'(x) = d(50x - x^3)/dx = 50 - 3x^2 \)。
然后解这个方程找到可能的极值点 \( x \):
\[ 50 - 3x^2 = 0 \]
\[ 3x^2 = 50 \]
\[ x^2 = \frac{50}{3} \]
\[ x = \pm\sqrt{\frac{50}{3}} \]
接下来,为了确定这些点是极大值还是极小值,我们通常会检查二阶导数 \( f''(x) \)。如果 \( f''(x) > 0 \) 在 \( x \) 处,那是极小值;如果 \( f''(x) < 0 \),那是极大值。计算二阶导数:
\[ f''(x) = d(50 - 3x^2)/dx = -6x \]
现在,你可以将 \( x \) 的两个值代入 \( f''(x) \),看看它们分别是正还是负,以此来确认极值点。
以下是Python代码示例:
```python
import sympy as sp
# 定义变量和函数
x = sp.symbols('x')
f_x = 50*x - x**3
# 计算一阶导数
f_prime_x = sp.diff(f_x, x)
critical_points = sp.solve(f_prime_x, x)
# 计算二阶导数
f_double_prime_x = sp.diff(f_prime_x, x)
for point in critical_points:
second_derivative = f_double_prime_x.subs(x, point)
if second_derivative > 0:
print(f"极小值点:{point}")
elif second_derivative < 0:
print(f"极大值点:{point}")
#
阅读全文