matlab编程问题z(find(z>0))=nan作何解释a1=-0.05;%微凸体1的参数y=a*x^2+b*y^2+cb1=-0.2;c1=5;x=linspace(-sqrt(abs(c1/a1)),sqrt(abs(c1/a1)),100);y=linspace(-sqrt(abs(c1/b1)),sqrt(abs(c1/b1)),100);[x,y]=meshgrid(linspace(-sqrt(abs(c1/a1)),sqr
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 13:33:04
![matlab编程问题z(find(z>0))=nan作何解释a1=-0.05;%微凸体1的参数y=a*x^2+b*y^2+cb1=-0.2;c1=5;x=linspace(-sqrt(abs(c1/a1)),sqrt(abs(c1/a1)),100);y=linspace(-sqrt(abs(c1/b1)),sqrt(abs(c1/b1)),100);[x,y]=meshgrid(linspace(-sqrt(abs(c1/a1)),sqr](/uploads/image/z/10192141-37-1.jpg?t=matlab%E7%BC%96%E7%A8%8B%E9%97%AE%E9%A2%98z%28find%28z%3E0%29%29%3Dnan%E4%BD%9C%E4%BD%95%E8%A7%A3%E9%87%8Aa1%3D-0.05%3B%25%E5%BE%AE%E5%87%B8%E4%BD%931%E7%9A%84%E5%8F%82%E6%95%B0y%3Da%2Ax%5E2%2Bb%2Ay%5E2%2Bcb1%3D-0.2%3Bc1%3D5%3Bx%3Dlinspace%28-sqrt%28abs%28c1%2Fa1%29%29%2Csqrt%28abs%28c1%2Fa1%29%29%2C100%29%3By%3Dlinspace%28-sqrt%28abs%28c1%2Fb1%29%29%2Csqrt%28abs%28c1%2Fb1%29%29%2C100%29%3B%5Bx%2Cy%5D%3Dmeshgrid%28linspace%28-sqrt%28abs%28c1%2Fa1%29%29%2Csqr)
matlab编程问题z(find(z>0))=nan作何解释a1=-0.05;%微凸体1的参数y=a*x^2+b*y^2+cb1=-0.2;c1=5;x=linspace(-sqrt(abs(c1/a1)),sqrt(abs(c1/a1)),100);y=linspace(-sqrt(abs(c1/b1)),sqrt(abs(c1/b1)),100);[x,y]=meshgrid(linspace(-sqrt(abs(c1/a1)),sqr
matlab编程问题z(find(z>0))=nan作何解释
a1=-0.05;%微凸体1的参数y=a*x^2+b*y^2+c
b1=-0.2;
c1=5;
x=linspace(-sqrt(abs(c1/a1)),sqrt(abs(c1/a1)),100);
y=linspace(-sqrt(abs(c1/b1)),sqrt(abs(c1/b1)),100);
[x,y]=meshgrid(linspace(-sqrt(abs(c1/a1)),sqrt(abs(c1/a1)),100),linspace(-sqrt(abs(c1/b1)),sqrt(abs(c1/b1)),100));
z=a1*x.^2+b1*y.^2+c1;
z(find(z
matlab编程问题z(find(z>0))=nan作何解释a1=-0.05;%微凸体1的参数y=a*x^2+b*y^2+cb1=-0.2;c1=5;x=linspace(-sqrt(abs(c1/a1)),sqrt(abs(c1/a1)),100);y=linspace(-sqrt(abs(c1/b1)),sqrt(abs(c1/b1)),100);[x,y]=meshgrid(linspace(-sqrt(abs(c1/a1)),sqr
这是MATLAB绘图比较常用的一种做法.
把符合某个条件的值设为NaN,绘图时这些点就不会绘制,这样可以隐藏不合需要的那部分点.
就这个例子来说,是把满足z<0这个条件的点都换成NaN,也就是说,只绘制曲面的z>=0那部分(也可以把这句换成z(z<0)=NaN;效果完全相同).
比较一下,如果没有这句:
加上这句之后:
需要说明的是,由于这种做法是直接去掉一些网格点,往往会导致边缘不平滑.