[問題] 輸出只有括號

作者: 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
" target="_blank" rel="nofollow">
有趣 解真的是一個區間
作者: 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 但圖解法可看到解的範圍長怎樣(髒髒那塊)" target="_blank" rel="nofollow">
作者: AmibaGelos (Amiba Gelos)   2017-02-25 23:15:00
" target="_blank" rel="nofollow">
應該先化簡到所有的式子都在實數域內才能指定實數域如果先解i再解r好像比較好看?" target="_blank" rel="nofollow">
恩結果換順序後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