当前位置:文档之家› matlab实验七及实验八

matlab实验七及实验八

matlab实验七及实验八
matlab实验七及实验八

实验七 线性二次型指标最优控制系统设计

一、实验目的

1、学习线性二次型指标最优控制系统设计方法。

2、完成线性二次型指标最优控制系统设计实践。

二、相关知识

最优控制系统是指在一定的具体条件下,在完成所要求的控制任务时,系统的某种性能指标具有最优值。根据系统的不同用途,可提出各种不同的性能指标,最优控制的设计就是选择最优控制以使某一种性能指标为最小(或者最优值)。在实际工程应用中,最优控制系统的性能指标通常采用二次型指标。 对于状态完全能控的线性连续定常系统,其状态方程为()()()x t x t u t =+A B ,x(0)=x0。其输出方程为()()()y t x t u t =+C D ,式中:

x(t)为n 维状态变量; u(t)为p 维输入控制变量,且不受约束;A 为n ×n 维状态矩阵,常数矩阵;B 为n ×p 维输入矩阵,常数矩阵;C 为m ×n 维输出矩阵,常数矩阵;D 为m ×p 维输入矩阵,常数矩阵。y(t)为m 维输出变量; 引入的线性二次型(Linear Quadratic)指标为:

T T 0

1[()()()()]d 2t x t t t ∞=+?J x Q u t Ru 式中,积分上限为∞,即调节时间tf→∞;Q 和R 均为正定的对称常数矩阵,实际上分别是对状态量x(t)和控制量u(t)的加权矩阵。

根据最优控制理论,使线性二次型指标J(式6.66)取最小值的最优控制*()u t 为:

*1T ()()()t t t -=-=-u Kx R B Px

式中,1T -=K R B P 为最优反馈增益矩阵;P 矩阵为对称常数矩阵;P 矩阵可通过求解代数黎卡提(Riccati)方程

T 1T 0-+-+=PA A P PBR B P Q 这时,最优性能指标为

*T 1(0)(0)2

J =x Px 可见,设计最优控制系统的重要一步就是求解黎卡提(Riccati)方程。 线性二次型指标状态反馈最优控制系统结构图如图所示。

线性二次型指标J 的最优性取决于如何确定加权矩阵Q 和R ,但这两个矩阵的选择并没有解析方法,只能作定性的选择。一般情况下,对单输入系统,如果

希望输入控制信号u(t)小,则R 矩阵的值选择大一些;对多输入系统,如果希望第i 个输入控制信号u i (t)小,则R 矩阵第i 列的值应该选择大一些。如果希望第j 个状态变量x j (t)的值小一些,那么相应的就应该把Q 矩阵的第j 元素取大点,这时最优化功能会迫使该状态变量变小。

系统最优控制*()u t 为*

()()t t =-u Kx ,式中,最优反馈增益矩阵1T T ()-=+K R B P N

式中,对称常数矩阵P 满足代数黎卡提(Riccati)方程

T 1T T ()()0-+-+++=PA A P PB N R B P N Q

三、实验内容

1. 设线性系统的状态方程为010001????=+?

???????

x x u ,试设计使系统线性二次型性能指标T T 01[()()()()]d 2t t t t t ∞=+?J x Qx u Ru 。式中,2114??=????Q ,R=1/2。取最小时的最优控制*()u t ,计算最优状态反馈矩阵K ,画出状态反馈最优控制系统结构图。

解:根据题意,计算最优状态反馈矩阵K ,设计最优控制*()u t 的MATLAB 程序如下:

A=[0,1;0,0];

B=[0,1]'; %该语句的′号代表求矩阵转置

C=[1,0];D=0;

Q=[2,1;1,4];

R=1/2;

[K,P,E]=lqr(A,B,Q,R) %计算并显示最优状态反馈矩阵K 、P 矩阵和特征值E 上述程序执行后,计算出的最优状态反馈矩阵K 为[]2.0 3.4641=K

那么,使系统线性二次型性能指标J 取最小的最优控制*()u t 为

*12()2() 3.4641()u t x t x t =-- 另外,代数黎卡提(Riccati)方程的解P 矩阵为 2.464111 1.7321??=????

P 闭环系统特征方程的特征值为1 2.7321λ=-,20.7321λ=-

由自动控制理论,上述特征值均具有负实部,闭环系统是渐近稳定的。 根据以上计算,可得到状态反馈最优控制系统结构图如图所示。

2. 设线性系统的状态方程为0100()001()0()169121t t t ????????=+????????---????

x x u ,输出方程为()[100]()t t =y x 。使系统线性二次型性能指标

T 2T 03000001[()010()()2()0()]d 20011t t t t t t ∞

????????=++?????????????J x x u x u 取最小值。 试:

(1)计算最优状态反馈矩阵K 、代数黎卡提方程的解(即P 矩阵)和闭环系统的特征值(即E 矩阵);

(2)画出状态反馈最优控制系统结构图。

解:根据题意,编写MATLAB 程序时,[K,P,E]=lqr(A,B,Q,R,N)所需要的入口参数A 、B 、Q 、R 、N 矩阵分别为 010********????=????---??A ,001????=??????B ,30000010001????=??????Q ,R =1,001????=??????

N MATLAB 程序如下:

A=[0 1 0;0 0 1;-16 -9 -12];B=[0;0;1];

Q=[300 0 0;0 1 0;0 0 1];R=1;N=[0;0;1];

[K,P,E]=lqr(A,B,Q,R,N)

上述程序执行后,计算出的最优状态反馈矩阵K 为[]7.57978.5922 1.6449=K

那么,使系统线性二次型指标J 取最小的最优控制*()u t 为

*123()7.5797()8.5922() 1.6449()u t x t x t x t =---

另外,代数黎卡提(Riccati)方程的解,即对称矩阵P 为

270.8183113.7437.5797113.743115.46518.59227.57978.59220.6449????=??????

P

闭环系统特征方程的特征值为112.3776λ=-,2,30.6337 1.2262i λ=-±

上述特征值均具有负实部,根据自动控制理论,该闭环系统是渐近稳定的。 根据以上计算,可得到状态反馈最优控制系统结构图如图所示。

三、实验报告要求

1、提交所有仿真结果;

2、根据实验结果,判断系统的稳定性。

实验八模糊控制系统仿真实验

一、实验目的

(1)熟练掌握MATLAB/SIMULINK工具箱的使用;

(2)利用MATLAB/SIMULINK与FUZZYTOOLBOX对给定的二阶动态系统,确定模糊控制器的结构,输入和输出语言变量、语言值及隶属函数,模糊控制规则;比较其与常规控制器的控制效果;研究改变模糊控制器参数时,系统响应的变化情况;掌握用MATLAB 实现模糊控制系统仿真的方法。

二、相关知识

模糊控制是以模糊集理论、模糊语言变量和模糊逻辑推理为基础的一种智能控制方法,首先将操作人员或专家经验编写成模糊规则,然后将来自传感器的实时信号模糊化,将模糊化的信号作为模糊规则的输入,完成模糊推理,将推力后得到的输出量加到执行器上。

MATLAB 的模糊逻辑工具箱提供了一个应用模糊逻辑方法处理各种事情的非常方便的工具。具体来说该工具箱有三种基本的应用方式,命令行函数、图形交互式工具和仿真模块。第一类由函数组成,可以在命令行或者自己的应用程序里调用它们。第二类通过图形用户界面把许多函数集中在一起,形成一个GUI(图形用户界面)开发环境,提供模糊推理系统的设计、分析和应用工具。第三类是一系列的模块,用于在Simulink 环境下进行模糊逻辑推理的仿真。

MATLAB 的模糊逻辑工具箱提供了五个GUI 工具,用来建立模糊逻辑推理系统,他们分别是FIS(模糊逻辑推理系统)编辑器、隶属函数编辑器、模糊规则编辑器、规则查看器(rule viewer)、表面图像查看器(surface viewer)。这些图形用户界面都动态的连接着改变其中一个窗口的设置参数,其他的窗口也会自动的作出相应的改变。

模糊控制器设计步骤:

1、定义输入输出模糊集

对误差e、误差变化ec 及控制量u 的模糊集及其论域定义如下

e、ec 及u 的模糊集均为{NB,NM,NS,ZO,PS,PM,PB}

e 和ec 的论域为{-3,-2,-1,0,1,2,3}

u 的论域为{-4.5,-3,-1.5,0,1.5,3,4.5}

2、定义输入输出隶属函数

误差e、误差变化ec 及控制量u 的模糊集及其论域确定后,需对模糊变量确定隶属函数,即对模糊变量赋值,确定论域内元素对模糊变量的隶属度。

3、建立模糊控制规则

根据人的直觉思维推理,由系统输出的误差及误差变化趋势来设计消除系统误差的模糊控制规则,如表8-1 所示,。表中共有49 条模糊规则,各个模糊语句之间是“或”的关系。

由第一条语句所确定的控制规则可以计算出u1。同理,可以由其余各条语句分别求出控制量u2,…,u49,则控制量为模糊集和U,可表示为

U= u1+ u2+…+u49

4、模糊推理

模糊推理是模糊控制的核心,它利用某种模糊推理算法和模糊规则进行推理,得出最终的控制量。

5、反模糊化

通过模糊推理得到的结果是一个模糊集和。但在实际模糊控制中,必须要有一个确定值才能控制或驱动执行机构。将模糊推理结果转化为精确值的过程称为反模糊化。

表8-1 模糊控制规则表

三、实验内容

1、Simulink 基础实验:采用Simulink 构造如下结构框图,并用示波器(Scope )观测输出响应。

图8-1 系统结构图

2、模糊控制系统matlab 仿真实验 控制对象为220()2G s s s

=+,位置跟踪信号取阶跃信号,基于MATLAB 的模糊控制器仿真步骤如下:

(1) 在MATLAB 的命令窗口输入fuzzy ,然后按Enter 键,打开FIS 编辑窗口,如图8-2所示。FIS 编辑器主要是处理模糊推理系统的一些基本问题,例如输入输出变量名,推理函数的选择等。由于本例为二维模糊控制器,因此在菜单Edit|Add Varible 设置两个输入变量,一个输出变量,如图8-3 所示。

(2) 选中FIS 窗口中的input1,在右下角编辑区域将这个输入变量的名字改为e ,用同样的方法把input2(输入变量2)的名字改为ec ,把output(输出变量)的名字改为u 。这时FIS 窗口的状态如图8-4 所示。

(3) 现在开始编辑隶属函数。双击e 就可以打开输入变量隶属函数的编辑窗口,每个变量默认的隶属函数缺省是三个。我们可通过Edit|Add MFs 来增加隶属函数曲线的类型和数目。若要删除某个隶属函数,先选中这个隶属函数,然后按下Delete 键即可。修改e 的范围(range )改为(-6 6),并且将其中的mfs 全部删除,

并且点击Edit,ADD MFS…添加七个mfs,分别对应NB(负大)、NM(负中)、NS(负小)、ZO(零)、PS(正小)、PM(正中)、PB(正大)。其中NM、NS、ZO、PS、PM 对应曲线类型设置为trimf 型,NB 对应曲线类型设置为zmf 型,而PB 对应曲线类型设置为smf 型。设置好的窗口如图8-5所示。

图8-2 编辑器图8-3 添加变量

图8-4 在FIS窗口中设置变量的名字

图8-5 对输入变量e隶属函数的设置图8-6 对输入变量ec隶属函数的设置

(4) 用同样的方法打开另一个变量的隶属函数编辑窗口。设置七个隶属函数,分

别对,应NB、NM、NS、ZO、PS、PM、PB,对应曲线类型设置同上。如图8-6所示。

(5) 输出变量隶属函数的编辑窗口。用同样的方法设置输出变量u的隶属函数。设置七个隶属函数,设置好的输出变量隶属函数编辑窗口如图8-7所示。

(6) 模糊逻辑规则。在FIS 窗口中,从菜单Edit 里选择Rules,打开规则编辑器。根据模糊控制规则表8-1 进行设置,如图8-8所示。

图8-7 对输出变量u隶属函数的设置图8-8 规则编辑器窗口(7) 保存设计好的模糊逻辑系统。在主菜单中通过选项File|Export|To Disk 把设计好的系统命名为×××.fis 保存到硬盘上。

(8) 在MATLAB 的命令窗口里输入a=readfis(‘×××’) 以看到输出信息,这说明设计好的×××.fis文件读到工作区里了。查看规则及控制器的输出。

(9) 接下来就可以设计Simulink 文件了。通过MATLAB 命令窗口的工具栏或直接在命令窗口中输入Simulink,打开Simulink 的功能模块库,新建一个Simulink 编辑窗口。

图8-9 模糊控制位置跟踪的Simulink模型

(10) 搭建如图8-9 的Simulink 模型。

双击Fuzzy Logic Controller 功能模块,就可以打开一个对话框,如图8-10所示。在FISmatrix 编辑区输入第8 步中定义的a,单击OK 按钮,确认、关闭对话框。

图8-10 仿真环境设置

(11) 现在就可以进行仿真了。通过菜单Simulation|Simulation Parameters 打开仿真环境参数设置对话框,仿真的终止时间设为20s。得到运行结果。

三、实验报告要求

1、提交所有仿真结果;

2、查看“模糊控制系统matlab仿真实验”中(8)的规则及控制器的输出。

3、将“模糊控制系统matlab仿真实验”中的位置跟踪信号取正弦信号2sin(t),重

复实验过程,会得到什么结果?

实验三 MATLAB绘图(含实验报告)

实验三 MATLAB 绘图 一、实验目的 1.掌握二维图形的绘制。 2.掌握图形的标注 3.了解三维曲线和曲面图形的绘制。 二、实验的设备及条件 计算机一台(带有MATLAB7.0以上的软件环境)。 设计提示 1.Matlab 允许在一个图形中画多条曲线:plot(x1,y1,x2,y2,……) 指令绘制y 1 = f 1(x 1), y 2 = f 2 (x 2 )等多条曲线。Matlab 自动给这些曲线以不同颜色。标注可用text 函数。 2.绘图时可以考虑极坐标和直角坐标的转换。 3.三维曲线绘图函数为plot3,注意参考帮助中的示例。 三、实验内容 1.生成1×10 维的随机数向量a ,分别用红、黄、蓝、绿色绘出其连线图、 杆图、阶梯图和条形图,并分别标出标题“连线图”、“杆图”、“阶梯图”、“条形图”。 2、绘制函数曲线,要求写出程序代码。 (1) 在区间[0:2π]均匀的取50个点,构成向量t (2) 在同一窗口绘制曲线y1=sin(2*t-0.3); y2=3cos(t+0.5);要求y1曲 线为红色点划线,标记点为圆圈;y2为蓝色虚线,标记点为星号。 (3) 分别在靠近相应的曲线处标注其函数表达式。 3.将图形窗口分成两个绘图区域,分别绘制出函数: ???+-=+=1 352221x x y x y 在[0,3]区间上的曲线,并利用axis 调整轴刻度纵坐标刻度,使1y 在[0,12] 区间上,2y 在[-2,1.5]区间上。 4.用mesh 或surf 函数,绘制下面方程所表示的三维空间曲面,x 和y 的

取值范围设为[-3,3]。 10102 2y x z +-= 思考题: 1. 编写一个mcircle(r)函数,调用该函数时,根据给定的半径r ,以原点 为圆心,画一个如图所示的红色空心圆。(图例半径r=5);左图参考 polar 函数的用法,右图绘制圆形的参数方程为x=sin (t ),y=cos (t )。其中,t 的区间为0~2*pi ,步长为0.1。 2.(1)绘一个圆柱螺旋线(形似弹簧)图。圆柱截面直径为10,高度为5, 每圈上升高度为1。如左图所示。 (2)利用(1)的结果,对程序做少许修改,得到如右图所示图形。

数学软件MATLAB实验报告 实验八

实验八:概率论与数理统计的MATLAB 实现 实验目的与要求: 能运用MATLAB 提供的针对概率统计课程的工具箱。 实验内容: 1、用normpdf函数计算正态概率密度函数。 该函数的调用格式为:Y=normpdf(X,MU,SIGMA) 2、用normpdf函数计算正态分布的分布函数。 该函数的调用格式为:F=normcdf(X,MU,SIGMA) 3、用chi2inv函数计算卡方分布的分布函数的逆函数。 分布函数的逆函数及其调用格式:x=chi2inv(P,v) 4、随机取8只活塞环,测得他们直径为(以mm计): 74.001 74.005 74.003 74.001 74.000 73.998 74.006 74.002 。 设环直径的测量值服从正态分布,现估计总体的方差2 程序代码: x=[74.001 74.005 74.003 74.001 74.000 73.998 74.006 74.002]; p=mle('norm',x); sigma2hatmle=p(2)^2 5、从一批灯泡中随机的取5只做寿命试验,测得寿命(以小时计)为: 1050 1100 1120 1250 1280 设灯泡寿命服从正态分布,求灯泡寿命平均值的95%置信区间。 程序代码: x=[1050 1100 1120 1250 1280]; [p,ci]=mle('norm',x,0.05) 6、下面列出的是某工厂随机选取的20只部件的装配时间(分): 9.8 10.4 10.6 9.6 9.7 9.9 10.9 11.1 9.6 10.2

10.3 9.6 9.9 11.2 10.6 9.8 10.5 10.1 10.5 9.7 设装配时间的总体服从正态分布,标准差为0.4,是否可以认为装配时间的均值在0.05的水平上不小于10. 0H :10<μ vs 1H :10≥μ 程序: %正态总体的方差已知时的均值检验 x1=[9.8 10.4 10.6 9.6 9.7 9.9 10.9 11.1 9.6 10.2]; x2=[10.3 9.6 9.9 11.2 10.6 9.8 10.5 10.1 10.5 9.7]; x=[x1 x2]'; m=10;sigma=0.4;a=0.05; [h,sig,muci]=ztest(x,m,sigma,a,1) 因此,在0.05的水平下,可以认为装配时间的均值不小于10。 7、某种电子元件的寿命x (以小时计)服从正态分布,2 δμ和均未知。现测得16只元件的寿命如下: 159 280 101 212 224 379 179 264 222 362 168 250 149 260 485 170 问是否有理由认为元件的平均寿命大于225(小时)? 0H :225≤μ vs 1H :225>μ 程序: %正态总体的方差求知时的均值检验 x=[159 280 101 212 224 379 179 264 222 362 168 250 149 260 485 170]; m=225;a=0.05; [h,sig,muci]=ttest(x,m,a,1)

MATLAB数学实验第二版答案(胡良剑)

数学实验答案 Chapter 1 Page20,ex1 (5) 等于[exp(1),exp(2);exp(3),exp(4)] (7) 3=1*3, 8=2*4 (8) a为各列最小值,b为最小值所在的行号 (10) 1>=4,false, 2>=3,false, 3>=2, ture, 4>=1,ture (11) 答案表明:编址第2元素满足不等式(30>=20)和编址第4元素满足不等式(40>=10) (12) 答案表明:编址第2行第1列元素满足不等式(30>=20)和编址第2行第2列元素满足不等式(40>=10) Page20, ex2 (1)a, b, c的值尽管都是1,但数据类型分别为数值,字符,逻辑,注意a与c相等,但他们不等于b (2)double(fun)输出的分别是字符a,b,s,(,x,)的ASCII码 Page20,ex3 >> r=2;p=0.5;n=12; >> T=log(r)/n/log(1+0.01*p) Page20,ex4 >> x=-2:0.05:2;f=x.^4-2.^x; >> [fmin,min_index]=min(f) 最小值最小值点编址 >> x(min_index) ans = 0.6500 最小值点 >> [f1,x1_index]=min(abs(f)) 求近似根--绝对值最小的点 f1 = 0.0328 x1_index = 24 >> x(x1_index) ans = -0.8500 >> x(x1_index)=[];f=x.^4-2.^x; 删去绝对值最小的点以求函数绝对值次小的点 >> [f2,x2_index]=min(abs(f)) 求另一近似根--函数绝对值次小的点 f2 = 0.0630 x2_index = 65 >> x(x2_index) ans = 1.2500

Matlab上机实验答案

Matlab上机实验答案 实验一 MATLAB运算基础 1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。 >> z1=2*sin(85*pi/180)/(1+exp(2)) z1 = >> x=[2 1+2i; 5]; >> z2=1/2*log(x+sqrt(1+x^2)) z2 = - + + -

>> a=::; >> z3=(exp.*a)-exp.*a))./2.*sin(a++log(+a)./2) (>> z33=(exp*a)-exp*a))/2.*sin(a++log(+a)/2)可以验证z3==z33,是否都为1) z3 = Columns 1 through 5 + + + + + Columns 6 through 10 + + + + + Columns 11 through 15 + + + + + Columns 16 through 20 + + + + +

Columns 21 through 25 + + + + + Columns 26 through 30 + + + + + Columns 31 through 35 + + + + + Columns 36 through 40 + + + + + Columns 41 through 45 + + + + + Columns 46 through 50

+ + + + + Columns 51 through 55 + + + + + Columns 56 through 60 + + + + + Column 61 + (4) 2 2 4 2 01 112 2123 t t z t t t t t ?≤< ? =-≤< ? ?-+≤< ? ,其中t=0:: >> t=0::; >> z4=(t>=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3).*(t.^ 2-2.*t+1) z4 =

matlab实验报告

MATLAB 数学实验报告 指导老师: 班级: 小组成员: 时间:201_/_/_

Matlab 第二次实验报告 小组成员: 1 题目:实验四,MATLAB 选择结构与应用实验 目的:掌握if 选择结构与程序流程控制,重点掌握break,return , pause语句的应用。 问题:问题1:验证“哥德巴赫猜想” ,即:任何一个正偶数(n>=6)均可表示为两个质数的和。要求编制一个函数程序,输入一个正偶数,返回两个质数的和。 问题分析:由用户输入一个大于6 的偶数,由input 语句实现。由if 判断语句判断是否输入的数据符合条件。再引用质数判断函数来找出两个质数,再向屏幕输出两个质数即可。 编程:function [z1,z2]=gede(n); n=input('please input n')

if n<6 disp('data error'); return end if mod(n,2)==0 for i=2:n/2 k=0; for j=2:sqrt(i) if mod(i,j)==0 k=k+1; end end for j=2:sqrt(n-i) if mod(n-i,j)==0 k=k+1; end end if k==0 fprintf('two numbers are') fprintf('%.0f,%.0f',i,n- i) break end

end end 结果分析 如上图,用户输入了大于6的偶数返回两个质数5和31,通过 不断试验,即可验证哥德巴赫猜想。 纪录:if判断语句与for循环语句联合嵌套使用可使程序结构更加明晰,更快的解决问题。 2题目:实验四,MATLAB选择结构与应用实验 目的:用matlab联系生活实际,解决一些生活中常见的实际问 题。

MATLAB实验报告

MATLAB程序设计语言 实 验 报 告 专业及班级:电子信息工程 姓名:王伟 学号:1107050322 日期 2013年6月20日

实验一 MATLAB 的基本使用 【一】 实验目的 1.了解MATALB 程序设计语言的基本特点,熟悉MATLAB 软件的运行环境; 2.掌握变量、函数等有关概念,掌握M 文件的创建、保存、打开的方法,初步具备将一般数学问题转化为对应计算机模型处理的能力; 3.掌握二维图形绘制的方法,并能用这些方法实现计算结果的可视化。 【二】 MATLAB 的基础知识 通过本课程的学习,应基本掌握以下的基础知识: 一. MATLAB 简介 二. MATLAB 的启动和退出 三. MATLAB 使用界面简介 四. 帮助信息的获取 五. MATLAB 的数值计算功能 六. 程序流程控制 七. M 文件 八. 函数文件 九. MATLAB 的可视化 【三】上机练习 1. 仔细预习第二部分内容,关于MATLAB 的基础知识。 2. 熟悉MATLAB 环境,将第二部分所有的例子在计算机上练习一遍 3. 已知矩阵???? ??????=??????????=123456789,987654321B A 。求A*B ,A .* B ,比较二者结果是否相同。并利用MATLAB 的内部函数求矩阵A 的大小、元素和、长度以 及最大值。 程序代码: >> A=[1 2 3;4 5 6;7 8 9]; >> B=[9 8 7;6 5 4;3 2 1]; >> A*B ans =

30 24 18 84 69 54 138 114 90 >> A.*B ans = 9 16 21 24 25 24 21 16 9 两者结果不同 >> [m,n]=size(A) m = 3 n = 3 >> b=sum(A) b = 12 15 18 >> a=length(A) a = 3 >>max(A) ans =

MATLAB全部实验及答案

MATLAB全部实验及答案 实验一、MATLAB基本操作 实验内容及步骤 4、有关向量、矩阵或数组的一些运算 (1)设A=15;B=20;求C=A+B与c=a+b? (2)设A=[1 2 3;4 5 6;7 8 9],B=[9 8 7;6 5 4;3 2 1];求A*B与 A.*B? A*B就是线代里面的矩阵相乘 A.*B是对应位置的元素相乘(3)设a=10,b=20;求i=a/b=0.5与j=a\b=2? (4)设a=[1 -2 3;4 5 -4;5 -6 7] 请设计出程序,分别找出小于0的矩阵元素及其位置(单下标、全 下标的形式),并将其单下标转换成全下标。 clear,clc a=[1 -2 3;4 5 -4;5 -6 7]; [x,y]=find(a<0); c=[]; for i=1:length(x) c(i,1)=a(x(i),y(i)); c(i,2)=x(i); c(i,3)=y(i); c(i,4)=(y(i)-1)*size(a,2)+x(i); end c

(5)在MATLAB命令行窗口运行A=[1,2;3,4]+i*[5,6;7,8];看结果如何?如果改成运行A=[1,2;3,4]+i[5,6;7,8],结果又如何?前面那 个是虚数矩阵,后面那个出错 (6)请写出完成下列计算的指令: a=[1 2 3;3 4 2;5 2 3],求a^2=?,a.^2=? a^2= 22 16 16 25 26 23 26 24 28 a.^2= 1 4 9 9 16 4 25 4 9 (7)有一段指令如下,请思考并说明运行结果及其原因 clear X=[1 2;8 9;3 6]; X( : ) 转化为列向量 (8)使用三元组方法,创建下列稀疏矩阵 2 0 8 0 0 0 0 1 0 4 0 0 6 0 0 0 方法一: clear,clc

matlab实验(西北农林科技大学)

课程实验报告 学年学期2015-2016学年第2学期 课程名称MATLAB与科学计算 实验名称实验一 MATLAB环境与数值计算实验室测量测绘实验中心计算机室专业年级土木13级 学生姓名 学生学号 20130 提交时间 2016-06-02 成绩 任课教师王增红 水利与建筑工程学院

实验一 MATLAB环境与数值计算 1、目的和要求 (1)熟练掌握MATLAB的启动和退出、MATLAB的命令窗口;常用选单和工具栏,通过实例初步认识对MATLAB的命令和程序运行等。 (2)熟练掌握MATLAB变量的使用; (3)熟练掌握矩阵的创建、掌握MATLAB的矩阵和数组的运算; (4)熟悉MATLAB多项式的运用,掌握MATLAB的拟合和插值方法、积分运算和统计运算。2、内容和步骤 参见教材实验一、二。 3、实验报告提交要求 (1)用MALTAB命令和M程序两种方式求解三元一次方程组。 答:以求解三元一次方程组{2a?b+3c=5 3a+b?5c=5 4a?b+c=9 为例: (2)用MALTAB命令和M程序两种方式求解3×3复数矩阵的模和相角。答:

(3)创建一个4╳4矩阵,求逆矩阵、产生对角矩阵、求矩阵的秩等。 (5)创建一个一元四次多项式,进行多项式求值,求根计算。 432

(6)创建一个一元三次多项式,取十个不同自变量值,计算多项式的值,并分别进行一阶、二阶拟合,图示原始数据和拟合结果 (7)自建一个一元三次多项式,取十个不同自变量值,计算多项式的值,并用线性、相邻点和三次插值,图示其插值结果。 解: (8)给出多组温度的测定值(内含平均温度、最低、最高温度),并求其平均温度、最低、最高温度的平均值、标准差等。 解: >> a=fix(40*rand(6,3)+1)

matlab实验内容答案

实验报告说明: matlab 课程实验需撰写8个实验报告,每个实验报告内容写每次实验内容中标号呈黑体大号字显示的题目。 第一次实验内容: 实验一 MATLAB 运算基础 一、实验目的 1.熟悉启动和退出MA TLAB 的方法。 2.熟悉MA TLAB 命令窗口的组成。 3.掌握建立矩阵的方法。 4.掌握MA TLAB 各种表达式的书写规则以及常用函数的使用。 二、实验内容 1.先求下列表达式的值,然后显示MA TLAB 工作空间的使用情况并保存全部变量。 (1)2 2sin 8511z e ?= + (2 )12ln(2 z x =+ ,其中2120.45 5i +? ? =? ?-?? (3)0.30.33sin(0.3), 3.0, 2.9, 2.8,,2.8,2.9,3.02 a a e e z a a --= +=--- 提示:利用冒号表达式生成a 向量,求各点的函数值时用点乘运算。 (4)2 2 2 01 41 1221 23 t t z t t t t t ?≤

12344347873657A -????=??????,131203327B -???? =????-?? 求下列表达式的值: (1)A+6=B 和A-B+I(其中I 为单位矩阵)。 (2)A*B 和A.*B 。 (3)A^3和A^.3 。 (4)A/B 和B\A 。 (5)[A ,B]和[A([1,3],;);B^2] 。 3.设有矩阵A 和B 12345678910111213141516171819202122232425A ????????=????????, 30 161769 23497041311B ?? ?? -?? ??=-?? ????? ? (1) 求它们的乘积C 。 (2) 将矩阵C 的右下角3×2子矩阵赋给D (3) 查看MA TLAB 工作空间使用情况。 4.完成下列操作: (1)求[100,999]之间能被21整除的数的个数。 提示:先利用冒号表达式,再利用find 和length 函数。 (2)建立一个字符串向量,删除其中的大写字母。 提示:利用find 函数和空矩阵。 第二次实验内容: 实验三 选择结构程序设计 一、实验目的 1. 掌握建立和执行M 文件的方法。 2. 掌握利用if 语句实现选择结构的方法。 3. 掌握利用switch 语句实现多分支选择结构的方法。 4. 掌握try 语句的使用。 二 、实验内容

Matlab实验五分支结构程序设计答案

实验五分支结构程序设计 实验内容 (1)从键盘输入一个数,将它反向输出,例如输入693,输出为396 >> clear >> format long g s=input('s=') n=fix(log10(s)); A=0; for i=1:n a=fix(s/10^n); x=fix(mod(s,10^i)/10.^(i-1)); A=A+x*10^(n+1-i); end A+a s=693 s = 693 ans = 396 (2)输入一个百分制成绩,要求输出成绩等级A,B,C,D,E其中90-100位A,80-89为B,70-79为C,60-69为D,60以下为E 1)分别用if语句和switch语句实现 2)输入百分制成绩后要判断成绩的合理性,对不合理的成绩应输出出错信息 If语句 >> a=input('输入成绩') if a>=90&a<=100 disp('A 成绩合理'); elseif a>=80&a<90 disp('B 成绩合理'); elseif a>=70&a<80 disp('C 成绩合理');

elseif a>=60&a<70 disp('D 成绩合理'); elseif a<60 disp('E 成绩合理'); else disp('成绩错误') end 输入成绩98 a = 98 A 成绩合理 >> a=input('输入成绩') if a>=90&a<=100 disp('A 成绩合理'); elseif a>=80&a<90 disp('B 成绩合理'); elseif a>=70&a<80 disp('C 成绩合理'); elseif a>=60&a<70 disp('D 成绩合理'); elseif a<60 disp('E 成绩合理'); else disp('成绩错误') end 输入成绩148 a = 148 成绩错误 switch语句 >> a=input('输入成绩') switch a; case num2cell(0:59) disp('E 成绩合理'); case num2cell(60:69) disp('D 成绩合理'); case num2cell(70:79) disp('C 成绩合理'); case num2cell(80:89) disp('B 成绩合理'); case num2cell(90:100) disp('A 成绩合理'); otherwise disp('成绩错误'); end

matlab实验十--周期函数

实验十周期函数 【实验目的】 1.了解周期函数的基本概念。 2.了解周期函数经过四则运算、复合运算、求导运算、积分运算后的周期性。 3.学习、掌握MATLAB软件有关命令。 【实验内容】 从图形上观察六个三角函数的周期性。 【实验准备】 1.周期函数的基本概念 函数() f x是以T为周期的周期函数是指对任何x,有 += ()() f x T f x 使得上式成立的最小正数T称为函数的最小正周期。 2.周期函数的四则运算 3.周期函数的最小正周期 【实验重点】 1、周期函数的四则运算与复合 2、周期函数的求导与积分运算 【实验难点】 1、最小正周期的确定 【实验方法与步骤】 练习 1 图形上观察六个三角函数

sinx,cosx,tanx,cotx,secx,cscx的周期性。绘制正弦函数y=sinx 在区间[-6π,6π]的图形,相应的MATLAB代码为 >>x=-6*pi:2*pi/30:6*pi; >>y=sin(x); >>plot(x,y); >>xlabel('x');ylabel('y'); 运行结果见图10.1。 从图形中可以看出y=sinx为周期函数,最小正周期T≈6。实际上,最小正周期T=2π=6.28…。同样,可以画出余弦函数y=cosx的图形,见图10.2,其最小正周期也为T=2π。

画正切函数y=tanx 的图形时,要注意函数在,0,1,2,...2x k k π π=+=±±是不连续,所以我们只能分别绘出函数在区间(,),0,1,2,...22k k k ππ ππ-+=±±的图形。相应的MATLAB 代码为 >>x=-1.5:0.01:1.5; >>x1=x-pi;x2=x+pi; >>y=tan(x);y1=tan(x1);y2=tan(x2); >>plot(x,y,x1,y1,x2,y2); >>xlabel('x');ylabel('y'); 运行结果见图10.3。

Matlab实验

MATLAB实验报告 学校:湖北文理学院 学院:物理与电子工程学院 专业:电子信息工程 学号: 2013128182 姓名:张冲 指导教师:宋立新

实验一 MATLAB环境的熟悉与基本运算 一、实验目的: 1.熟悉MATLAB开发环境 2.掌握矩阵、变量、表达式的各种基本运算 二、实验内容 1、学习使用help命令,例如在命令窗口输入help eye,然后根据帮助说明, 学习使用指令eye(其它不会用的指令,依照此方法类推) 2、学习使用clc、clear,观察command window、command history和workspace 等窗口的变化结果。 3、初步程序的编写练习,新建M-file,保存(自己设定文件名,例如exerc1、 exerc2、exerc3……),学习使用MATLAB的基本运算符。 三、练习 1)help rand,然后随机生成一个2×6的数组,观察command window、 command history和workspace等窗口的变化结果。 2)学习使用clc、clear,了解其功能和作用。 3)用逻辑表达式求下列分段函数的值 4)求[100,999]之间能被21整除的数的个数。(提示:rem,sum的用法) 四、实验结果 1)

2)clc:清除命令窗口所有内容,数值不变;clear:初始化变量的值。3) 4)

实验二 MATLAB数值运算 一、实验目的 1、掌握矩阵的基本运算 2、掌握矩阵的数组运算 二、实验内容 1)输入C=1:2:20,则C(i)表示什么?其中i=1,2,3, (10) 2)输入A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2; 3 3 3],在命令窗 口中执行下列表达式,掌握其含义: A(2, 3) A(:,2) A(3,:) A(:,1:2:3) A(:,3).*B(:,2) A(:,3)*B(2,:) A*B A.*B A^2 A.^2 B/A B./A 3)二维数组的创建和寻访,创建一个二维数组(4×8)A,查询数组A第2 行、第3列的元素,查询数组A第2行的所有元素,查询数组A第6列的所有 元素。 4)两种运算指令形式和实质内涵的比较。设有3个二维数组A 2×4,B 2×4 ,C 2×2 , 写出所有由2个数组参与的合法的数组运算和矩阵指令。 5)学习使用表4列的常用函数(通过help方法) 6)学习使用表5数组操作函数。 7)生成一个3行3列的随机矩阵,并逆时针旋转90°,左右翻转,上下翻转。 8)已知a=[1 2 3],b=[4 5 6],求a.\b和a./ b 9)用reshape指令生成下列矩阵,并取出方框内的数组元素。 三、实验结果 1)C(i)表示C中的第i个的数值;

(完整版)Matlab实验7图形绘制

实验7:图形绘制 一、实验目的 1、 掌握绘制二维图形的常用函数。 2、 掌握绘制三维图形的常用函数。 3、 掌握绘制图形的辅助操作。 二、实验内容 1、 已知2*13),2cos(2,12 y y y x y x y ===,完成下列操作: (1) 在同一坐标系下用不同的颜色和线型绘制三条曲线。 %homework_7_1_1.m x=0:pi/100:2*pi; y1=x.*x; y2=cos(2*x); y3=y1.*y2; plot(x,y1,'r--',x,y2,'k:',x,y3,'b-.'); (2) 以子图形式绘制三条曲线。 %homework_7_1_2.m x=0:pi/100:2*pi; y1=x.*x; y2=cos(2*x); y3=y1.*y2; subplot(2, 2, 1); plot(x,y1,'r--'); subplot(2, 2, 2); plot(x,y2,'k:'); subplot(2, 2, 3); plot(x,y3,'b-.'); (3) 分别用条形图、阶梯图、杆图和填充图绘制三条曲线。 %homework_7_1_3.m %ì?D?í??¢?×ìYí??¢??í?oíì?3?í? x=0:pi/100:2*pi; y1=x.*x; y2=cos(2*x); y3=y1.*y2; %μúò?DD subplot(4, 3, 1); bar(x,y1,'r'); subplot(4, 3, 2); bar(x,y2,'k'); subplot(4, 3, 3); bar(x,y3,'b'); %μú?tDD

stairs(x,y1,'r'); subplot(4, 3, 5); stairs(x,y2,'k'); subplot(4, 3, 6); stairs(x,y3,'b'); %μúèyDD subplot(4, 3, 7); stem(x,y1,'r'); subplot(4, 3, 8); stem(x,y2,'k'); subplot(4, 3, 9); stem(x,y3,'b'); %μú??DD subplot(4, 3, 10); fill(x,y1,'r'); subplot(4, 3, 11); fill(x,y2,'k'); subplot(4, 3, 12); fill(x,y3,'b'); 2、 绘制极坐标曲线)sin(θρn b a +=,并分析参数a ,b ,n 对曲线形状的影响。 %homework_7_2.m function homework_7_2(a,b,n) theta=0:0.01:2*pi; rho=a.*sin(b+n.*theta); polar(theta,rho,'k'); %homework_7_2_tiao.m % a μ?ó°?ì subplot(3, 4, 1); homework_7_2(1,1,1) subplot(3, 4, 2); homework_7_2(2,1,1) subplot(3, 4, 3); homework_7_2(3,1,1) subplot(3, 4, 4); homework_7_2(4,1,1) % b μ?ó°?ì subplot(3, 4, 1); homework_7_2(1,1,1) subplot(3, 4, 2); homework_7_2(1,2,1) subplot(3, 4, 3); homework_7_2(1,3,1)

Matlab实验第一次实验答案

实验一Matlab使用方法和程序设计 一、实验目的 1、掌握Matlab软件使用的基本方法; 2、熟悉Matlab的数据表示、基本运算和程序控制语句 3、熟悉Matlab绘图命令及基本绘图控制 4、熟悉Matlab程序设计的基本方法 二、实验内容: 1、帮助命令 使用help命令,查找sqrt(开方)函数的使用方法; 解:sqrt Square root Syntax B = sqrt(X) Description B = sqrt(X) returns the square root of each element of the array X. For the elements of X that are negative or complex, sqrt(X) produces complex results. Remarks See sqrtm for the matrix square root. Examples sqrt((-2:2)') ans = 0 + 1.4142i 0 + 1.0000i

1.0000 1.4142 2、矩阵运算 (1)矩阵的乘法 已知A=[1 2;3 4]; B=[5 5;7 8]; 求A^2*B 解:A=[1 2;3 4 ]; B=[5 5;7 8 ]; A^2*B (2)矩阵除法 已知A=[1 2 3;4 5 6;7 8 9]; B=[1 0 0;0 2 0;0 0 3]; A\B,A/B 解:A=[1 2 3;4 5 6;7 8 9 ]; B=[1 0 0;0 2 0;0 0 3 ]; A\B,A/B (3)矩阵的转置及共轭转置

MATLAB实验七

实验七、MATLAB的绘图操作(一) 1、>> x=0:0.1:10;y1=x.^2;y2=cos(2*x);y3=y1.*y2; 在同一坐标下用不同的颜色和线型绘制三条曲线 >> plot(x,y1,':'),hold on,plot(x,y2,'b'),hold on,plot(y3,'g') 以子图形式绘制3条曲线 >> subplot(2,2,1),plot(x,y1),subplot(2,2,2),plot(x,y2),subplot(2,2,3),plot(y3) 分别以条形图阶梯图直方图和填充图绘制曲线 条形 图:>>subplot(2,2,1),bar(x,y1),subplot(2,2,2),bar(x,y2),subplot(2,2,3),bar(y3)

阶梯图: >> subplot(2,2,1),stairs(x,y1),subplot(2,2,2),stairs(x,y2),subplot(2,2,3),stairs(y3) 填充图: >> subplot(2,2,1),fill(x,y1,'r'),subplot(2,2,2),fill(x,y2,'r'),subplot(2,2,3),fill(x,y3,'r') 2、绘制极坐标曲线p=a*sin(b+nθ) >> a=2;b=4;n=3;th=0:0.01:pi;polar(th,a*sin(b+n*th)) 3、绘制函数的曲面图 (1、)>> [x,y]=meshgrid(-1:0.01:1,-1:0.01:1);z=(x.^2-2*x).*exp(-x.^2-y.^2-x.*y);plot3(x,y,z,'y')

实验一Matlab基本操作-新版.pdf

实验一Matlab基本操作 题目: 1.利用基本矩阵产生 3x3 和15x8 的单位阵,全 1 阵,全0 阵,均匀分布的随 机阵([-1,1]之间),正态分布随机阵(方差4,均值1) 2.利用diag()函数和rot90()产生下列矩阵: 然后求解a 阵的逆矩阵aa 及b 阵的特征值和对应特征向量,并利用reshape 将 aa 阵变换成行向量。 3.产生一均匀分布在(-5,5)随机阵(50x2),精确到小数点后一位。 4.编程实现当α∈[-π,π],间隔为1o 时,求解正弦和余弦的值,并利用plot() 函数绘制正弦,余弦曲线。 5.利用rand 函数产生(0,1)间均匀分布的10x10 随机矩阵a,然后统计a 中大于等于0.6 的元素个数。 6.利用randn 函数产生均值为0,方差为 1 的10x10 正态分布随机阵,然后统计其 中大于-0.5,小于0.5 的元素个数。 7.编程实现下表功能: 8.有一矩阵a,找出矩阵中其值大于 1 的元素,并将他们重新排列成列向量b。9.在一保定市区9 月份平均气温变化测量矩阵temp_Baoding_sep 中(48x30),存在有奇异值(大于42o C,小于0o C),编程实现删除奇异值所在的行。 10.在给定的100x100 矩阵中,删除整行内容全为0 的行,删除整列内容全为0 的列。 程序: 1. %3X3矩阵 a1=eye(3) a2=ones(3) a3=zeros(3) a4=1-2*rand(3) a5=2*randn(3)+1 %15X8矩阵 b1=eye(15,8) b2=ones(15,8) b3=zeros(15,8) b4=1-2*rand(15,8) b5=2*randn(15,8)+1 运行结果:

MATLAB上机实验(答案)

MATLAB工具软件实验(1) (1)生成一个4×4的随机矩阵,求该矩阵的特征值和特征向量。程序: A=rand(4) [L,D]=eig(A) 结果: A = 0.9501 0.8913 0.8214 0.9218 0.2311 0.7621 0.4447 0.7382 0.6068 0.4565 0.6154 0.1763 0.4860 0.0185 0.7919 0.4057 L = -0.7412 -0.2729 - 0.1338i -0.2729 + 0.1338i -0.5413 -0.3955 -0.2609 - 0.4421i -0.2609 + 0.4421i 0.5416 -0.4062 -0.0833 + 0.4672i -0.0833 - 0.4672i 0.4276 -0.3595 0.6472 0.6472 -0.4804 D = 2.3230 0 0 0 0 0.0914 + 0.4586i 0 0 0 0 0.0914 - 0.4586i 0 0 0 0 0.2275 (2)给出一系列的a值,采用函数 22 22 1 25 x y a a += - 画一组椭圆。 程序: a=0.5:0.5:4.5; % a的绝对值不能大于5 t=[0:pi/50:2*pi]'; % 用参数t表示椭圆方程 X=cos(t)*a; Y=sin(t)*sqrt(25-a.^2); plot(X,Y) 结果: (3)X=[9,2,-3,-6,7,-2,1,7,4,-6,8,4,0,-2], (a)写出计算其负元素个数的程序。程序: X=[9,2,-3,-6,7,-2,1,7,4,-6,8,4,0,-2]; L=X<0; A=sum(L) 结果: A =

MATLAB)课后实验答案[1]

实验一 MATLAB 运算基础 1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。 (1) 0 12 2sin851z e =+ (2) 221ln(1)2 z x x =++,其中2 120.45 5i x +??=? ?-?? (3) 0.30.330.3sin(0.3)ln , 3.0, 2.9,,2.9,3.022a a e e a z a a --+= ++=-- (4) 2242011 122123t t z t t t t t ?≤=0&t<1).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3) .*(t.^2-2*t+1)

4. 完成下列操作: (1) 求[100,999]之间能被21整除的数的个数。 (2) 建立一个字符串向量,删除其中的大写字母。 解:(1) 结果: m=100:999; n=find(mod(m,21)==0); length(n) ans = 43 (2). 建立一个字符串向量例如: ch='ABC123d4e56Fg9';则要求结果是: ch='ABC123d4e56Fg9'; k=find(ch>='A'&ch<='Z'); ch(k)=[] ch =

河南城建学院MATLAB上机实验答案

一熟悉Matlab工作环境 1、熟悉Matlab的5个基本窗口 思考题: (1)变量如何声明,变量名须遵守什么规则、是否区分大小写。 答:变量一般不需事先对变量的数据类型进行声明,系统会依据变量被赋值的类型自动进行类型识别,也就是说变量可以直接赋值而不用提前声明。变量名要遵守以下几条规则:?变量名必须以字母开头,只能由字母、数字或下划线组成。 ?变量名区分大小写。 ?变量名不能超过63个字符。 ?关键字不能作为变量名。 ?最好不要用特殊常量作为变量名。 (2)试说明分号、逗号、冒号的用法。 分号:分隔不想显示计算结果的各语句;矩阵行与行的分隔符。 逗号:分隔欲显示计算结果的各语句;变量分隔符;矩阵一行中各元素间的分隔符。 冒号:用于生成一维数值数组;表示一维数组的全部元素或多维数组某一维的全部元素。 (3)linspace()称为“线性等分”函数,说明它的用法。 LINSPACE Linearly spaced vector. 线性等分函数 LINSPACE(X1, X2) generates a row vector of 100 linearly equally spaced points between X1 and X2. 以X1为首元素,X2为末元素平均生成100个元素的行向量。 LINSPACE(X1, X2, N) generates N points between X1 and X2. For N < 2, LINSPACE returns X2. 以X1为首元素,X2为末元素平均生成n个元素的行向量。如果n<2,返回X2。 Class support for inputs X1,X2: float: double, single 数据类型:单精度、双精度浮点型。 (4)说明函数ones()、zeros()、eye()的用法。 ones()生成全1矩阵。 zeros()生成全0矩阵。 eye()生成单位矩阵。 2、Matlab的数值显示格式

matlab基础实验

实验一 MATLAB基础知识 一、实验目的 1.熟练掌握Matlab的启动与退出; 2. 熟悉Matalb的命令窗口,常用命令和帮助系统; 3. 熟悉Matalb的数据类型; 4. 熟悉Matlab的基本矩阵操作,运算符和字符串处理 二、实验设备 1.方正电脑 2.MATLAB软件 三、实验内容 1. 已知矩阵 A=[3 4 -1 1 -9 10;6 5 0 7 4 -16;1 -4 7 -1 6 -8;2 -4 5 -6 12 -8;-3 6 -7 8 -1 1;8 -4 9 1 3 0] 写出完成下列操作的命令: (1) 将矩阵A的第2-5行中第1,3,5列元素赋给矩阵B; (2) 删除矩阵A的第7号元素; (3) 将矩阵A的每个元素加上30; (4) 求矩阵A的大小和维数; (5) 将矩阵A的右下角3*2矩阵构成矩阵C; (6) 输出[-5,5]范围内的所有元素; 程序: A=[3 4 -1 1 -9 10;6 5 0 7 4 -16;1 -4 7 -1 6 -8;2 -4 5 -6 12 -8;-3 6 -7 8 -1 1;8 -4 9 1 3 0] %(1) B=A(2:5,[1 3 5]) %(2) A2=A; A2(7)=[] %(3) A3=A+30 %(4) length(A) size(A) %(5) C=A(end-2:end,end-1:end) %(6) A6=A.*(A>=-5 & A<=5) 结果: A =

3 4 -1 1 -9 10 6 5 0 7 4 -16 1 -4 7 -1 6 -8 2 -4 5 -6 12 -8 -3 6 -7 8 -1 1 8 -4 9 1 3 0 B = 6 0 4 1 7 6 2 5 12 -3 -7 -1 A2 = Columns 1 through 7 3 6 1 2 -3 8 5 Columns 8 through 14 -4 -4 6 -4 -1 0 7 Columns 15 through 21 5 -7 9 1 7 -1 - 6 Columns 22 through 28 8 1 -9 4 6 12 -1 Columns 29 through 35 3 10 -16 -8 -8 1 0 A3 = 33 34 29 31 21 40 36 35 30 37 34 14

相关主题
文本预览
相关文档 最新文档