资源描述
浅议matlab的功能和应用
数值计算
1、编程求满足的最小m值。
解:
m=1;
s=0;
while s<=10000
s=s+2^m;
m=m+1;
end
m=m-1;
di sp('m=');
disp(m);
运行结果:
m=
13
2、编写一个函数,计算下面函数的值,给出标量x的值,调用该函数后,返回y的值。
function [y]=myfun1(x)
选择一些数据测试你编写的函数。
function y=myfun1(x)
if x<=0
y=sin(x);
elseif x>0&x<=3
y=x;
else y=6-x;
end
return ;
3、编写一个函数,给出一个向量,生成如下范德蒙矩阵。
function [v]=myvander(x)
例如:>>v=myvander([2 3 4 5])
得v=
生成一些数据测试你写的函数。
function [v]=myvander(x)
n=length(x);
v(1:n)=1;
for i=n+1:n*n
a=i/n;
r=mod(i,n);
b=floor(a);
if r==0
r=n;
b=b-1;
end
v(i)=x(r)^b;
end
v=reshape(v,n,n)';
>> myvander([1 2 3])
ans =
1 1 1
1 2 3
1 4 9
>> myvander([ 1 4 6 8])
ans =
1 1 1 1
1 4 6 8
1 16 36 64
1 64 216 512
图像的绘制
1、在同一坐标系下绘制下面三个函数在tÎ[0,4p]的图象。
解:程序如下:
t=0:pi/100:4*pi;
y1=t;
y2=sqrt(t);
y3=4*pi*exp(-0.1*t).*sin(t);
plot(t,y1,t,y2,t,y3)
运行后得出的结果如图1所示
图1
2、编写程序,选择合适的步距,绘制下面函数在区间[-6,6]中的图象。
解: 程序如下:
>>x<=0;
>> y1=sin(x);
>> 0<x<=3;
>> y2=x;
>> x>3;
>> y3=-x+6;
>> plot(x,y1,x,y2,x,y3)
运行后得到的结果如图2所示:
图2
3、用compass函数画下面相量图
>>ua = 1 ;
>>ub = cos(-2*pi/3)+sin(-2*pi/3)*i ;
>> uc=cos(2*pi/3)+sin(2*pi/3)*i;
>>compass([ua,ub,uc,ua-ub,ub-uc,uc-ua]
解: >> ua = 1 ;
>>ub = cos(-2*pi/3)+sin(-2*pi/3)*i ;
>> uc=cos(2*pi/3)+sin(2*pi/3)*i;
>> compass([ua,ub,uc,ua-ub,ub-uc,uc-ua])
4、三维空间曲线绘制
>>
z=0:0.1:4*pi;
>>x=cos(z);
>>y=sin(z);
>>plot3(x,y,z)
解:
5、用mesh或surf函数,绘制下面方程所表示的三维空间曲面,x和y的取值范围设为[-3,3]。
解: 程序如下:
[x,y]=meshgrid(-3:0.5:3);
>> z=-x^2/10+y^2/10;
>> mesh(x,y,z)
展开阅读全文