matlab作业.docx

上传人:b****5 文档编号:11755983 上传时间:2023-03-31 格式:DOCX 页数:21 大小:235.69KB
下载 相关 举报
matlab作业.docx_第1页
第1页 / 共21页
matlab作业.docx_第2页
第2页 / 共21页
matlab作业.docx_第3页
第3页 / 共21页
matlab作业.docx_第4页
第4页 / 共21页
matlab作业.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

matlab作业.docx

《matlab作业.docx》由会员分享,可在线阅读,更多相关《matlab作业.docx(21页珍藏版)》请在冰豆网上搜索。

matlab作业.docx

matlab作业

《MATLAB及其应用》上机作业

 

学院名称:

专业班级:

学生姓名:

学生学号:

 

20**年**月**日

作业1

1.用MATLAB可以识别的格式输入下面两个矩阵

再求出它们的乘积矩阵

并将

矩阵的右下角

子矩阵赋给

矩阵。

赋值完成后,调用相应的命令查看MATLAB工作空间的占有情况。

解:

A=[1234;2357;1357;3239;1894];

B=[1+4i43677;233554+2i;26+7i5342;189543];

C=A*B

D=C(4:

5,4:

6);

whos;

运行结果:

C=

1.0e+002*

Columns1through5

0.1500+0.0400i0.6000+0.2100i0.60000.45000.4500

0.2500+0.0800i1.0300+0.3500i1.03000.77000.7700

0.2400+0.0400i0.9900+0.3500i1.00000.71000.7000

0.2200+0.1200i1.0800+0.2100i1.11000.82000.7900

0.3900+0.0400i1.1400+0.6300i1.08000.93000.9900

Column6

0.3300+0.0400i

0.5700+0.0600i

0.5000+0.0600i

0.6200+0.0400i

0.6900+0.1600i

D=

82.000079.000062.0000+4.0000i

93.000099.000069.0000+16.0000i

NameSizeBytesClass

A5x4160doublearray

B4x6384doublearray(complex)

C5x6480doublearray(complex)

D2x396doublearray(complex)

Grandtotalis80elementsusing1120bytes

2.设矩阵

并求矩阵

的特征值和特征向量。

解:

A=[162313;511108;97612;414152];

a=norm(A)

B=inv(A)

C=A^3

D=2*A+inv(A)

E=3*inv(A)-A

G=eig(A)

[V,D]=eig(A)

运行结果:

a=34.2545

B=

1.02942.9338-2.9044-1.0000

2.55888.4926-7.9338-3.0000

-2.5294-8.30887.77943.0000

-1.0000-3.00003.00001.0000

C=

104789488958110485

9578101381006610083

99149874980610387

974710575106339921

D=

33.02946.93383.095625.0000

12.558830.492612.066213.0000

15.47065.691219.779427.0000

7.000025.000033.00005.0000

E=

-12.91183.8015-17.7132-7.0000

5.676514.4779-30.8015-23.0000

-10.5882-34.926517.3382-6.0000

-16.0000-17.0000-3.00001.0000

G=

34.2542

8.8722

-8.1811

0.0547

V=

-0.4981-0.82710.3813-0.2390

-0.49590.40750.0097-0.6708

-0.49750.01740.44080.6581

-0.50840.3868-0.81250.2445

D=

34.2542000

08.872200

00-8.18110

0000.0547

3.解下列矩阵方程:

解:

A=[010;100;001;];

B=[100;001;010;];

C=[1-43;20-1;1-20;];

X=inv(A)*C*inv(B)

运行结果:

X=

01.00000

1.0000-0.00000

-0.0000-0.00001.0000

4.一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。

求它在第10次落地时,共经过多少米?

第10次反弹有多高?

解:

sum=100;

i=0;

while(i<=9)

i=i+1;

h=100/2^i

sum=sum+2*h

end

结果

299.9023

0.0977

5.用MATLAB语言实现下面的分段函数

解:

clear;

x=input('x=')

a1=0;

a2=0;

a3=0;

ifx>10

a1=5

elseifabs(x)<=10

a2=(1/2)*x

else

a3=-5

end

end

运行结果:

x=15

a1=5

x=-15

a3=-5

x=8

a2=4

 

6.分别用for和while循环编写程序,求出

并考虑一种避免循环的简洁方法来进行求和,并比较各种算法的运行时间。

解:

%while循环

i=1;

sum=0;

while(i<=63)

sum=sum+(2^i);

i=i+1;

end

sum

运行结果:

sum=1.8447e+019

%for循环

sum=0

fori=1:

1:

63

sun=sum+(2^i)

i=i+1

end

sum

运行结果:

sum=1.8447e+019

7.应用MATLAB语言及二分法编写求解一元方程

在区间[3,6]的实数解的算法,要求绝对误差不超过0.001。

解:

A=[1-1459-70];

a=3;

b=6;

c=0.001;

whilec<0.5*(b-a),x1=(a+b)/2;

f1=polyval(A,x1);

fa=polyval(A,a);

fb=polyval(A,b);

iff1==0;x=x1;

elseiff1*fa>0;

a=x1;

elsef1*fb>0;

b=x1;

end

end

8.二阶系统的单位阶跃响应为

,在同一平面绘制

分别为0,0.3,0.5,0.707的单位阶跃响应曲线。

要求:

(1)

(1)四条曲线的颜色分别为蓝、绿、红、黄,线型分别为“——”、“……”、“oooooo”、“++++++”;

(2)添加横坐标轴和纵坐标轴名分别为“时间t”和“响应y”,并在平面图上添加标题“二阶系统曲线”和网格;

(3)在右上角添加图例(即用对应的字符串区分图形上的线),并分别在对应的响应曲线的第一个峰值处标示“zeta=0”、“zeta=0.3”、“zeta=0.5”、“zeta=0.707”。

解:

t=[0:

0.1:

10];

kos=0;

y=1-1/sqrt(1-kos^2)*exp(-kos*t).*sin(sqrt(1-kos^2)*t+2*cos(kos));

plot(t,y,'b-')

holdon;

kos=0.3;

y=1-1/sqrt(1-kos^2)*exp(-kos*t).*sin(sqrt(1-kos^2)*t+2*cos(kos));

plot(t,y,'g.')

holdon;

xlabel('时间t');

ylabel('响应y');

gridon;

title('二阶系统曲线');

legend('kos=0','kos=0.3')

gtext('kos=0')

gtext('kos=0.3')

9.绘制如下图所示的图形,把图形窗口分割为2行2列,窗口左上角画一正弦曲线

;窗口右上角画3条单边指数曲线

;窗口左下角画一矩形脉冲信号,脉冲宽度为1,高为2,开始时间为1;窗口右下角画一单位圆。

t=0:

0.01:

2;

subplot(2,2,1);plot(t,sin(2*pi*t));title('plot(x,2*PI*t)');gridon;

subplot(2,2,2);

plot(t,exp(-t));holdon;

plot(t,exp(-2*t),'g');holdon;

plot(t,exp(-3*t),'r');holdon;

title('exp(-t),exp(-2*t),exp(-3*t)');gridon;

x=[0112234];

y=[0022000];

subplot(2,2,3);

plot(x,y);

axis([04-0.53]);

title('pulsesignal');

symsxy

subplot(2,2,4);

ezplot(x^2+y^2-1);

axis([-1.51.5-1.21.2]);

title('circle');

xlabel('')

ylabel('')

 

10.已知函数

,试分别应用三维曲线图绘制命令plot3、三维网线图绘制命令mesh、三维曲面图绘制命令surf在同一窗口中绘制出3个子图。

x=-2:

0.1:

2;

[X,Y]=meshgrid(x);

Z=1./sqrt((1-X).^2+Y.^2)+1./sqrt((1+X).^2+Y.^2);

subplot(311);

plot3(X,Y,Z);

gridon;

axis([-11-11-19]);

subplot(312);

mesh(X,Y,Z);

axis([-11-11-19]);

subplot(313);

surf(X,Y,Z);

axis([-11-11-19]);

11.对合适的

范围选取分别绘制出下列极坐标图形:

(1)

(2)

clc

theta=0:

0.01:

2*pi;rho1=cos(7*theta./2);polar(theta,rho1),title('p=cos(7o/2)')

figure

(2);

rho2=1-cos(7*theta).^3;polar(theta,rho2),title('p=1-(cos(7o))^3')

 

12.求解下面两个方程构成的联立方程组在区间

内的解,并用绘图的方法绘出两曲线在同一坐标上的图,以验证求得的解的正确性。

clc

[x,y]=solve('(x-2)^2+3*(y-1)^2-3=0','y-6*(x-2)^2=0')

ezplot('(x-2)^2+3*(y-1)^2-3');holdon

ezplot('y-6*(x-2)^2=0');gridon

axis([04-14]);

作业2

1.求多项式

的乘积并求

的导数。

解:

a=[15713];b=[153];c=[13];

d=conv(a,b);

e=conv(d,c)

k=polyder(e)

运行结果:

e=11365168275297117

k=665260504550297

2.求当

时多项式

的值。

解:

a=[153513];b=[1453];c=[313];

d=conv(a,b);

e=conv(d,c);

polyval(e,3)

运行结果:

ans=2681280

3.试用不同的方法展开多项式

并比较其结果。

a=[11];b=[15];c=[147];

n=conv(conv(a^3,b^2),c)

运行结果:

n=Columns1through7

1171174299151107695

Column8

175

4.求下列多项式的根和导数

1)

解:

g=[1-615-4];

x=roots(g)

k=polyder(g)

运行结果:

x=

2.8494+2.2726i

2.8494-2.2726i

0.3011

k=3-1215

2)

解:

h=[1-5-14-10-3]

x=roots(h)

k=polyder(h)

运行结果:

x=

7.1589

-1.2754

-0.4418+0.3653i

-0.4418-0.3653i

k=4-15-28-10

5.对于有理多项式

(1)计算该多项式相除的结果;

(2)将该多项式展开为部分分式的形式;(3)计算

解:

P=[10,0,40,50,60,7];

Q=[1,3,2];

Z=[1,3];

A=conv(Q,Z)

[p,a]=polyder(P,A)

[r,p,k]=residue(P,A)

结果

A=16116

p=20180440490760889516283

a=1125814419313236

r=

1.0e+003*

-1.6165

0.5530

-0.0265

p=-3.0000

-2.0000

-1.0000

k=10-60290

6.在某次传感器输入输出特性实验中测得输入输出的一组数据如下表所示:

(输入)

1

2

3

4

5

(输出)

1.3

1.8

2.2

2.9

3.5

已知输入

和输出

可以近似成线性关系,即

求系数

并求当输入

时输出

的值。

解:

x=1:

1:

5;

y=[1.3,1.8,2.2,2.9,3.5];

A=polyfit(x,y,1)

x=8;

y=polyval(A,x)

结果

A=0.55000.6900

y=5.0900

7.根据人口理论的马尔萨斯模型可知,人口总数

可以采用指数函数

对人口数据进行拟合。

据统计,六十年代世界人口数据如下(单位:

亿)

t

1960

1961

1962

1963

1964

1965

1966

1967

1968

y

3.3918

3.4213

3.4503

3.4698

3.4763

3.4920

3.5133

3.5322

3.5505

试求马尔萨斯模型中的a,b值,并画出拟合曲线图,同时预测一下2010年的人口数值。

解:

t=1960:

1968;

t0=2010;

N=[29.7230.6131.5132.1332.3432.8533.5634.2034.83];

y=log(N);

p=polyfit(t,y,1);

plot(t,y,'ro');

holdon

y1=polyval(p,t);

plot(t,y1,'-')

y2010=exp(polyval(p,t0))

如图:

y2010=76.1543

8.某实验测得强度随时间变化的一组数据:

0

0.5

1

1.5

2

2.5

3

0

0.4794

0.8415

0.9915

0.9093

0.5985

0.1411

1)利用二次曲线拟合求出

秒处强度指标

2)利用样条曲线插值求出

秒处强度指标

解:

(1)解:

t=0:

0.5:

3;

y=[00.47940.84150.99150.90930.59850.1411];

p=polyfit(t,y,2);

plot(t,y,':

o');

holdon

y1=polyval(p,t);

plot(x,y1,'-*')

y(2.25)=polyval(p,2.25)

(2)解:

t=0:

0.5:

3;

y=[00.47940.84150.99150.90930.59850.1411];

t1=2.25;

x1=interpl(t,y,t1,'spline')

plot(t,y,'o-',t1,x1,'*:

')

9.因式分解

解:

g=30*x^6+157*x^5+460*x^4+800*x^3+851*x^2+534*x+108

factor(g)

结果

ans=223555771119

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1