关于球面和圆柱面所围区域
怎样用MATLAB画出关于球面x^2+y^2+(z-1)^2=r^2和圆柱面x^2+y^2=rx所围区域?多谢帮忙哈!
回复 楼主 满城飞絮 的帖子
能求出x,y,z的坐标范围吗?回复 沙发 ch_j1985 的帖子
r=1哈画关于球面x^2+y^2+(z-1)^2=1和圆柱面x^2+y^2=x所围区域? 将圆柱面的x、y坐标范围代入球面方程,求出z就可以画了
搜索一下版面相关帖子
回复 地板 ch_j1985 的帖子
再请教一个问题哈画球面x^2+y^2+(z-1)^2=1的代码怎么写安?
我试了很久都不晓得怎么写
多谢!多谢!多谢! z=sqrt(1-(x^2+y^2))+1
z=-sqrt(1-(x^2+y^2))+1
由这两个方程可求出z,然后再画图
回复 6楼 ch_j1985 的帖子
还是不行啊x=0:0.1:1;
y=0:0.1:1;
=meshgrid(x,y);
Z=sqrt(1-(X.^2+Y.^2))+1;
Z=-sqrt(1-(X.^2+Y.^2))+1;
mesh(X,Y,Z)
??? Error using ==> surface
X, Y, Z, and C cannot be complex.
麻烦帮我看一下哪儿有问题?
谢谢!
回复 7楼 满城飞絮 的帖子
出现复数了改为三角函数试试
theta=linspace(0,2*pi);
x=1/2*(1+cos(theta));
y=1/2*sin(theta);
回复 8楼 ch_j1985 的帖子
还是不行啊结果和刚才一样!
complex!
回复 9楼 满城飞絮 的帖子
呵呵,把所有复数删掉就是了复数点本来也就是落在球外面了 原帖由 满城飞絮 于 2008-11-16 18:16 发表 http://www.chinavib.com/forum/images/common/back.gif
再请教一个问题哈
画球面x^2+y^2+(z-1)^2=1的代码怎么写安?
我试了很久都不晓得怎么写
多谢!多谢!多谢!
clc
clear
% by friendchj
r=1;%半径
x0=0;%中心
y0=0;
z0=1;
theta=(0:0.1:2)*pi;
phi=(0:0.1:2)*pi;
x=zeros(length(theta),length(phi));
y=x;
z=x;
for i=1:length(theta)
for j=1:length(phi)
x(i,j)=r*sin(theta(i))*cos(phi(j))+x0;
y(i,j)=r*sin(theta(i))*sin(phi(j))+y0;
end
z(i,:)=r*cos(theta(i))+z0;
end
surf(x,y,z)
axis square 原帖由 满城飞絮 于 2008-11-16 13:20 发表 http://www.chinavib.com/forum/images/common/back.gif
r=1哈
画关于球面x^2+y^2+(z-1)^2=1和圆柱面x^2+y^2=x所围区域?
呵呵,画了一个
clc
clear
% by friendchj
=sphere;
surf(x,y,z+1)
shading flat
=cylinder(0.5);
hold on
mesh(x-0.5,y,z*3)
axis square 呵呵 非常感谢哈!
回复 10楼 wwbeyondww 的帖子
怎么删掉复数哦? 原帖由 满城飞絮 于 2008-11-17 19:52 发表 http://www.chinavib.com/forum/images/common/back.gif怎么删掉复数哦?
我的方法不会产生复数,如果要删除复数,可以先判断一个数的虚部是否为零,若不为零,则可以赋以nan。
页:
[1]
2