一个mathematica输出形式的问题FindMaxValue[{(a^2 + 2 a*Sin[x] + 2)/( a^2 + 2 a*Cos[x] + 2)},输出3.73205.这很明显是一个无理数,但我就想看一看这个无理数用根号表达的形式,怎么处理?
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/24 08:33:19
一个mathematica输出形式的问题FindMaxValue[{(a^2 + 2 a*Sin[x] + 2)/( a^2 + 2 a*Cos[x] + 2)},输出3.73205.这很明显是一个无理数,但我就想看一看这个无理数用根号表达的形式,怎么处理?
一个mathematica输出形式的问题
FindMaxValue[{(a^2 + 2 a*Sin[x] + 2)/( a^2 + 2 a*Cos[x] + 2)},输出3.73205.
这很明显是一个无理数,但我就想看一看这个无理数用根号表达的形式,怎么处理?
一个mathematica输出形式的问题FindMaxValue[{(a^2 + 2 a*Sin[x] + 2)/( a^2 + 2 a*Cos[x] + 2)},输出3.73205.这很明显是一个无理数,但我就想看一看这个无理数用根号表达的形式,怎么处理?
-((4 + Sqrt[4 - 2 Sqrt[3]])/(-3 + Sqrt[3])) // N
=3.7320508075688776
这个问题用Maximize也求不出来,但并不是无法表示,只是需要手动参与计算过程而已,这个问题里面mathematica显得还不够聪明.
表达式取最大值的充分条件是其对a和x的偏导等于零,于是可以编写如下语句:
Clear["Global`*"];
f[a_,x_] := (a^2 + 2 a*Sin[x] + 2)/(a^2 + 2 a*Cos[x] + 2);
Simplify[(f[a,x] /.Solve[D[f[a,x],x] == 0,x]) /.
Solve[D[f[a,x],a] == 0,a]]
可知其包含了所有极值.再使用
%//N
来查看哪个值最大,即为表达式的最值.对应结果就是开始的表达式,此时:
a=Sqrt[2]
x=ArcCos[1/4 (-Sqrt[2] - Sqrt[6])]
用这个函数Maximize,查下帮助就知道了,FindMaxValue只能进行数值形式计算最大值点
Maximize[(2 + a^2 + 2 a Sin[x])/(2 + a^2 + 2 a Cos[x]), a]
另外你说的要求的无理数用根号表达,是以a为自变量的,不是以x. 用x做自变量的话,最大值是以三角函数和反三角函数来表示的...
全部展开
用这个函数Maximize,查下帮助就知道了,FindMaxValue只能进行数值形式计算最大值点
Maximize[(2 + a^2 + 2 a Sin[x])/(2 + a^2 + 2 a Cos[x]), a]
另外你说的要求的无理数用根号表达,是以a为自变量的,不是以x. 用x做自变量的话,最大值是以三角函数和反三角函数来表示的
收起