Mathematica:'Findroot' 未返回预期结果

Mathematica: 'Findroot' not returning expected result

我目前正在做一个涉及使用预定义函数的小项目,我绘制了该函数的图形,并尝试使用提供的 y 坐标找到 x 值答案。我敢肯定还有其他方法,但我必须使用这个特定的功能。以下是我目前拥有的:

F[L_] := (ArcTan[(L + 80)/25]/Pi + 0.6)*(0.55 - 
    0.4*Cos[(Pi/100)*(L + 10)])

FindRoot[F[L] == 0.8, {x, 55}]

我确信我的函数是正确的,因为我能够检索到一个看起来适合该函数的图表。

我不确定是否应该尝试更改我的“55”值?

这是我从程序中收到的错误:

FindRoot::nlnum

在你的 FindRoot 中你有 F[L],但是你试图从 x=55 开始 - 你混淆了你的变量。在 FindRoot 中要么将两者都设为 L,要么将两者都设为 x

FindRoot[F[L] == 0.8, {L, 55}]
(* {L -> 58.2501} *)

目前正在寻找从L=55开始的解决方案,对于L的更大值还有其他解决方案:

FindRoot[F[L] == 0.8, {L, 155}]
(* {L -> 122.963} *)
f[x_] := (ArcTan[(x + 80)/25]/Pi + 0.6) (0.55 - 0.4 Cos[(Pi/100) (x + 10)])

Plot[{f[x], 0.8}, {x, -1000, 1000}]

NSolve[{f[x] == 0.8, 0 < x < 1000}, x]
{{x -> 58.2501}, {x -> 122.963}, {x -> 256.049}, {x -> 324.199}, {x -> 455.505},
 {x -> 524.599}, {x -> 655.26}, {x -> 724.797}, {x -> 855.12}, {x -> 924.915}}