[问题] 输出只有括号

楼主: sunlight339 (hawk)   2017-02-20 16:41:09
小弟不常po文,如有违反规定请告知
最近在用Solve指令求解时,输出的结果
只有2个大括号,输入如下:
Solve[Sqrt[x + 3 - 4*Sqrt[x - 1]] + Sqrt[x + 8 - 6*Sqrt[x - 1]] == 1]
输出:
{{}}
???!,请问各位先进和大大这是什么情形?答案应该是10才对。
作者: AmibaGelos (Amiba Gelos)   2017-02-20 19:22:00
因为答案不是10阿lol假设reals的话应该是5~10可以用Reduce[...,Reals]确认
楼主: sunlight339 (hawk)   2017-02-20 22:52:00
大大,用手算答案是10没错,只是为什么会是{{}}?
作者: LPH66 (-6.2598534e+18f)   2017-02-21 00:37:00
答案确实是 5≦x≦10 喔原式左边等于 Abs[Sqrt[x-1]-2] + Abs[Sqrt[x-1]-3]
作者: GirlInBlack ( 小蛋 )   2017-02-21 01:49:00
原式没有告诉Mathematica你的未知数是啥耶 XD输出{{}}表示Mathematica认为没有解(空集合)
作者: LPH66 (-6.2598534e+18f)   2017-02-21 02:31:00
啊, 刚刚翻 help 才发现, {} 才是无解, {{}} 表示"solution set is full dimensional"应该是 Solve 看到没办法定点决定所以以为是全线了然后 Solve 在不给定变量时是对式子里的所有变量求解
楼主: sunlight339 (hawk)   2017-02-21 06:52:00
有给定变量为x,结果仍然一样 ~"~
作者: cccWccc   2017-02-21 12:02:00
http://i.imgur.com/oBpiaJq.png 有趣 解真的是一个区间
作者: AmibaGelos (Amiba Gelos)   2017-02-21 23:09:00
复数时2<=Re[sqrt[x-1]]<=3,等价于9<=Abs[x-1]+Re[x]<=19 branch cut被跨过一次不知道MMA能不能解不过MMA7都可以帮我做复变作业了解这个应该是小case
作者: cccWccc   2017-02-24 17:21:00
初步尝试失败QQ 但图解法可看到解的范围长怎样(脏脏那块)http://i.imgur.com/MnOV5Bb.png
作者: AmibaGelos (Amiba Gelos)   2017-02-25 23:15:00
http://i.imgur.com/kQmZsiH.png应该先化简到所有的式子都在实数域内才能指定实数域如果先解i再解r好像比较好看?http://i.imgur.com/vF7S3SE.png恩结果换顺序后reduce可以直接解@@
作者: LPH66 (-6.2598534e+18f)   2017-02-25 23:45:00
总之给原 PO: Solve 看到解是区间以为是全实数所以给 {{}}实际上的解区间可由 Reduce 求得
作者: cccWccc   2017-03-06 22:01:00
厉害厉害

Links booklink

Contact Us: admin [ a t ] ucptt.com