1.创建一个10*10的矩阵,矩阵所有对角元素为1,其余元素为10~20之间(包括10和20)的均匀分布随机数,并得出该矩阵中大于13且小于18的元素个数,同时求得这些元素的平均数。
1 2 3 4 5 6 7 8 9 10 11
| A=unifrnd(10,20,10,10); A(logical(eye(size(A))))=1; B=find(A>13&A<18); C=length(B); D=mean(C);
|
2.用mesh函数做出函数f(x,y)=-[xsin(9πy)+ycos(25πx)+20]在x^2+y^2≤10的图像。
1 2 3 4 5 6 7 8 9 10 11 12
| syms x y t; t=linspace(-1,1); x=sqrt(10)*cos(t); y=sqrt(10)*sin(t); [xx,yy]=meshgrid(x,y); f_xy=-1*(xx*sin(9*pi*yy)+yy*cos(25*pi*xx)+20); mesh(xx,yy,f_xy);
|
3.生成30阶的希尔伯特矩阵A,并剔除矩阵的第3到10行,剔除矩阵的4到13列,得到矩阵B,再逆序选取矩阵B的1到10行,顺序选取矩阵的2到11列,得到新矩阵C。(hilb(n))
1 2 3 4 5 6 7 8
| A=hilb(30); A(3:10,:)=[]; A(:,4:13)=[]; C=A(10:-1:1,2:11);
|
4.解常微分方程组(1)dx/dt+2x-dy/dt=10cos(t),x(0)=2;(2)dx/dt+dy/dt+2y=4e^(-2t),y(0)=2,并作出y-x(横坐标为x,纵坐标为y)在t∈(0,10)之间的图像(时间间距尽量小)
1 2 3 4 5 6 7 8 9 10 11 12
| syms x y t; [x,y]=dsolve('Dx+2*x-Dy=10*cos(t)','Dx+Dy+2*y=4*exp(-2*t)','x(0)=2','y(0)=2'); X=subs(x,'t',0:0.1:10); Y=subs(y,'t',0:0.1:10); X=double(X); Y=double(Y); plot(X,Y);
|
5.解矩阵方程组H*X=B,H为100阶希尔伯特矩阵,X=(x1,x2,x3,……,x100)T,B=(1,2,3,……,100)T
1 2 3 4 5 6 7
| H=hilb(100); B=ones(100,1); X=invhilb(100)*B;
|
刚刚开始学matlab没有几天,对于画图部分还是不是特别熟悉,还在熟悉各种命令中,欢迎指教!