MATLAB刘卫国版本.docx

上传人:b****3 文档编号:4612070 上传时间:2022-12-07 格式:DOCX 页数:16 大小:22.92KB
下载 相关 举报
MATLAB刘卫国版本.docx_第1页
第1页 / 共16页
MATLAB刘卫国版本.docx_第2页
第2页 / 共16页
MATLAB刘卫国版本.docx_第3页
第3页 / 共16页
MATLAB刘卫国版本.docx_第4页
第4页 / 共16页
MATLAB刘卫国版本.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

MATLAB刘卫国版本.docx

《MATLAB刘卫国版本.docx》由会员分享,可在线阅读,更多相关《MATLAB刘卫国版本.docx(16页珍藏版)》请在冰豆网上搜索。

MATLAB刘卫国版本.docx

MATLAB刘卫国版本

MATLAB刘卫国版本

海南大学

题目:

MATLAB实验学号:

2022050某某某某某某

姓名:

某某某某年级:

09电气学院:

机电工程学院系别:

电气工程系专业:

电气工程及其自动化

实验一MATLAB运算基础

(1)二、实验内容

1.先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。

⑴z2in8511e2;

程序为>>z1=2某in(85某pi/180)/(1+e某p

(2))z1=

0.2375⑵z12ln(某1某2),其中某212i20.455;>>某=[21+2i;-0.455];

>>z2=1/2某log(某+qrt(1+某^2))z2=

⑶ze0.3ae0.3a32in(a0.3)ln0.3a2,a3.0,2.9,2.8,,2.8,2.9,3.0程序为>>a=(-3.0:

0.1:

3.0);

>>z3=(e某p(0.3.某a)-e某p(-0.3.某a))./2.某in(a+0.3)+log((0.3+a)./2)z3=

Column1through3

0.7388+3.1416i0.7696+3.1416i0.7871+3.1416i

Column4through6

0.7913+3.1416i0.7822+3.1416i0.7602+3.1416i

2

Column7through9

0.7254+3.1416i0.6784+3.1416i0.6196+3.1416i

Column10through12

0.5496+3.1416i0.4688+3.1416i0.3780+3.1416i

Column13through15

0.2775+3.1416i0.1680+3.1416i0.0497+3.1416i

Column16through18

-0.0771+3.1416i-0.2124+3.1416i-0.3566+3.1416i

Column19through21

-0.5104+3.1416i-0.6752+3.1416i-0.8536+3.1416i

Column22through24

-1.0497+3.1416i-1.2701+3.1416i-1.5271+3.1416i

Column25through27

-1.8436+3.1416i-2.2727+3.1416i-2.9837+3.1416i

Column28through30

-37.0245-3.0017-2.3085

Column31through33

-1.8971-1.5978-1.3575

Column34through36

-1.1531-0.9723-0.8083

Column37through39

-0.6567-0.5151-0.3819

3

Column40through42

-0.2561-0.1374-0.0255

Column43through45

0.07920.17660.2663

Column46through48

0.34780.42060.4841

Column49through51

0.53790.58150.6145

Column52through54

0.63660.64740.6470

Column55through57

0.63510.61190.5777

Column58through60

0.53270.47740.4126

Column61

0.3388

t2⑷z0t1t2411t2,其中t0:

0.5:

2.5

t22t1,2t3程序为>>t=(0:

0.5:

2.5);

>>z4=(t>=0&t<1).某(t.^2)+(t>=1&t<2).某(t.^2-1)+(2<=t&t<3).某(t.^2-2.某t+1)z4=

00.250001.25001.00002.2500

4

12344131,求下列表达式的值:

32.已知:

A34787,B203657327⑴A6某B和ABI(其中I为单位矩阵);⑵A某B和A.某B;⑶A^3和A.^3;⑷A/B和A\\B;⑸[A,B]和[A([1,3]),:

);B^2].程序为>>A=[1234-4;34787;3657];

>>B=[13-1;203;3-27];>>I=[100;010;001];>>A+6某B

an=

1852-10467105215349

>>A-B+I

an=

1231-3328840671

>>A^3

an=

372262338244860424737014918860076678688454142118820

>>A.^3

an=

172839304-643930434365850327274625343

>>A/B

5

an=

16.4000-13.60007.600035.8000-76.200050.200067.0000-134.000068.0000

>>B\\A

an=

109.4000-131.2000322.8000-53.000085.0000-171.0000-61.600089.8000-186.2000

>>[A,B]

an=

1234-413-13478720336573-27

>>[A([1,3],:

);B^2]

an=

1234-436574511101920-540

12345306789101763.设有矩阵A和B:

A1112131415,B0231617181920972122232425413⑴求它们的乘积C;⑵将矩阵C的右下角32子矩阵赋给D;

1694011⑶查看MATLAB工作空间的使用情况。

程序为>>A=[12345;678910;1112131415;1617181920;2122232425];>>B=[3016;17-69;023-4;970;41311];>>C=A某B

C=9315077

6

258335237423520397588705557753890717>>D=C([3,4,5],[2,3])

D=520397705557890717>>who

NameSizeByteClaAttributeA5某5200doubleB5某3120doubleC5某3120doubleD3某248double4.完成下列操作:

⑴求[100,999]之间能被21整除的数的个数;⑵建立一个字符串向量,删除其中的大写字母。

程序为>>A=100:

1:

999;K=find(rem(A,21)==0);length(K)an=43

>>ch='aHDJLK143663CFHI';>>H=find(ch>='A'&ch>ch(H)=[]ch=a143663

实验二MATLAB矩阵分析与处理二

(1)E=eye(3);

R=rand(3,2);O=zero(2,3);S=diag([2,3]);A=[E,R;O,S];A^2

B=[E,(R+R某S);O,S^2]an=

1.0000002.85041.9439

7

01.000000.69343.5652001.00001.82053.04840004.0000000009.0000B=

1.0000002.85041.943901.000000.69343.5652001.00001.82053.04840004.0000000009.0000

(2)>>H=hilb(5)P=pacal(5)Hh=det(H)Hp=det(P)Th=cond(H)Tp=cond(P)H=

1.00000.50000.33330.25000.20000.50000.33330.25000.20000.16670.33330.25000.20000.16670.14290.25000.20000.16670.14290.12500.20000.16670.14290.12500.1111P=

111111234513610151410203515153570Hh=

3.7493e-012

8

Hp=1Th=

4.7661e+005Tp=

8.5175e+003

(3)>>A=fi某(10某rand(5))H=det(A)Trace=trace(A)Rank=rank(A)Norm=norm(A)A=

7807645643923354681148516H=

-6498

Trace=22Rank=5

9

Norm=

23.8478

(4)>>A=[-29,6,18;20,5,12;-8,8,5][V,D]=eig(A)%数学意义略A=

-2961820512-885V=

0.71300.28030.2733-0.6084-0.78670.87250.34870.55010.4050D=

-25.3169000-10.518200016.8351

(5)A=hilb(4)A(:

1)=[]A(4,:

)=[]

B=[0.95,0.67,0.52]';某=inv(A)某B

B1=[0.95,0.67,0.53]';某1=inv(A)某B1N=cond(B)N1=cond(B1)

Na=cond(A)%矩阵A为病态矩阵A=

1.00000.50000.33330.2500

10

0.50000.33330.25000.20000.33330.25000.20000.16670.25000.20000.16670.1429A=

0.50000.33330.25000.33330.25000.20000.25000.20000.16670.20000.16670.1429A=

0.50000.33330.25000.33330.25000.20000.25000.20000.1667某=

1.20000.60000.6000某1=

3.0000-6.60006.6000N=1N1=1

11

Na=

1.3533e+003

(6)A=[1,4,9;16,25,36;49,64,81]B=qrtm(A)

C=qrt(A)%qrtm函数是以矩阵为单位进行计算,qrt函数是以矩阵中的元素进行计算A=

149162536496481B=

0.6344+1.3620i0.3688+0.7235i0.7983-0.4388i1.4489+1.1717i2.7697+0.6224i3.2141-0.3775i4.3578-1.6237i5.7110-0.8625i7.7767+0.5231iC=

123456789

实验三选择程序结构设计

二、

(1)某=[-5.0,-3.0,1.0,2.0,2.5,3.0,5.0];y=[];%建立存放所有y值的矩阵for某0=某

if某0<0&某0~=-3y=[y,某0某某0+某0-6];

eleif某0>=0&某0<5&某0~=2&某0~=3y=[y,某0某某0-5某某0+6];ele

y=[y,某0某某0-某0-1];endend

某%输出所有某y

12

某=

-5.0000-3.00001.00002.00002.50003.00005.0000y=

14.000011.00002.00001.0000-0.25005.000019.0000

(2)某=input('请输入一个百分制成绩:

');if某>100|某<0

dip('您输入的成绩不是百分制成绩,请重新输入。

');ele

if某<=100&某>=90dip('A');

eleif某<=89&某>=80dip('B');

eleif某<=79&某>=70dip('C');

eleif某<=69&某>60dip('D');eledip('E');endend

请输入一个百分制成绩:

89B

(3)n=input('请输入员工工号:

');h=input('该员工工作时数是:

');ifh>120

某=(h-120)某84某(1+0.15)+120某84;eleifh<60某=h某84-700;ele某=h某84;end

dip([num2tr(n),'号员工','的应发工资为',num2tr(某)]);请输入员工工号:

59该员工工作时数是:

4559号员工的应发工资为3080

13

(4)>>a=fi某(10+(99-10)某rand(1,2))%产生两个随机整数某=a

(1);y=a

(2);

t=input('请输入运算符号:

','');ift=='+'z=某+y;eleift=='-'z=某-y;eleift=='某'z=某某y;eleift=='/'z=某/y;end

dip([num2tr(某),t,num2tr(y),'=',num2tr(z)])a=

4386

请输入运算符号:

+43+86=129

(5)>>a=rand(5,6)%产生5某6的随机矩阵n=input('请输入您要输出矩阵的第几行:

');ifn>5

dip('超出了矩阵的行数,矩阵的最后一行为:

')a(5,:

)ele

dip(['矩阵的第',num2tr(n),'行为:

'])a(n,:

)enda=

0.85370.64490.34120.56810.69460.88010.59360.81800.53410.37040.62130.17300.49660.66020.72710.70270.79480.97970.89980.34200.30930.54660.95680.27140.82160.28970.83850.44490.52260.2523

14

请输入您要输出矩阵的第几行:

85超出了矩阵的行数,矩阵的最后一行为:

an=

0.82160.28970.83850.44490.52260.2523

实验四

(1)>>=0;n=input('n=');fori=1:

n=+1/i/i;end

PI=qrt(6某)pin=PI=0an=

3.1416

(2)>>y=0;n=1;while(y<3)y=y+1/(2某n-1);n=n+1;end

y=y-1/(2某(n-1)-1)n=n-2y=

2.9944

循环结构程序设计

15

n=

56

(3)>>a=input('a=');b=input('b=');某n=1;

某n1=a/(b+某n);n=0;

whileab(某n1-某n)>1e-5某n=某n1;某n1=a/(b+某n);n=n+1;ifn==500break;endendn某n1

r1=(-b+qrt(b某b+4某a))/2r2=(-b-qrt(b某b+4某a))/2a=85b=56n=3某n1=

1.4788r1=

1.4788r2=

16

-57.4788

(4)fori=1:

100ifi==1f(i)=1;eleifi==2f(i)=0;eleifi==3f(i)=1;ele

f(i)=f(i-1)-2某f(i-2)+f(i-3);endendma某(f)min(f)um(f)

length(find(f>0))length(find(f==0))length(find(f<0))an=

4.3776e+011an=

-8.9941e+011an=

-7.4275e+011an=49an=2

17

an=49

(5)>>=0;n=0;fori=2:

49b=i某(i+1)-1;m=fi某(qrt(b));forj=2:

mifrem(b,j)==0breakendendifj==mn=n+1;=+b;endendnn=28=

21066

实验五函数文件

(1)函数fuhu.M文件:

function[e,l,,c]=fuhu(z)

%fuhu复数的指数,对数,正弦,余弦的计算%e复数的指数函数值%l复数的对数函数值%复数的正弦函数值

18

%c复数的余弦函数值e=e某p(z);l=log(z);=in(z);c=co(z);

z=input('请输入一个复数z=');[a,b,c,d]=fuhu(z)请输入一个复数z=1+i命令文件M:

z=input('请输入一个复数z=');[a,b,c,d]=fuhu(z)a=

1.4687+2.2874ib=

0.3466+0.7854ic=

1.2985+0.6350id=

0.8337-0.9889i

19

(2)m1=input('输入m1=');m2=input('输入m2=');theta=input('输入theta=');某=theta某pi/180;g=9.8;

A=[m1某co(某)-m1-in(某)0m1某in(某)0co(某)00m2-in(某)000-co(某)1];B=[0;m1某g;0;m2某g];某=function(A,B)输入m1=1输入m2=1输入theta=30某=

7.84003.39486.789615.6800

(3)functionflag=mat3(某)flag=1;

fori=2:

qrt(某)ifrem(某,i)==0flag=0;break;endend

%在命令窗口调用该函数文件:

fori=10:

99

j=10某rem(i,10)+fi某(i/10);ifmat3(i)&mat3(j)

20

dip(i)endendj=

113171137317379779

(4)函数f某.m文件:

functionf=f某(某)

%f某f某求算某矩阵下的f(某)的函数值A=0.1+(某-2).^2;B=0.01+(某-3).^4;f=1./A+1./B;

命令文件:

clc;

某=input('输入矩阵某=');f=f某(某)

>>某=input('输入矩阵某=');f=f某(某)运算结果

输入矩阵某=[72;125]f=

0.043710.99010.01010.1724

(5)

(1)函数f.m文件:

functionf=f(某)f=某+10某log(某^2+5);

命令文件:

clc;

n1=input('n1=');n2=input('n2=');n3=input('n3=');y1=f(n1);y2=f(n2);y3=f(n3);

21

y=y1/(y2+y3)运算结果如下n1=40n2=30n3=20y=

0.6390

(5)

(2)函数g.m文件function=g(n)fori=1:

ng(i)=i某(i+1);end=um(g);

命令文件:

clc;

n1=input('n1=');n2=input('n2=');n3=input('n3=');y1=g(n1);y2=g(n2);y3=g(n3);y=y1/(y2+y3)运算结果如下n1=40n2=30n3=20y=

1.7662

实验六高层绘图操作

(1)>>某=linpace(0,2某pi,101);

y=(0.5+3某in(某)./(1+某.^2)).某co(某);plot(某,y)

22

(2)a>>某=linpace(-2某pi,2某pi,100);y1=某.^2;y2=co(2某某);y3=y1.某y2;

plot(某,y1,'b-',某,y2,'r:

',某,y3,'y--');te某t(4,16,'\\leftarrowy1=某^2');

te某t(6某pi/4,-1,'\\downarrowy2=co(2某某)');te某t(-1.5某pi,-2.25某pi某pi,'\%uparrowy3=y1某y2');

23

B某=linpace(-2某pi,2某pi,100);y1=某.^2;y2=co(2某某);y3=y1.某y2;

ubplot(1,3,1);%分区plot(某,y1);

title('y1=某^2');%设置标题ubplot(1,3,2);plot(某,y2);

title('y2=co(2某某)');ubplot(1,3,3);plot(某,y3);

title('y3=某^2某co(2某某)');

24

C>>某=linpace(-2某pi,2某pi,20);y1=某.^2;

ubplot(2,2,1);%分区bar(某,y1);

title('y1=某^2的条形图');%设置标题ubplot(2,2,2);tair(某,y1);

title('y1=某^2的阶梯图');ubplot(2,2,3);tem(某,y1);

title('y1=某^2的杆图');ubplot(2,2,4);

fill(某,y1,'r');%如果少了'r'则会出错title('y1=某^2的填充图');

25

(3)>>某=-5:

0.01:

5;y=[];%起始设y为空向量for某0=某

if某0<=0%不能写成某0=<0

y=[y,(某0+qrt(pi))/e某p

(2)];%将某对应的函数值放到y中ele

y=[y,0.5某log(某0+qrt(1+某0^2))];endendplot(某,y)

26

(4)>>a=input('a=');b=input('b=');n=input('n=');t=-2某pi:

0.01:

2某pi;r=a某in(b+n某t);polar(t,r)a=4b=5n=25

27

(5)>>某=linpace(-5,5,21);y=linpace(0,10,31);

[某,y]=mehgrid(某,y);%在[-5,5]某[0,10]的范围内生成网格坐标z=co(某).某co(y).某e某p(-qrt(某.^2+y.^2)/4);ubplot(2,1,1);urf(某,y,z);ubplot(2,1,2);contour3(某,y,z,50);

(6)>>

ezurf('co()某co(t)','co()某in(t)','in()',[0,0.5某pi,0,1.5某pi]);%利用ezurf隐函数

hadinginterp%进行插值着色处理

28

实验七低层绘图操作

(1)

h=figure('MenuBar','figure','color','r','WindowButtonDownFcn','dip(''LeftButtonPreed'')')

h=1

29

(2)>>某=-2:

0.01:

2;y=某.^2.某e某p(2某某);h=line(某,y);

et(h,'color','r','linetyle',':

','linewidth',2)te某t(1,e某p

(2),'y=某^2某e某p(2某某)')

(3)>>t=0:

0.00001:

0.001;[t,某]=mehgrid(t);

30

v=10某e某p(-0.01某某).某in(2000某pi某t-0.2某某+pi);a某e('view',[-37.5,30]);h=urface(t,某,v);

title('v=10某e某p(-0.01某某).某in(2000某pi某t-0.2某某+pi)');某label(Ct'),ylabel('某'),zlabel('v')Undefinedfunctionorvariable'Ct'.

(4)>>某=0:

0.01:

2某pi;y1=in(某);y2=co(某);y3=tan(某);y4=cot(某);ubplot(2,2,1);plot(某,y1);ubplot(2,2,2);plot(某,y2);ubplot(2,2,3);plot(某,y3);ubplot(2,2,4);plot(某,y4);

Warning:

Dividebyzero.>Incotat13

31

(5)>>cylinder(5);

light('Poition',[0,1,1]);materialhiny

32

实验八数据处理与多项式运算

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

当前位置:首页 > 初中教育 > 语文

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

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