[繪圖] 雙變數方程式繪圖相關問題

作者: a0981314780 (小宇)   2018-12-18 04:50:33
各位好。
小弟正在寫論文,目前遇到需要繪圖輔助的情況,
教授建議可以使用matlab,但之前從沒碰過這軟體,
自己上網查指令後是有畫出圖,不過沒能完全解決需求,
所以來這邊請教各位前輩 m(_ _)m
[前情提要]
需要判別下列雙變數函數值z的正負。
z=32*x^3*y+3*y^4-16*x^4-8*x^2*y^2-8*x*y^3
(其中x,y皆>0且x>y)
[問題]
1. 有曾經成功畫出來,但那是在x、y有限制值域的情況下 (例如:x屬於[0,100])
指令的部分使用的是 x = linspace(0,100),
我查了之後發現這個,好像是用來把一定範圍內的數分成n等分的間隔,
對我需要解決的問題好像不是很重要,可是拿掉上面那指令後它就跑不出來了。
#以下為跑不出來時用的指令及結果
>> syms x y
>> [xx,yy] = meshgrid(x,y)
>> zz = 32*xx.^3*yy.^1 + 3*yy.^4 - 16*xx.^4 - 8*xx.^2*yy.^2 - 8*xx.*yy.^3
>> mesh(xx,yy,zz)
Error using mesh (line 71)
Z must be a matrix, not a scalar or vector.
2. 需要一條y=x的45度輔助線,這部分該使用什麼指令呢?
3. 因為最後我只是需要判斷,z函數的值在怎樣的x、y之下會為正、負或0,
所以是否有辦法做到將z值投影到x、y的平面上,並且以線段區分?
(換句話說,就是在z=0的x、y平面上,以線段區分出各區塊的正負)
我有發現一個等高線的指令(contour?),有成功用出但也不是想要的成果,
能否用指令設定等高線值=0之類的呢?
大概類似這張圖的感覺(純示意圖):https://i.imgur.com/KMkkQMR.png
以上的問題麻煩各位解答了,先謝過各位前輩 qq
作者: sunev (Veritas)   2018-12-18 07:22:00
可以畫成功為什麼要改呢?你要用有限大的螢幕畫沒有長度限制的東西嗎?所謂的畫圖就只是代數字而已喔
作者: profyang (prof)   2018-12-18 19:46:00
你要畫到無限大?怎麼可能?你電腦螢幕寬度無限寬嗎?https://i.imgur.com/nZBY8hw.png 幫你畫畫 貌似=0是條直線 這條線以右好像都是你要的講錯了 這條線以左 x=y線以右 這樣夾的三角區域 應該是你要的Code: https://i.imgur.com/Ckp18VM.png

Links booklink

Contact Us: admin [ a t ] ucptt.com