Matlab详细学习讲义.docx

上传人:b****5 文档编号:12304829 上传时间:2023-04-18 格式:DOCX 页数:97 大小:996.95KB
下载 相关 举报
Matlab详细学习讲义.docx_第1页
第1页 / 共97页
Matlab详细学习讲义.docx_第2页
第2页 / 共97页
Matlab详细学习讲义.docx_第3页
第3页 / 共97页
Matlab详细学习讲义.docx_第4页
第4页 / 共97页
Matlab详细学习讲义.docx_第5页
第5页 / 共97页
点击查看更多>>
下载资源
资源描述

Matlab详细学习讲义.docx

《Matlab详细学习讲义.docx》由会员分享,可在线阅读,更多相关《Matlab详细学习讲义.docx(97页珍藏版)》请在冰豆网上搜索。

Matlab详细学习讲义.docx

Matlab详细学习讲义

《MATLAB软件应用》讲义[第2/16次课]

第1章基础准备及入门

一点名

二作业讲评

三复习提问

MATLAB界面由几大组件组成?

MATLAB的搜索路径主要有什么应用途径?

四上机练习内容

启动MATLAB。

在D盘根目录下,以“学号_姓名”的格式创建文件夹,并在Matlab中将该目录设置为CurrentFolder。

(利用MATLABToolbar中CurrentFolder组合框后的按钮)。

以下为本章教学必须掌握的知识点。

在MATLAB的CommandWindow中练习以下代码,并观察系统输出,并逐行进行注释。

本次课结束后将代码文件上传。

在MATLAB程序界面中进行以下操作:

1上机实习内容提示及要求

启动MATLAB后,依次练习MATLAB的菜单项、工具栏和CommandWindow、CurrentFolder、CommandHistory、Workspace等主要组件的基本功能,按指定内容在MATLAB程序界面下进行操作练习。

2上机实习内容

在MATLAB程序界面中进行以下操作:

1)CommandWindow指令窗口在集成窗体和独立窗体之间切换(Undock/Dock按钮)

2)在CommandWindow中运行以下指令,掌握换行符(...)的使用

>>(12+2*(7-4))/3^2

>>S=1-1/2+1/3-1/4+1/5-1/6+1/7-1/8

>>S=1-1/2+1/3-1/4+…

+1/5-1/6+1/7-1/8

3)在CommandWindow中分别输入以下数值,并按回车,观察MATLAB的输出(数值如3,-99,0.001,9.456,1.3e-3,4.5e33,eps,等)

4)以下实例涉及变量的定义规则,在CommandWindow中分别输入并按回车,观察MATLAB的输出结果.输出结果为错误提示时,分析出现错误的原因.

>>xyz_4=32.75

>>var1=3.09e-5*1028

>>4xyz=32.75

>>4*xyz=198.28

>>4,xyz=198.28

5)在CommandWindow中输入下列数学常数,并按回车:

eps,i,j,Inf,inf,intmax,NaN,nan,pi,realmax,realmin,观察并分析系统的输出。

6)按顺序输入并执行以下指令,观察系统输出,掌握format指令的用法

>>format

>>pi

>>formatshort

>>pi

>>formatlonge

>>pi

>>formatlong

>>pi

7)在CommandHistory中分别选择单条指令和多条指令,调用右键菜单中的“EvaluateSelection”菜单项执行之。

观察并试验右键菜单中的其它菜单项。

选中一组指定,利用右键菜单中的“CreateM-File”菜单命令创建M文件"myMFile"并按提示保存。

8)在Workspace中,利用工具栏“save”菜单命令将所有变量保存到MAT文件"myMATFile"中。

9)运行以下指定,并观察并分析MATLAB的显示输出结果。

注意观察当前的工作目录在MATLAB搜索路径列表中的位置

>>path

10)练习使用who,whos,clear,指令,重点是clear指令,观察并分析系统输出.

11)练习使用help指令查找'control'主题和'tan'函数的帮助信息

12)练习使用doc指令查找'control'主题和'tan'函数的帮助信息,并比较与help指令的异同.

13)练习使用lookfor指令查找'control'主题和'tan'函数的帮助信息.

14)打开并使用Help浏览器,尝试在其中查找帮助信息.

15)时间允许的情况下,完成教程内的实例练习:

图1.1对应的代码.

五小结

本节讲述了MATLAB上机实习的内容和要求,并进行了上机实习,对MATLAB软件应用有了直观的认识和更进一步的理解。

六课后提问

今天上课你学到了哪些知识点?

哪些知识点上理解有困难?

七作业

建立本章知识点的word文件。

八预习

预习第二章“数据类型”的内容,对MATLAB的数据类型有初步的认识。

《MATLAB软件应用》讲义[第3/16次课]

第二章数据类型

一点名

二作业讲评

三复习提问

1、在CommandWindow中输入一条指令时,Matlab按照什么顺序搜索与该指令相关的变量或M文件?

2、简述MATLAB中,如何获得一条指令的用法?

请举例说明。

四授新课

教学目标

●学习并掌握MATLAB常量、变量和矩阵的创建和使用方法

●学习并掌握单元型变量的创建和使用方法

●学习并掌握结构体变量的创建和使用方法

重点和难点

●重点:

变量的定义和使用方法、矩阵

●难点:

单元型变量和结构体数据类型

教学内容:

第2章(数据类型)

2.1MATLAB中的常量与变量

2.1.1常量

pi,i,j,eps,NaN,Inf,Realmin,Realmax

2.1.2变量

Matlab语言并不要求对所使用的变量进行事先声明,也不需要指定变量类型

变量命名规则:

(1)变量名区分大小写;

(2)变量的第一个字符必须为英文字母,而且不能超过63个字符,第63位之后的字符将被忽略。

(3)变量名可以包含字母、数字、下划线,但不能使用空格符、标点。

2.2数字变量

>>muw0=1.785e-3;%定义摄氏零度时的黏度值

>>a=0.03368;%定义两常数

>>b=0.000221;

>>t=0:

20:

80;%定义摄氏温度变量

>>muw=muw0./(1+a*t+b*t.^2)%计算摄氏温度的黏度值

-------MATLAB:

数学演算纸式的科学计算语言------------

数值显示格式控制

>>formatshort

>>format%不带参数,默认,同formatshort

>>pi

>>formatlong

>>pi

>>formatlonge%long+e(科学计数法显示)

>>pi

2.3字符串

>>a=’GoodMorning’;

>>size(a)%112(1*12的字符数组)

>>whos

>>a(6)%‘M’

>>str1='abc';

>>str2='cde';

>>strcat(str1,str2)%其它串处理函数:

strcmp,findstr,upper,lower,等

2.4矩阵

Matlab中,矩阵(数组)是数据存储的基本单元

A=[13;21];A=[1,3;2,1];

2.5单元型变量(cell)

胞元数组、cell。

元素为任意变量(可以为不同数据类型)的数组变量。

%%单元型变量

clc;closeall;clearall;

score=[928763];%[]定义数组和矩阵

name='John';

C={name,score};%{}定义单元型变量

C1={'John',[928763]};

whos

C

(1),C

(2)%访问数组成员,仅给出数据的压缩格式(如:

[1x3double])

C{1},C{2}%访问数组成员,给出数据成员的值

celldisp(C)%依次显示各成员的值,本例为C{1},C{2}

cellplot(C)%单元型变量成员数据结构的图形表示

2.6结构体(struct)

结构体可将不同数据类型组合在一起,关键词为struct.

%%结构体,struct

closeall;clc;clearall;

student.name='Tom';%字段(field)'name'

student.ID='20140187';%字段'ID'

student.Score=[876492836987];%字段'Score'

student

whos

student.name%通过运算符'.'访问结构体成员

student.ID

student.Score

结构体变量亦可通过struct关键词创建:

clc;closeall;clearall;

student1=struct('name','Tom','ID','20140187','Score',[876492836987]);

student1.name

student1.ID

student1.Score

2.7综合思考题

某班3名同学的Matlab综合成绩如下表如示,试编程计算他们各自的总评成绩。

(总评成绩=平时成绩*30%+上机成绩*20%+期末成绩*50%)。

学号

姓名

平时成绩

上机成绩

期末成绩

091

张一

83

91

87

092

李一

72

83

80

093

王一

88

80

90

五、小结:

本次课重点学习了MATLAB的常量、变量、字符串等数据类型,并讲解了矩阵、单元型变量、结构体等特殊的数据类型。

变量的定义和使用方法、矩阵的创建和使用是本次课的重点内容,而单元型变量和结构体数据类型的创建和使用则是本次课的难点所在。

六课后提问

今天上课你学到什么哪些知识点?

哪些知识点理解有困难?

七作业

复习第2章内容,为下次课上机操作做好准备。

八预习

预习第3章(数值计算)

 

《MATLAB软件应用》讲义[第4/16次课]

第2章数据类型

一点名

二作业讲评

三复习提问

简述单元数组的主要特点有哪些?

结构体变量如何定义和引用?

四上机练习内容

启动MATLAB。

在D盘根目录下,以“学号_姓名”的格式创建文件夹,并在Matlab中将该目录设置为CurrentFolder。

以下为本章教学必须掌握的知识点。

在MATLAB的CommandWindow或M文件编辑器中练习以下代码,并观察系统输出,并逐行进行注释。

所创建的M文件或Office文件等均保存在CurrentFolder中。

本次课结束前5分钟,将所创建的文件夹整体上传至教师机。

在MATLAB程序界面中进行以下操作练习:

1)常量

在CommandWindow中输入以下Matlab系统默认的常量,观察系统输出,加深理解每个系统常量所指:

pi,i,j,eps,NaN,Inf,Realmin,Realmax。

2)变量

>>muw0=1.785e-3;

>>a=0.03368;

>>b=0.000221;

>>t=0:

20:

80;

>>muw=muw0./(1+a*t+b*t.^2)

3)数值显示格式的控制、format指令

>>formatshort

>>format

>>pi

>>formatlong

>>pi

>>formatlonge

>>pi

4)字符串变量及字符串处理函数

>>a=’GoodMorning’;

>>size(a)

>>whos

>>a(6)

>>str1='abc';

>>str2='cde';

>>strcat(str1,str2)%其它串处理函数:

strcmp,findstr,upper,lower,等

5)单元型变量

clc;closeall;clearall;

score=[928763];

name='John';

C={name,score};

C1={'John',[928763]};

whos

C

(1),C

(2)

C{1},C{2}

celldisp(C)

cellplot(C)

6)结构体变量

closeall;clc;clearall;

student.name='Tom';

student.ID='20140187';

student.Score=[876492836987];

student

whos

student.name

student.ID

student.Score

clc;closeall;clearall;

student1=struct('name','Tom','ID','20140187','Score',[876492836987]);

student1.name

student1.ID

student1.Score

7)综合训练

某班3名同学的Matlab综合成绩如下表如示,试编程计算他们各自的总评成绩。

(总评成绩=平时成绩*30%+上机成绩*20%+期末成绩*50%)。

学号

姓名

平时成绩

上机成绩

期末成绩

091

张一

83

91

87

092

李一

72

83

80

093

王一

88

80

90

094

钱一

81

91

88

095

周一

72

85

86

五小结

本次课重点练习了MATLAB的常量、变量、字符串等数据类型,并练习了矩阵、单元型变量、结构体等特殊的数据类型。

变量的定义和使用方法、矩阵的创建和使用是本次课的重点内容,而单元型变量和结构体数据类型的创建和使用则是本次课的难点所在。

六课后提问

今天上课你学到了哪些知识点?

哪些知识点上理解有困难?

七大作业

利用本课程第一、二章所学的知识,

(1)分别使用单元型数组和结构体数据类型表示你从大一以来所学各课程的课程名称、学年、学期及考试成绩,并将以上数据保存在M文件data.m中;

(2)编写程序,对data.m中的数据进行访问,读取全部成绩为一数组,对该数组进行操作,求得所有课程成绩的总和、均值、标准差,并尝试绘制该组数据的折线图和直方图。

(提示:

读取数据时可能需要使用循环语句;可能用到的MATLAB指令有sum,mean,std,bar,plot等。

这些指令的具体用法可通过MATLAB帮助系统获取)

本次大作业待第三章课程结束后即上交。

八预习

预习第3章(数值计算)。

《MATLAB软件应用》讲义[第5/16次课]

第三章数值计算

一点名

二作业讲评

三复习提问

1、简述MATLAB中,创建结构体的方法有哪几种?

2、MATLAB中,如何控制数值型数据的输出显示位数及格式?

3、常规数组和单元型数组的主要区别是什么?

四授新课

教学目标

●学习并掌握向量的创建及使用方法

●学习并掌握矩阵的基本运算规则

●学习并掌握数组的创建及使用方法

●学习并掌握多项式的创建及使用方法

重点和难点

●重点:

矩阵、数组的创建和基本运算方法

●难点:

矩阵运算教学内容:

教学内容:

第3章(数值计算)

3.1向量

%%数值计算.向量

clc;closeall;clearall;

V1=[123]%V1=[1,2,3];行向量;列向量

V11=[1;2;3]

V2=[012345678910]

V21=0:

10%初值1,终值10,步长缺省,默认为1

V22=V2'

V3=0:

2:

10%初值0,终值10,步长2

V31=[0246810]

V4=0:

2:

9%等价于V4=0:

2:

8

V41=0:

2:

8

V5=10:

-2:

0%负步长

%线性等分向量(等间隔分隔)

V6=linspace(2.5,12.5,23)

V7=linspace(2.5,12.5)

whos

%对数等分向量(等对数间隔分隔)

V8=logspace(0,6);%区间[10^0~10^6],默认点数分隔

V9=logspace(0,6,7);%区间[10^0~10^6],7点分隔

whos

%向量基本运算

V=[123]

V-1%与数加减

V*2%数乘

%点积,叉积

V1=[111];

V2=[222];

a=dot(V1,V2)%sum(a.*b)

c=cross(V1,V2)

3.2矩阵

%%数值计算.矩阵

%相关运算符:

[],'',',',';'

A=[123;456;789]

B=[234;567;8910];

M=[sin(pi/6)sin(2*pi/3);sin(pi),sin(pi/3)]

m1=A+B

m2=A*B

A=[123;426;749];

b=[4;1;2];

B1=[456;7911;3129];

X=B1/A%右除,方程组XA=B的解,x=B/A=B*inv(A)

x=A\b%左除,方程组Ax=b的解,x=inv(A)*b

A=[123;426;749];

B=inv(A)%逆矩阵

A*B

d=det(A)%行列式

r=rank(A)%秩

t=trace(A)%迹

[Mv]=eig(A)%特征向量矩阵M,特征值v

A=[1:

9];

B=reshape(A,3,3)%reshape,变维操作

rot90(B,2)%逆时针旋转2个90度

fliplr(B)%翻转

flipud(B)

v=diag(B)%提取对角元素为向量

diag(v)%由向量生成对角阵

B1=B(1,:

B2=B(:

1)

whos

3.3数组

%%数值计算.数组

closeall;clearall;clc;

A=[1234];

B=[2345];

C1=A+B

C2=A-B

C3=A.*B%.*

C4=A./B%./

C5=A.\B%左除

C6=[2.+B;2+B;B+2]

C7=[2.*B;2*B;B*2;B.*2]

C8=[B./2;B.\2]

C9=B.^2%幂

sqrt(B)

[B<1;B<=2;B>2;B>=2;B==2;B~=2;B&0;B&1]

B

idx=find(B==5)

B(idx)

3.4多项式

多项式

的Matlab表示:

[a0a1...an]

(即:

用按降幂排列的多项式各项之系数组成的向量,来表示多项式)

如,实际的多项式

其MATLAB表示及相关运算:

%%数值计算.多项式

%多项式x^3-5x^2+6x-33

closeall;clc;clearall;

p=[1-56-33];

poly2sym(p)%系数表示-->符号表示

%矩阵的特征多项式

A=[124;317;582]

p1=poly(A)

poly2sym(p1)

%由根创建多项式

root=[-4-2+3*i-2-3*i]

p2=poly(root)

poly2sym(p2)%向量表示-->符号表示

roots(p2)%多项式求根

%多项式求值p(x)|x=x0-->p(x0)

p=[1225133];

polyval(p,2)

%多项式乘法

p11=[2-35712];p21=[2-1824];

p1=poly2sym(p1)

p2=poly2sym(p2)

p31=conv(p11,p21);

p3=poly2sym(p31)

p4=polyder(p31)%多项式微分

%已知实验数据(电阻、电流),求其二次拟合曲线方程

%R(千欧)2701207045302012.97.53.30

%I(微安)5101520253035404550

R=[1207045302012.97.53.30];

I=[101520253035404550];

R=fliplr(R);I=fliplr(I);

figure;holdon;

plot(R,I,'*r');

p=polyfit(R,I,2);

px=poly2sym(p)

ezplot(px,[0120]);

五、小结

本次课学习了MATLAB向量、矩阵、数组及多项式的创建方法和基本使用规则。

本次课学习的重点是矩阵、数组的创建和基本用法;难点则是矩阵运算方法。

通过本次课的学习,初步建立了MATLAB数值运算的基本认识和概念,为进一步的课程学习打好基础。

六课后提问

今天上课你学到哪些知识点?

哪些知识点理解有困难?

七作业

复习第3章内容,为下次课上机操作做好准备。

八预习

预习第4章(符号计算)。

 

《MATLAB软件应用》讲义[第6/16次课]

第3章数值计算

一点名

二作业讲评

三复习提问

1、请列举MATLAB矩阵运算和数组运算的主要异同点。

2、如何访问矩阵的元素?

3、如何访问单元数组的元素?

4、如何访问结构体变量的成员?

四上机练习内容

启动MATLAB。

在D盘根目录下,以“学号_姓名”的格式创建文件夹,并在Matlab中将该目录设置为CurrentFolder。

以下为本章教学必须掌握的知识点。

在MATLAB的CommandWindow或M文件编辑器中练习以下代码,并观察系统输出,并逐行进行注释。

所创建的M文件或Office文件等均保存在CurrentFolder中。

本次课结束前5分钟,将所创建的文件夹整体上传至教师机。

在MATLAB程序界面中进行以下操作练习:

(1)向量

clc;closeall;clearall;

V1=[123]

V11=[1;2;3]

V2=[012345678910]

V21=0:

10

V22=V2'

V3=0:

2:

10

V31=[0246810]

V4=0:

2:

9

V41=0:

2:

8

V5=10:

-2:

0

V6=linspace(2.5,12.5,23)

V7=linspace(2.5,12.5)

whos

V8=logspace(0,6);

V9=logspace(0,6,7);

whos

%向量基本运算

V=[123]

V-1

V*2

V1=[111];

V2=[222];

a=dot(V1,V2)

c=cross(V1,V2)

(2)矩阵

%相关运算符:

[],'',',',';'

A=[123;456;789]

B=[234;567;8910];

M=[sin(pi/6)sin(2*pi/3);sin(pi),sin(pi/3)]

m1=A+B

m2=A*B

A=[123;426;749];

b=[4;1;2];

B1=[456;7911;3129];

X=B1/A

x=A\b

A=[123;426;749];

B=inv(A)

A*B

d=det(A)

r=rank(A)

t=trace(A)

[Mv]=eig(A)

A=[1:

9];

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

当前位置:首页 > 自然科学 > 物理

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

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