Matlab 上机实验一、二3.求下列联立方程的解⎪⎪⎩⎪⎪⎨⎧=+-+-=-+=++-=--+41025695842475412743w z y x w z x w z y x w z y x >> a=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10];>> b=[4;4;9;4];>> c=a\b4.设⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡------=81272956313841A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-----=793183262345B ,求C1=A*B’;C2=A’*B;C3=A.*B,并求上述所有方阵的逆阵。
>> A=[1 4 8 13;-3 6 -5 -9;2 -7 -12 -8];>> B=[5 4 3 -2;6 -2 3 -8;-1 3 -9 7];>> C1=A*B'>> C2=A'*B>> C3=A.*B>> inv(C1)>> inv(C2)>> inv(C3)5.设 ⎥⎦⎤⎢⎣⎡++=)1(sin 35.0cos 2x x x y ,把x=0~2π间分为101点,画出以x 为横坐标,y 为纵坐标的曲线。
>> x=linspace(0,2*pi,101);>> y=cos(x)*(0.5+(1+x.^2)\3*sin(x));>> plot(x,y,'r')6.产生8×6阶的正态分布随机数矩阵R1, 求其各列的平均值和均方差。
并求该矩阵全体数的平均值和均方差。
(mean var )a=randn(8,6)mean(a)var(a)k=mean(a)k1=mean(k)i=ones(8,6)i1=i*k1i2=a-i1i3=i2.*i2g=mean(i3)g2=mean(g)或者u=reshape(a,1,48);p1=mean(u)p2=var(u)7.设x=rcost+3t,y=rsint+3,分别令r=2,3,4,画出参数t=0~10区间生成的x~y曲线。
>> t=linspace(0,10);>> r1=2;>> x1=(r1*cos(t)+3*t);>> y1=r1*sin(t)+3;>> r2=3;>> x2=(r2*cos(t)+3*t);>> y2=r2*sin(t)+3;>> r3=4;>> x3=(r3*cos(t)+3*t);>> y3=r3*sin(t)+3;>> plot(x1,y1,'r',x2,y2,'b',x3,y3,'m')8.设f(x)=x5- 4x4 +3x2- 2x+ 6(1) 在x=[-2,8]之间取100个点,画出曲线,看它有几个过零点。
(提示:用polyval 函数)>> x=linspace(2,8,100);>> y=polyval([1 0 -4 3 -2 6],x);>> plot(x,y,'b',x,0,'y')(2) 用roots函数求此多项式的根。
t=[1 0 -4 3 -2 6]p=roots(t)9.建立一个字符串向量,然后对该向量做如下处理:(1) 取第1~5个字符组成的子字符串。
(2) 将字符串倒过来重新排列。
(3) 统计字符串中小写字母的个数。
>> a='abcdef123456';>> subch=a(1:5)subch =abcde>> revch=a(end:-1:1)revch =654321fedcba>> k=find(a>='a'&a<='z');>> a(k)=a(k)-('a'-'A');>> char(a)>> length(a)>> length(k)10.利用帮助查找limit函数的用法,并自己编写,验证几个函数极限的例子。
limit(sin(x)/x) returns 1limit((x-2)/(x^2-4),2) returns 1/4limit((1+2*t/x)^(3*x),x,inf) returns exp(6*t)limit(1/x,x,0,'right') returns inflimit(1/x,x,0,'left') returns -inflimit((sin(x+h)-sin(x))/h,h,0) returns cos(x)v = [(1 + a/x)^x, exp(-x)];Matlab上机实验二1.验证所授课程的课件。
2.设x=sint, y=sin(nt+a),(1) 若a=1,令n =1,2,3,4,在四个子图中分别画出其曲线。
(2) 若n=2,取a=0,π/3,π/2,及π,在四个子图中分别画出其曲线。
(1)a=1; x=sin(t);y1=sin(1*t+a);y2=sin(2*t+a);y3=sin(3*t+a);y4=sin(4*t+a); subplot(2,2,1);plot(x,y1);subplot(2,2,2);plot(x,y2);subplot(2,2,3);plot(x,y3);subplot(2,2,4);plot(x,y4)(2)n=2;x=sin(t);y1=sin(2*t+0);y2=sin(2*t+pi/3);y3=sin(2*t+pi/2);y4=sin(2*t+pi);su bplot(2,2,1);plot(x,y1);subplot(2,2,2);plot(x,y2);subplot(2,2,3);plot(x,y3);su bplot(2,2,4);plot(x,y4)3.绘制)(222y x e x z +-=在定义域x=[-2,2],y=[-2,2]内的曲面。
(利用meshgrid )x=-2:2;y=x;[X,Y]= meshgrid(x,y);Z=X^2*exp(-(X^2+Y^2));mesh(X,Y,Z)4.求代数方程3x 5+4x 4+7x 3+2x 2+9x+12=0的所有根。
(利用roots 函数)p=[3 4 7 2 9 12];roots(p)5.把1开五次方,并求其全部五个根。
(提示:解x 5-1=0)p=[1 0 0 0 0 -1];roots(p) 6,⎪⎩⎪⎨⎧≤≤-+-<≤-+--<≤----=312/)34(111132/)34(222x x x x x x x x y ,画出在[]3,3-上的曲线。
x1=-3:0.01:-1;y1=(-x1.^2-4.*x1-3)/2; x2=-1:0.01:1;y2=-x2.^2+1;x3=1:0.01:3;y3=(-x3.^2+4.*x3-3)/2;plot(x1,y1);hold on; plot(x2,y2);hold on; plot(x3,y3)Matlab 上机实验三1.设,求>> syms x>> y=x*exp(2*x);Diff(y,10)2.设,求syms x>> y=sin(x)^4+cos(x)^4;>> y^103.设,求>> syms x y>> z=y^4*sin(x)^4+x^4*cos(y)^4;>> diff(z,'x')>> syms x y>> y=1/((x^2+1)*(x^2+x));>> int(y)>> int((sqrt((9-x^2)^3)/x^6))>> syms x>> int(1/(x+x^3),1,2)>> simple(ans)7.求级数的和: ∑∞=+122n n n (利用帮助,查找symsum ) >> syms n>> symsum((n+2)/2^n,n-1,inf)>> simple(ans)8.利用函数int 计算二重不定积分 >> syms x y>> int(int((x+y)*exp(-x*y))) 9.设方程(1)0)cos(3=+a x ,(2)0)cos(3=+x x 及(3)0)cos(3=+ax x ,用符号运算工具箱函数solve 分别求x 的解。
用a=0.5代入,求 x 的数值解,并与用roots 函数所求的结果进行比较。
>> syms x1 x2 x3>> x1=solve('x1^3+cos(0.5)=0');>> x2=solve('x2^3+cos(x2)=0');>> x3=solve('x3^3+cos(0.5*x3)=0');>> x1,x2,x3>> p=[1 0 0 cos(0.5)]; >> roots(p)10.求微分方程的解: y'''-y''=x ,y''(2)=4,y'(1)=7,y(1)=8>> syms x y>> dsolve('D3y-D2y=x','D2y(2)=4','Dy(1)=7','y(1)=8')11.设 z z y z z x 3cos ,3sin ==, 要求在z=0~10区间内画出x,y,z 三维曲线。
>> z=0:0.01:10;>> x=z.*sin(3*z);>> y=z.*cos(3*z);>> plot3(x,y,z)12.设 )(222y x e x z +-=,画出定义域x=[-2,2],y=[-2,2]内的曲面图。
>> [x,y]=meshgrid([-2:0.1:2]);>> z=x.^2.*exp(-x.^2-y.^2);>> mesh(x,y,z)13.设z=0.05x-0.05y+0.1; 画出z 的曲面(平面)图。