计算机仿真技术复习总结.docx

上传人:b****2 文档编号:1858995 上传时间:2022-10-24 格式:DOCX 页数:28 大小:41.09KB
下载 相关 举报
计算机仿真技术复习总结.docx_第1页
第1页 / 共28页
计算机仿真技术复习总结.docx_第2页
第2页 / 共28页
计算机仿真技术复习总结.docx_第3页
第3页 / 共28页
计算机仿真技术复习总结.docx_第4页
第4页 / 共28页
计算机仿真技术复习总结.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

计算机仿真技术复习总结.docx

《计算机仿真技术复习总结.docx》由会员分享,可在线阅读,更多相关《计算机仿真技术复习总结.docx(28页珍藏版)》请在冰豆网上搜索。

计算机仿真技术复习总结.docx

计算机仿真技术复习总结

计算机仿真技术复习总结

y=zeros(m,n)

两个作用:

①为矩阵y赋初值

②为矩阵y分配m×n的存储空间

sum(x):

矩阵各列元素的和

几个取整函数的区别:

round

4舍5入到整数

fix

向最接近0取整

floor

向最接近-∞取整

ceil

向最接近+∞取整

exp

自然指数

log

自然对数

log10

以10为底的对数

数组寻址:

1.通过对数组下标的访问来实现数组寻址

>>A=1:

6

A=123456

访问单个元素时,直接采用访问下标的方法。

>>A(4)

ans=4

一次访问一块数据(即访问数组中的连续元素),可以使用冒号。

>>A(2:

6)

ans=23456

访问多个不连续的元素,可以使用中括号。

>>A([1346])

ans=1346

end参数用来表示数组的结尾。

>>A(3:

end)

ans=3456

图形对象属性:

包括属性名与属性值

用get函数获取属性值

用set函数设置属性值

2.1矩阵和数组的概念

标量(Scalar):

是指1×1的矩阵,即只含一个数的矩阵。

向量(Vector):

是指1×n或n×1的矩阵,即只有一行或者一列的矩阵。

矩阵(Matrix):

是一个矩形的数组,即二维数组,其中向量和标量都是矩阵的特例,0×0矩阵为空矩阵([])。

数组(Array):

是指n维的数组,为矩阵的延伸,其中矩阵和向量都是数组的特例。

复数由实部和虚部组成,MATLAB用特殊变量“i”和“j”表示虚数的单位。

z=a+b*i或z=a+b*j

z=a+bi或z=a+bj(当b为常量时)

z=r*exp(i*theta)

得出一个复数的实部、虚部、幅值和相角。

a=real(z)%计算实部

b=imag(z)%计算虚部

r=abs(z)%计算幅值

t=angle(z)%计算相角

1.变量的命名规则

区分字母的大小写。

例如,“a”和“A”是不同的变量。

不能超过63个字符,第63个字符后的字符被忽略。

必须以字母开头,变量名的组成可以是任意字母、数字或者下划线,但不能含有空格和标点符号(如,。

%等)。

例如,“6ABC”、“AB%C”都是不合法的变量名。

关键字(如if、while等)不能作为变量名。

1.通过显式元素列表输入矩阵

例如:

>>c=[12;34;53*2]

%[]表示构成矩阵,分号分隔行,空格分隔元素

2.通过语句生成矩阵

(1)使用from:

step:

to方式生成向量

from、step和to分别表示开始值、步长和结束值。

当step省略时则默认为step=1。

使用“from:

step:

to”方式生成以下矩阵。

x1=2:

5

x1=2345

x2=5:

-1:

2

x2=5432

x3=2:

-1:

3%空矩阵

x3=Emptymatrix:

1-by-0

X4=2:

-1:

0.5

X4=21

x5=[1:

2:

5;1:

3:

7]%两行向量构成矩阵

x5=

135

147

(2)使用linspace和logspace函数

linspace(a,b,n)

a、b、n分别表示开始值、结束值和元素个数,n如果省略则默认值为100。

logspace(a,b,n)

a、b、n分别表示开始值10a、结束值10b和数据个数,n,如果省略则默认值为50。

3.由矩阵生成函数产生特殊矩阵

zeros(m,n)产生m×n的全0矩阵

ones(m,n)产生m×n的全1矩阵

rand(m,n)产生均匀分布的随机矩阵,元素取值范围0.0~1.0。

randn(m,n)产生正态分布的随机矩阵

magic(N)产生N阶魔方矩阵(矩阵的行、列和对角线上元素的和相等)

eye(m,n)产生m×n的单位矩阵

zeros、ones、rand、randn和eye函数当只有一个参数n时,则为n×n的方阵;

当eye(m,n)函数的m和n参数不相等时则单位矩阵会出现全0行或列。

2.2.2矩阵元素

1.矩阵的下标(Subscript)

(1)全下标方式

一个m×n的a矩阵的第i行第j列的元素表示为a(i,j)。

(2)单下标方式

以m×n的矩阵a为例,若元素a(i,j)则对应的“单下标”为s=(j-1)×m+i。

2.子矩阵块的产生

子矩阵是从对应矩阵中取出一部分元素构成,用全下标和单下标方式取子矩阵。

(1)用全下标方式

取行数为1、3,列数为2、3的元素构成子矩阵。

a([13],[23])

ans=

20

69

取行数为1~3,列数为2~3的元素构成子矩阵,“1:

3”表示1、2、3行下标。

a(1:

3,2:

3)

ans=

20

40

69

(2)用单下标方式

取单下标为1、3、2、6的元素构成子矩阵。

a([13;26])

ans=

15

36

3.矩阵的赋值

矩阵的赋值有:

全下标方式、单下标方式和全元素方式。

4.矩阵元素的删除

可以对矩阵的单个元素、子矩阵块和所有元素赋值为空矩阵进行删除操作,就是简单地将其赋值为空矩阵(用[]表示)。

EX:

a(:

3)=[]%删除一列元素

a

(1)=[]%删除一个元素,矩阵变为向量

a=[]%删除所有元素为空矩阵

5.生成大矩阵(ConcatenatingMatrices)

可以通过方括号“[]”实现将小矩阵生成一个较大的矩阵。

例:

[a;a]与[a,a]的区别

6.常用矩阵翻转函数:

flipud(X)

使矩阵X沿水平轴上下翻转

fliplr(X)

使矩阵X沿垂直轴左右翻转

rot90(X)

使矩阵X逆时针旋转900

2.2.3字符串(CharacterArrays)

一个字符串由多个字符组成,用单引号(’’)来界定。

字符串是按行向量进行存储的。

1.字符串占用的字节

每一个字符会占用两个字节。

>>str2='Ilike''MATLAB'''

%重复单引号来输入含有单引号的字符串

2.字符串函数

length:

用来计算字符串的长度。

double:

用来查看字符串的ASCII码储存内容。

char:

用来将ASCII码转换成字符串形式。

class或ischar:

用来判断某一个变量是否为字符串。

3.使用一个变量来储存多个字符串

(1)多个字符串组成一个新的行向量

将多个字符串变量直接用“,”连接,构成一个行向量,就可以得到一个新字符串变量。

(2)使用二维字符数组

将每个字符串放在一行,多个字符串可以构成一个二维字符数组,但必须先在短字符串结尾补上空格符,以确保每个字符串(即每一行)的长度一样。

否则会提示出错:

(3)使用str2mat、strvcat和char函数

使用专门的str2mat、strvcat和char函数可以构造出字符串矩阵,而不必考虑每行的字符数是否相等,总是按最长的设置,不足的末尾用空格补齐。

例如:

>>str6=str2mat(str1,str2,str3)

5.执行字符串

使用eval命令直接“执行”某一字符串。

6.显示字符串

直接使用disp命令显示字符串。

>>disp('请输入2*2的矩阵a')

矩阵运算的函数

det(X):

计算方阵行列式

rank(X):

求矩阵的秩,得出的行列式不为零的最大方阵边长。

inv(X):

求矩阵的逆阵。

inv(X)=X-1

[v,d]=eig(X):

计算矩阵特征值和特征向量

diag(X):

产生X矩阵的对角阵

[v,d]=eig(X)计算矩阵特征值和特征向量。

如果方程Xv=vd存在非零解,则v为特征向量,d为特征值。

(1)矩阵和数组的加(addition)、减运算(subtraction)

矩阵加、减运算表达式分别为“A+B”、“A-B”。

(2)矩阵和数组的乘法运算(muliplication)

矩阵的乘法运算表达式为“A*B”。

矩阵A的列数必须等于矩阵B的行数,除非其中有一个是标量。

数组的乘法运算表达式为“A.*B”,表示数组A和B中的对应元素相乘。

A和B数组必须大小相同,除非其中有一个是标量。

(3)矩阵和数组的除法

矩阵除法可以用来方便地解线性方程组:

AX=BX=A\B

A*X=BX=inv(A)*B=A\B

矩阵运算符为“\”和“/”分别表示左除和右除。

A\B=A-1*B

A/B=A*B-1。

其中:

A-1是矩阵的逆,也可用inv(A)求逆矩阵。

数组的除法运算表达式

“A.\B”和“A./B”,分别为数组的左除和右除,表示数组相应元素相除。

A和B数组必须大小相同,除非其中有一个是标量。

【例2.12】已知方程组,用矩阵除法来解线性方程组。

解:

将该方程变换成AX=B的形式。

其中:

A=[2-13;31-5;4-11];

B=[5;5;9];

X=A\B;

X=2-10

在线性方程组A*X=B中,m×n阶矩阵A的行数m表示方程数,列数n表示未知数的个数。

n=m,A为方阵,A\B=inv(A)*B。

m>n,是最小二乘解,X=inv(A’*A)*(A’*B)

m

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

A.\B

左除,B的元素被A的对应元素除

A\B

左除,inv(A)*B

A./B

右除,A的元素被B的对应元素除

A/B

右除,A*inv(B)

x1.\x2%数组左除(x2被x1除)

x1./x2%数组右除(x1被x2除)数组或矩阵的对应元素相除

(4)矩阵和数组的乘方

矩阵乘方的运算表达式为“A^B”,其中A可以是矩阵或标量。

当A为矩阵,必须为方阵:

B为正整数时,表示A矩阵自乘B次;

B为负整数时,表示先将矩阵A求逆,再自乘|B|次,仅对非奇异阵成立;

B为矩阵时不能运算,会出错;

B为非整数时,将A分解成A=W*D/W,D为对角阵,则有A^B=W*D^B/W。

当A为标量:

B为矩阵时,将A分解成A=W*D/W,D为对角阵,则有A^B=W*diag(D.^B)/W。

数组乘方的运算表达式“A.^B”。

当A为矩阵,B为标量时,则将A(i,j)自乘B次;

当A为矩阵,B为矩阵时,A和B数组必须大小相同,则将A(i,j)自乘B(i,j)次;

当A为标量,B为矩阵时,将A^B(i,j)构成新矩阵的第i行第j列元素。

5.关系操作和逻辑操作

关系运算:

关系操作符有:

<、<=、>、>=、==(等于)、~=(不等于)。

关系运算规则:

如果两个标量,则结果为真

(1)或假(0)。

如果比较的两个数组变量,则必须大小相同,数组的元素为0或1。

如果比较一个数组和一个标量,则把数组的每个元素分别与标量比较。

<、<=和>、>=仅对变量的实部进行比较,而==和~=则同时对实部和虚部进行比较。

逻辑操作符有:

&(and)、|(or)、~(not)和xor、&&(先决与)、||(先决或)。

在MATLAB中各种运算符的优先级如下:

'(矩阵转置)、^(矩阵幂)和.'(数组转置)、.^(数组幂)→~(逻辑非)→*(乘)、/(左除)、\(右除)和.*(点乘)、./(点左除)、.\(点右除)→+、-(加减)→:

(冒号)→<、<=、>、>=、~=→&(逻辑与)→|(逻辑或)→&&(先决

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

当前位置:首页 > IT计算机 > 电脑基础知识

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

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