MATLAB如何繪製三維隱函數圖形

MATLAB如何繪製三維隱函數圖形


用isosurface繪製
例子:繪製x^2+y^2-z^2=1的影像
[x,y,z]=meshgrid(linspace(-10,10));
val=x.^2+y.^2-z.^2;
isosurface(x,y,z,val,1)
axis equal



用matlab畫三元隱函數
不是簡單的可以直接用Z表示的
比如(X^2+Y^2+Z^2)^3=27*Z
怎麼用z來表示x,
寫錯了,是怎麼用x,y來表示z?
怎麼解出z?


隱函數嘛,z本身就不一定能用x,y表示.可以用數值表示syms ;x ;y ;zf=(x^2+y^2+z^2)^3-27*z;xx=0:0.1:10;yy=xx;zz=sym(zeros(length(xx)));for ;i=1:length(xx) ; ; ;& nbsp;f1=subs(f,x,x…



matlab畫微分方程曲線
x*d2y/dt2=-1/2*根號下(1+(dy/dx)平方),初使條件當t=0時,x=-100,y=0,y一階倒數初值也為0,


是不是該有個關於x的微分方程啊
比如dx/dt=f(x,y,t)?



怎樣用matlab求解複雜的微分方程組
d2x/dt2=(x^2+3x)(dy/dt)
d2y/dt2=-(x^2+3x)(dx/dt)
當t=0時,x(0)=0,y(0)=0
(dx/dt)(0)=a,(dy/dt)(0)=a
(d2x/dt2)(0)=a,(d2y/dt2)(0)=a
先要得到x,y分別關於t的運算式,
然後得到y關於x的運算式
初值條件應該是:
當t=0時,x(0)=0,y(0)=0
(dx/dt)(0)=a,(dy/dt)(0)=0
(d2x/dt2)(0)=0,(d2y/dt2)(0)=b
其中a,b為常數


[x y]=dsolve('D2x=(x*x+3*x)*Dy','D2y=-(x*x+3*x)*Dx','x(0)=0','y(0)=0','Dx(0)=a','Dy(0)=a','D2x(0)=a','D2y(0)=a')%%%%%%%%%%%%%%%%%%%%%%%%%%%設定的X(1)=dx/dt;x(2)=x;x(3)=dy/dt;x(4)=y;%%%%%%%function dx=…