level 7
云淡风轻_2024
楼主
我做出了一个函数图像,具体代码如下:
eq = -3 x u^2 + (2 x (-1 + u)^2)/(-1 + x u)^3 - (
2 (-1 + x)^2 u)/(-1 + x u)^2 + (4 (-1 + x))/(-1 + x u) + (
x (-2 + u + x^3 u^4 + x (2 + u^2) - x^2 (u + 2 u^3))^2)/(
2 (-1 + x)^2 (-1 + x u)^3);
Plot[-((x (-2 + u + x^3 u^4 + x (2 + u^2) - x^2 (u + 2 u^3)))/(
2 (-1 + x u)^2)) /. FindRoot[eq, {x, 1/3}], {u, 0, 1},
AxesOrigin -> {0, 0}, AxesOrigin -> {0, 0}];
输出的图像如下:

现在我想精确的找出图像上使函数值最大的 u(即横坐标)是多少,请问有什么办法吗?
我想到的一个办法是直接求目标函数
-((x (-2 + u + x^3 u^4 + x (2 + u^2) - x^2 (u + 2 u^3)))/(
2 (-1 + x u)^2)) /. FindRoot[eq, {x, 1/3}] 在定义域 0<=u<=1 上的最大值点。我写的代码是:
ArgMax[{-((x (-2 + u + x^3 u^4 + x (2 + u^2) - x^2 (u + 2 u^3)))/(
2 (-1 + x u)^2)) /. FindRoot[eq, {x, 1/3}], 0 <= u <= 1}, u].
但是MMA提示代码错误。
请问
正确的
代码应该是什么?如何才能求出这个函数图像的最大值点(对应的u的数值)呢?
2022年03月11日 05点03分
1
eq = -3 x u^2 + (2 x (-1 + u)^2)/(-1 + x u)^3 - (
2 (-1 + x)^2 u)/(-1 + x u)^2 + (4 (-1 + x))/(-1 + x u) + (
x (-2 + u + x^3 u^4 + x (2 + u^2) - x^2 (u + 2 u^3))^2)/(
2 (-1 + x)^2 (-1 + x u)^3);
Plot[-((x (-2 + u + x^3 u^4 + x (2 + u^2) - x^2 (u + 2 u^3)))/(
2 (-1 + x u)^2)) /. FindRoot[eq, {x, 1/3}], {u, 0, 1},
AxesOrigin -> {0, 0}, AxesOrigin -> {0, 0}];
输出的图像如下:

现在我想精确的找出图像上使函数值最大的 u(即横坐标)是多少,请问有什么办法吗?我想到的一个办法是直接求目标函数
-((x (-2 + u + x^3 u^4 + x (2 + u^2) - x^2 (u + 2 u^3)))/(
2 (-1 + x u)^2)) /. FindRoot[eq, {x, 1/3}] 在定义域 0<=u<=1 上的最大值点。我写的代码是:
ArgMax[{-((x (-2 + u + x^3 u^4 + x (2 + u^2) - x^2 (u + 2 u^3)))/(
2 (-1 + x u)^2)) /. FindRoot[eq, {x, 1/3}], 0 <= u <= 1}, u].
但是MMA提示代码错误。
请问
正确的
代码应该是什么?如何才能求出这个函数图像的最大值点(对应的u的数值)呢?