如何用matlab画出一个椭球体?请问如何用matlab画出一个椭球体.另外,请问有没有办法把matlab里矩阵中复数变为实数(虚部为0的保留实数,虚部不为0的变为实数0)?非常感谢“化学工程”大哥给

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 12:10:34
如何用matlab画出一个椭球体?请问如何用matlab画出一个椭球体.另外,请问有没有办法把matlab里矩阵中复数变为实数(虚部为0的保留实数,虚部不为0的变为实数0)?非常感谢“化学工程”大哥给

如何用matlab画出一个椭球体?请问如何用matlab画出一个椭球体.另外,请问有没有办法把matlab里矩阵中复数变为实数(虚部为0的保留实数,虚部不为0的变为实数0)?非常感谢“化学工程”大哥给
如何用matlab画出一个椭球体?
请问如何用matlab画出一个椭球体.
另外,请问有没有办法把matlab里矩阵中复数变为实数(虚部为0的保留实数,虚部不为0的变为实数0)?
非常感谢“化学工程”大哥给出的答案,那两个命令果然能画出椭球体.不过,这里还需要补充一下,请各位大侠相助.
我做椭球的时候用的命令是
x=-3:0.1:3;
y=-2:0.1:2;
[X,Y]=meshgrid(x,y);
z0=sqrt(1-X.*X/9-Y.*Y/4);
surf(X,Y,z0);
软件提示:
Error using ==> surf
X,Y,Z,and C cannot be complex.
请问是为什么?这些命令在有些机器上又能运行得好好的,没一点问题,为什么到我机子上就不行了呢
我装的是matlab 7.3.0.267(R2006b)这个版本,能运行的是matlab 7.0 版本.
是不是要做什么设置,使矩阵中的实数就是实数,没有虚部(这些命令运行后z0里的实数在我的电脑上相比都有一个等于0的虚部)呢?
化学工程大哥,为什么我用你给的方法还是得不到椭球体呢?
我是说后两种方法,3和4.
第三种画出来的是两个不完整的半椭球,下面一个还没显示完全,而第四个画出来的更是神奇,只有两个面了.

如何用matlab画出一个椭球体?请问如何用matlab画出一个椭球体.另外,请问有没有办法把matlab里矩阵中复数变为实数(虚部为0的保留实数,虚部不为0的变为实数0)?非常感谢“化学工程”大哥给
补充:
【3】你用这个吧,因为开方使z0成为复数了.
>> ezsurf('sqrt(1-X.*X/9-Y.*Y/4)')
【4】或改变x、y的取值范围:
>> x=-2:0.1:2;
y=-1:0.1:1;
[X,Y]=meshgrid(x,y);
z0=sqrt(1-X.*X/9-Y.*Y/4);
surf(X,Y,z0);
【1】
>>[X,Y,Z]=ELLIPSOID(0,0,0,1,2,3,40);
>> surf(X,Y,Z)
【2】
clear;clc
x=[3+2*i;5];
n=length(x);
xx=zeros(size(x));
for k=1:n
if imag(x(k))==0
xx(k)=real(x(k));
else
xx(k)=0;
end
end
xx
运行结果:
xx =
0
5