huanghuan
2008-10-19, 21:17
给出一任意空间粒子的密度分布函数 n=f(x,y,z)=cos(z)*exp[-(x^2+y^2)/4],画出空间粒子密度的梯度场及等密度面。x、y的范围是[-2:0.5:2],z的范围是[0:0.5:4].
我的程序如下:
clear
>> x=-2:0.5:2;
>> y=x;
>> z=0:0.5:4;
>> [X,Y,Z]=meshgrid(x,y,z);
>> n=cos(Z).*exp(-(X.^2+Y.^2)/4);
>> [pX,pY,pZ]=gradient(n);
>> contour3(n);
??? Error using ==> contourc
Contour data must have 2 dimensions.
Error in ==> D:\MATLAB6p5\toolbox\matlab\specgraph\contours.m
On line 57 ==> CS=contourc(varargin{numarg_for_call});
Error in ==> D:\MATLAB6p5\toolbox\matlab\specgraph\contour3.m
On line 80 ==> [c,msg] = contours(varargin{1:nin});
我的程序如下:
clear
>> x=-2:0.5:2;
>> y=x;
>> z=0:0.5:4;
>> [X,Y,Z]=meshgrid(x,y,z);
>> n=cos(Z).*exp(-(X.^2+Y.^2)/4);
>> [pX,pY,pZ]=gradient(n);
>> contour3(n);
??? Error using ==> contourc
Contour data must have 2 dimensions.
Error in ==> D:\MATLAB6p5\toolbox\matlab\specgraph\contours.m
On line 57 ==> CS=contourc(varargin{numarg_for_call});
Error in ==> D:\MATLAB6p5\toolbox\matlab\specgraph\contour3.m
On line 80 ==> [c,msg] = contours(varargin{1:nin});