当前位置:文档之家› 实验一 Matlab基本操作及运算

实验一 Matlab基本操作及运算

实验一Matlab基本操作及运算

一、实验目的:

1.熟悉MATLAB基本操作

2.掌握矩阵、变量、表达式的各种基本运算

二、实验基本知识:

1.熟悉MATLAB环境

熟悉MATLAB桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览器文件和搜索路径浏览器。

2.掌握MATLAB常用命令

3.MATLAB变量与运算符

变量命名规则如下:

(1)变量名可以由英语字母、数字和下划线组成

(2)变量名应以英文字母开头

(3)长度不大于31个

(4)区分大小写

MATLAB中设置了一些特殊的变量与常量,列于下表。

MATLAB运算符,通过下面几个表来说明MATLAB的各种常用运算符

表2 MATLAB算术运算符

表3 MATLAB关系运算符

表4 MATLAB逻辑运算符

表5 MATLAB特殊运算

4. MATLAB的一维、二维数组的访问

表6 子数组访问与赋值常用的相关指令格式

5. MATLAB的基本运算

表7 两种运算指令形式和实质内涵的异同表

6.MATLAB的常用函数

表8 标准数组生成函数

表9 数组操作函数

7.多项式运算

poly——产生特征多项式系数向量

roots——求多项式的根

p=poly2str(c,‘x’)—(将特征多项式系数向量c转换为以习惯方式显示是多项式)conv, convs——多项式乘运算

deconv——多项式除运算

polyder(p)——求p的微分

polyder(a, b)——求多项式a,b乘积的微分

[p,q]=polyder(p1,p2)——求解多项式p1/p2微分的有理分式

poly(p,A)——按数组运算规则求多项式p在自变量A的值

polym(p,A)——按矩阵运算规则求多项式p在自变量A的值

三、实验内容

1、新建一个文件夹(自己的名字命名)

2、启动MATLAB,将该文件夹添加到MATLAB路径管理器中。方法如下:

3、保存,关闭对话框(要求抓取自己实验的图,插入到自己的实验报告中)

4、学习使用help命令,例如在命令窗口输入help eye,然后根据帮助说明,

学习使用指令eye(其它不会用的指令,依照此方法类推)

5、使用clc 、clear ,观察command window 、command history 和workspace

等窗口的变化结果。、

1> 执行clc 后,command window 内容被清空,command history 多出一行clc ,workspace 无变

2> 执行clear 后,command window 内容不变,command history 多出一行clear ,workspace 无变

6、假设x =3,y = 4,用Matlab 计算下列表达式: (1)

()

23

2

x y x y -=576 (2)

43x

y

=1 (3) 24x x π- =0.4654 (4)

3

3x

x x y -=-0.7297 >> x=3;y=4;z=(x^2*y^3)/(x-y)^2 z = 576

>> x=3;y=4;z=(4*x)/(3*y) z =

1

>> x=3;y=4;z=4/x*pi*x^(-2)

z =

0.4654

>> x=3;y=4;z=x^3/(x^3-y^x)

z =

-0.7297

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

量。

(1)

12

2sin85

1

z

e

=

+

=0.2375

z1=2*sin(85/180*pi)/(1+exp(2)) z1 =

0.2375

(2)

2

212 1

ln(

0.455 2

i

z x x

+

??

==??

-??

其中=

>> x=[2,1+2i;-0.45,5]

x =

2.0000 1.0000 + 2.0000i

-0.4500 5.0000

>> z2=1/2*log(x+sqrt(1+x^2))

z2 =

0.7114 - 0.0253i 0.8968 + 0.3658i

0.2139 + 0.9343i 1.1541 - 0.0044i

8、练习使用MATLAB的基本运算符、数组访问指令、标准数组生成函数和

数组操作函数。

(1)输入help rand,然后随机生成一个2×6的数组,观察command window、command history和workspace等窗口的变化结果。

(2)分别输入clc、clear,了解其功能和作用。

输入clc时候,command window里的内容被清空

输入clear时候,workspace的变量被清除了

(3)输入C=1:2:20,则C(i)表示什么?其中i=1,2,3, (10)

从1到20中,每相邻两个数相差2.即C(i+1)-C(i)=2

C(i)表示C数组中第i个元素,C = 1 3 5 7 9 11 13 15 17 19

(4)输入A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2; 3 3 3],在命令窗口中执行下列表达式,记录输出结果并说明其含义:

输入A=[7 1 5;2 5 6;3 1 5]

输出一个3行3列的矩阵

A =

7 1 5

2 5 6

3 1 5

输入B=[1 1 1; 2 2 2; 3 3 3]

输出一个3行3列的矩阵

B =

1 1 1

2 2 2

3 3 3

(5)二维数组的创建和访问,创建一个二维数组(4×8)A,查询数组A第2行、第3列的元素,查询数组A第2行的所有元素,查询数组A第6列的所有元素。

clc;

A=[1 2 3 4 5 6 7 8;5 6 7 8 9 0 4 3;3 4 5 6 7 8 9 0;7 8 9 0 6 4 1 2]

A(2,3)

A(2,:)

A(:,6)

(6)使用表8列出的常用函数来创建二维矩阵(可通过help方法,查看实例)。

clc;

A=[1 2;3 4;5 6;7 8]

A =

1 2

3 4

5 6

7 8

9、下面的语句用于画出函数

()0.2

2x

y x e-

=

在[0,10]区间的值

x = 0:0.1:10;

y = 2*exp(-0.2*x);

plot(x,y)

用Matlab编辑器创建一个m文件,把上述语句写入这个m文件并命名为“test1.m”,保存在当前路径中,然后在命令窗中键入test1,观察结果和运行程序后工作空间的变化

10、多项式运算

(1)求多项式3

p x x x

=--的根

()24

clc;

p=[1,0,-2,-4]

roots(p)

(2)已知A=[1.2 3 5 0.9; 5 1.7 5 6; 3 9 0 1; 1 2 3 4] ,求矩阵 A 的特征多项式;

clc;

A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4]

B=poly(A)

ps=poly2str(B,'x’)

11、完成下列操作:

求[100,999]之间能被21整除的数的个数。

clc;

m=0;

for n=100:999

if n/21==round(n/21)

m=m+1;

k(m)=n;

else

end

end

k,m

实验报告提交格式:

1、实验题目

2、实验目的

3、实验内容(包括运行的结果或截图)

实验一 MATLAB基本操作及运算(含实验报告).

实验一 MATLAB 基本操作及运算 一、 实验目的 1、 理解Matlab 数据对象的特点; 2、 掌握基本Matlab 运算规则; 3、 掌握Matlab 帮助的使用方法; 二、 实验的设备及条件 计算机一台(带有MATLAB7.0以上的软件环境)。 三、 实验内容 要求建立一个名为experiment01.m 的,把与实验内容1-7相关的实验命令都放入该文件中,题与题之间用相应注释分割。注意对实验中出现的相关函数或变量,请使用help 或doc 查询相关帮助文档,学习函数的用法。 1、 建立以下标量: 1) a=10 2) b=2.5×1023 3) c=2+3i ,(i 为虚数单位) 4) d=3/2πj e ,(j 为虚数单位,这里要用到exp ,pi ) 2、 建立以下向量: 1) aVec=[3.14 15 9 26] 2) bVec=????? ???????18228871.2 3) cVec=[5 4.8 … -4.8 -5 ] (向量中的数值从5到-5,步长为-0.2) 4) dVec=[100 100.01 … 100.99 101] (产生1到10之间的等对数间隔向量,参考logspace ,注意向量的长度) 3、 建立以下矩阵: 1)???? ??????=2222 aMat aMat 一个9×9的矩阵,其元素全为2;(参考ones 或zeros )

2)??????? ?????????=1000005000001 bMat bMat 是一个9×9的矩阵,除主对角上的元素为[1 2 3 4 5 4 3 2 1]外,其余元素均为0。(参考diag )。 3)100 20109212291111 =cMat cMat 为一个10×10的矩阵,可有1:100的向量来产生(参考reshape ) 4)???? ??????=NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN dMat dMat 为3×4的NaN 矩阵,(参考nan ) 5)?? ????---=8710225113eMat 6)产生一个5×3随机整数矩阵fMat ,其值的范围在-3到3之间。(参考rand 和floor 或ceil ) 4、 使用题1中的变量计算下列等式的x,y,z 的值: 1) ) 6/)15((11--+=a e x 2) g g h h b a y /121,)(=+=提示π,参考sqrt 。 3) c c a d c d c R z ))3/sin()]))([(log(π-+= ,其中R 表示取括号内复数的实数部分,c 表示c 的共轭复数,log 是自然对数。(参考real ,conj ,log ) 5、 使用题2中的向量求解一下等式: 1))25.2/(22 25.221 cVec e xVec -=π, 其中cVec 指的是题2 中定义的向量cVec ,一下雷同。 2)22)(bVec aVec yVec T +=,T aVec 表示aVec 的转置 3) )/1(log 10dVec zVec =,10log 表示已10为底的对数,参考log10 6、 使用题2和题3中所产生的向量和矩阵计算以下等式,注意本题的操作

matlab实验2MATLAB基础知识

实验2 MATLAB基础知识 一、实验目的 1.熟悉MATLAB的数据类型 2.熟悉MATLAB的基本矩阵操作 3.熟悉MATLAB的运算符 4.熟悉MATLAB的字符串处理 二、实验内容 1.创建结构体DataTypes,属性包含MATLAB支持的所有数据类型,并通过赋值构 造结构体二维数组。 DataTypes.char=char([65]); DataTypes.string='hello'; DataTypes.int=100; DataTypes.single=1.560 DataTypes = char: 'A' string: 'hello' int: 100 single: 1.5600 >> DataTypes(2).char=char([66]); DataTypes(2).string='kugou'; DataTypes(2).int=200; DataTypes(2).single=3.14 DataTypes = 1x2 struct array with fields: char string int single 2.用满矩阵和稀疏矩阵存储方式分别构造下述矩阵。 A=

答: A = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 B = A = 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 A = 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0 1 A = 0 1 0 0 1 1 0 0 0 0 1 0 0 0 0 1 A = 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 1

实验MATLAB符号运算

实验四 MATLAB 符号运算 一、实验目的 掌握符号变量和符号表达式的创建,掌握MATLAB 的symbol 工具箱的一些基本应用。 二、实验内容 (1) 符号变量、表达式、方程及函数的表示。 (2) 符号微积分运算。 (3) 符号表达式的操作和转换。 (4) 符号微分方程求解。 三、实验步骤 1. 符号运算的引入 在数值运算中如果求x x x πsin lim 0→,则可以不断地让x 接近于0,以求得表达式接近什么数,但是终究不能令0=x ,因为在数值运算中0是不能作除数的。MATLAB 的符号运算能解决这类问题。输入如下命令: >>f=sym('sin(pi*x)/x') >>limit(f,'x',0) >> f=sym('sin(pi*x)/x') f = sin(pi*x)/x >> limit(f,'x',0) ans = Pi 2. 符号常量、符号变量、符号表达式的创建 1) 使用sym( )创建 输入以下命令,观察Workspace 中A 、B 、f 是什么类型的数据,占用多少字节的内存空间。 >> A=sym('1') >> B=sym('x') >> f=sym('2*x^2+3*y-1') >> clear >> f1=sym('1+2') >> f2=sym(1+2) >> f3=sym('2*x+3') >> f4=sym(2*x+3) >> x=1 >> f4=sym(2*x+3) > A=sym('1') A = 1

>> B=sym('x') B = x >> f=sym('2*x^2+3*y-1') f = 2*x^2+3*y-1 >> clear >> f1=sym('1+2') f1 = 1+2 >> f2=sym(1+2) f2 = 3 >> f3=sym('2*x+3') f3 = 2*x+3 >> f4=sym(2*x+3) ??? Undefined function or variable 'x'. >> x=1 x = >> f4=sym(2*x+3) f4 =

实验1_基于MATLAB的图像基本操作

第1次实验基于MATLAB的图像基本操作 二、实验内容和要求: 1.实现图像Baboon.bmp(MATLAB自带)的读入(可使用imread)和显示(可使用imshow)操作,代码加上足够的注释,需要建立一个M文件实现。 I=imread('F:\标准图像\Baboon.bmp');//读入图像 imshow(I);//显示图像 2.编程实现将一幅RGB图像转换为二值图像,并在一个窗口同时显示处理过程中得到的每一个图像和原图像,同时需要给图像加上标题。(原始数据可以是任意的RGB图像)。需要新建一个M文件实现。 figure,subplot(1,3,1),imshow(I(:,:,1)),title('R'); subplot(1,3,2),imshow(I(:,:,2)),title('G'); subplot(1,3,3),imshow(I(:,:,3)),title('B'); 3.计算图象统计参数: 读取图像(文件名为‘cameraman.tif’); 最大值 最小值 均值 K=imread('cameraman.tif'); d_max=max(K(:)) d_min=min(K(:)) d_mean=mean(K(:)) 4.利用帮助系统了解im2double,imresize,image函数的作用和语法,并利用这些函数处理已知图像pout.tif(MATLAB自带)并显示处理前后效果。 J=imread('pout.tif'); J1=im2double(J); figure,subplot(1,2,1),imshow(J),title('Before') subplot(1,2,2),imshow(J1),title('After') J2=imresize(J,0.3); figure,subplot(1,2,1),imshow(J),title('Before') subplot(1,2,2),imshow(J2),title('After') figure,subplot(1,2,1),imshow(J),title('Before') subplot(1,2,2),image(J);title('After') 1

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

实验一 Matlab基本操作

实验一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讲义 第一章 MATLAB系统概述 1.1 MATLAB系统概述 MATLAB(MATrix LABoratory)矩阵实验室的缩写,全部用C语言编写。 特点: (1)以复数矩阵作为基本编程单元,矩阵运算如同其它高级语言中的语言变量操作一样方便,而且矩阵无需定义即可采用。 (2)语句书写简单。 (3)语句功能强大。 (4)有丰富的图形功能。如plot,plot3语句等。 (5)提供了许多面向应用问题求解的工具箱函数。目前,有20多个工具箱函数,如信号处理、图像处理、控制系统、系统识别、最优化、神经网络的模糊系统等。 (6)易扩充。 1.2 MATLAB系统组成 (1)MATLAB语言 MATLAB语言是高级的矩阵、矢量语言,具有控制流向语句、函数、数据结构、输入输出等功能。同时MATLAB又具有面向对象编程特色。MATLAB语言包括运算符和特殊字符、编程语言结构、字符串、文件输入/输出、时间和日期、数据类型和结构等部分。 (2)开发环境 MATLAB开发环境有一系列的工具和功能体,其部分具有图形用户界面,包括MATLAB桌面、命令窗口、命令历史窗口、帮助游览器、工作空间、文件和搜索路径等。 (3)图形处理 图形处理包括二维、三维数据可视化,图像处理、模拟、图形表示等图形命令。还包括低级的图形命令,供用户自由制作、控制图形特性之用。 (4)数学函数库 有求和、正弦、余弦等基本函数到矩阵求逆、求矩阵特征值和特征矢量等。 MATLAB数学函数库可分为基本矩阵和操作、基本数学函数、特殊化数学函数、线性矩阵函数、数学分析和付里叶变换、多项式和二重函数等。 (5)MATLAB应用程序接口(API) MATLAB程序可以和C/C++语言及FORTRAN程序结合起来,可将以前编写的C/C++、FORTRAN语言程序移植到MATLAB中。 1.3 MATLAB的应用围包括: MATLAB的典型应用包括: ●数学计算 ●算法开发 ●建模、仿真和演算 ●数据分析和可视化 ●科学与工程绘图 ●应用开发(包括建立图形用户界面) 以矩阵为基本对象 第二章 Matlab基础

matlab操作实验报告

实验一matlab基本操作 一、实验目的 熟悉matlab的安装与启动;熟悉matlab用户界面;熟悉matlab功能、建模元素;熟悉matlab优化建模过程。 二、实验设备与工具 1.计算机 2.matlab软件 三、实验步骤 1. 了解matlab的硬件和软件必备环境; 2. 启动matlab; 3. 学习优化建模过程。 四、实验报告要求 1. 写出matlab系统界面的各个构成;以及系统布局区的组成;以及每一部 分的功能; 2. 优化建模过程应用举例 五、实验内容 (一)、Matlab操作界面 1.命令窗口(command window) 2.命令历史窗口(command history) 3.工作空间管理窗口(workspace) 4.当前路径窗口(current directory) (二)、优化建模过程应用举例 1、简单矩阵 123 456 789 A ?? ?? =?? ?? ?? 的输入步骤。 (1)在键盘上输入下列内容 A = [1,1,3; 4,5,6; 7,8,9] (2)按【Enter】键,指令被执行。 (3)在指令执行后,MATLAB指令窗中将显示以下结果: A = 1 2 3 4 5 6 7 8 9

2、矩阵的分行输入。 A=[1,2,3 4,5,6 7,8,9] A = 1 2 3 4 5 6 7 8 9 3、指令的续行输入 S=1-1/2+1/3-1/4+ ... 1/5-1/6+1/7-1/8 S = 0.6345 4、画出衰减振荡曲线t e y t 3sin 3-=及其它的包络线3 0t e y -=。t 的取值范围是]4,0[π。 t=0:pi/50:4*pi; y0=exp(-t/3); y=exp(-t/3).*sin(3*t); plot(t,y,'-r',t,y0,':b',t,-y0,':b') grid 5、画出2222) sin(y x y x z ++=所表示的三维曲面。y x ,的取值范围是]8,8[-。 clear;x=-8:0.5:8; y=x';

实验二 MATLAB基础知识(二)

Experiment 1. Fundamental Knowledge of Matlab (II) 【Experimental Purposes】 1、熟悉并掌握MATLAB的工作环境。 2、运行简单命令,实现数组及矩阵的输入输出,了解在MATLAB下如何绘图。【Experimental Principle】 1. Vectors Let's start off by creating something simple, like a vector. Enter each element of the vector (separated by a space) between brackets, and set it equal to a variable. For example, to create the vector a, enter into the MATLAB command window (you can "copy" and "paste" from your browser into MATLAB to make it easy): a = [1 2 3 4 5 6 9 8 7] MATLAB should return: a = 1 2 3 4 5 6 9 8 7 To generate a series that does not use the default of incrementing by 1, specify an additional value with the colon operator (first:step:last). In between the starting and ending value is a step value that tells MATLAB how much to increment (or decrement, if step is negative) between each number it generates. To generate a vector with elements between 0 and 20, incrementing by 2(this method is frequently used to create a time vector), use t = 0:2:20 t = 0 2 4 6 8 10 12 14 16 18 20 Manipulating vectors is almost as easy as creating them. First, suppose you would like to add 2 to each of the elements in vector 'a'. The equation for that looks like: b = a + 2 b = 3 4 5 6 7 8 11 10 9 Now suppose, you would like to add two vectors together. If the two vectors are the same length, it is easy. Simply add the two as shown below: c = a + b c = 4 6 8 10 12 14 20 18 16 Subtraction of vectors of the same length works exactly the same way. MATLAB sometimes stores such a list in a matrix with just one row, and other times in a matrix with just one column. In the first instance, such a 1-row matrix is called a row-vector; in the

MATLAB)课后实验答案[1]

实验一 MATLAB 运算基础 1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。 (1) 0 12 2sin 851z e =+ (2) 21ln(2 z 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 --+= ++=--L (4) 2242011 122123t t z t t t t t ?≤

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

实验二 MATLAB 矩阵分析与处理 1. 设有分块矩阵33322322E R A O S ?????? =? ??? ,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证2 2 E R RS A O S +?? =???? 。 解: M 文件如下; 5. 下面是一个线性方程组: 1 231 1 12340.951110.673450.521114 5 6x x x ?? ??????????????=??? ??????????????????? (1) 求方程的解。 (2) 将方程右边向量元素b 3改为0.53再求解,并比较b 3的变化和解的相对变化。 (3) 计算系数矩阵A 的条件数并分析结论。 解: M 文件如下: 123d4e56g9

MATLAB基本操作实验报告

MATLAB基本操作 实验报告 课程名称: 院系: 专业班级: 学号: 学生姓名: 指导教师: 开课时间:至学年第学期

一、学生撰写要求 按照实验课程培养方案的要求,每门实验课程中的每一个实验项目完成后,每位参加实验的学生均须在实验教师规定的时间内独立完成一份实验报告,不得抄袭,不得缺交。 学生撰写实验报告时应严格按照本实验报告规定的内容和要求填写。字迹工整,文字简练,数据齐全,图表规范,计算正确,分析充分、具体、定量。 二、教师评阅与装订要求 1.实验报告批改要深入细致,批改过程中要发现和纠正学生实验报告中的问题,给出评语和实验报告成绩,签名并注明批改日期。实验报告批改完成后,应采用适当的形式将学生实验报告中存在的问题及时反馈给学生。 2.实验报告成绩用百分制评定,并给出成绩评定的依据或评分标准(附于实验报告成绩登记表后)。对迟交实验报告的学生要酌情扣分,对缺交和抄袭实验报告的学生应及时批评教育,并对该次实验报告的分数以零分处理。对单独设课的实验课程,如学生抄袭或缺交实验报告达该课程全学期实验报告总次数三分之一以上,不得同意其参加本课程的考核。 3.各实验项目的实验报告成绩登记在实验报告成绩登记表中。本学期实验项目全部完成后,给定实验报告综合成绩。 4.实验报告综合成绩应按课程教学大纲规定比例(一般为10-15%)计入实验课总评成绩;实验总评成绩原则上应包括考勤、实验报告、考核(操作、理论)等多方面成绩; 5.实验教师每学期负责对拟存档的学生实验报告按课程、学生收齐并装订,按如下顺序装订成册:实验报告封面、实验报告成绩登记表、实验报告成绩评定依据、实验报告(按教学进度表规定的实验项目顺序排序)。装订时统一靠左侧按“两钉三等分”原则装订。

实验MATLAB符号计算

实验四符号计算 符号计算的特点:一,运算以推理解析的方式进行,因此不受计算误差积累问题困扰;二,符号计算,或给出完全正确的封闭解,或给出任意精度的数值解(当封闭解不存在时);三,符号计算指令的调用比较简单,经典教科书公式相近;四,计算所需时间较长,有时难以忍受。 在MATLAB中,符号计算虽以数值计算的补充身份出现,但涉及符号计算的指令使用、运算符操作、计算结果可视化、程序编制以及在线帮助系统都是十分完整、便捷的。 MATLAB的升级和符号计算内核Maple的升级,决定着符号计算工具包的升级。但从用户使用角度看,这些升级所引起的变化相当细微。即使这样,本章还是及时作了相应的更新和说明。如MATLAB 6.5+ 版开始启用Maple VIII的计算引擎,从而克服了Maple V计算“广义Fourier变换”时的错误(详见第5.4.1节)。 5.1符号对象和符号表达式 5.1.1符号对象的生成和使用 【例5.1.1-1】符号常数形成中的差异 a1=[1/3,pi/7,sqrt(5),pi+sqrt(5)] % <1> a2=sym([1/3,pi/7,sqrt(5),pi+sqrt(5)]) % <2> a3=sym([1/3,pi/7,sqrt(5),pi+sqrt(5)],'e') % <3> a4=sym('[1/3,pi/7,sqrt(5),pi+sqrt(5)]') % <4> a24=a2-a4 a1 = 0.3333 0.4488 2.2361 5.3777 a2 = [ 1/3, pi/7, sqrt(5), 6054707603575008*2^(-50)] a3 = [ 1/3-eps/12, pi/7-13*eps/165, sqrt(5)+137*eps/280, 6054707603575008*2^(-50)] a4 = [ 1/3, pi/7, sqrt(5), pi+sqrt(5)] a24 = [ 0, 0, 0, 189209612611719/35184372088832-pi-5^(1/2)] 【例5.1.1-2】演示:几种输入下产生矩阵的异同。 a1=sym([1/3,0.2+sqrt(2),pi]) % <1> a2=sym('[1/3,0.2+sqrt(2),pi]') % <2> a3=sym('[1/3 0.2+sqrt(2) pi]') % <3> a1_a2=a1-a2 % a1 = [ 1/3, 7269771597999872*2^(-52), pi] a2 = [ 1/3, 0.2+sqrt(2), pi] a3 = [ 1/3, 0.2+sqrt(2), pi] a1_a2 = [ 0, 1.4142135623730951010657008737326-2^(1/2), 0]

MATLAB基础及应用实验指导书

MATLAB基础及应用实验指导书

MATLAB基础及应用课程实验指导书 实验一软件环境和基本操作熟悉 一、实验目的 ①熟悉MATLAB 主界面,并学会简单的菜单操作。 ②学会简单的矩阵输入与信号输入。 ③掌握部分绘图函数。 二、实验内容 熟悉MATLAB操作环境,通过简单操作熟悉MATLAB的基本使用方法。 三、实验要求与步骤 1、用户第一次使用MATLAB 时,建议首先在屏幕上键入demo 命令,它将启动MATLAB 的演试程序,用户可在此演示程序中领略MATLAB 所提供的强大的运算与绘图功能。也可以键入help 进行进一步了解。 MATLAB 启动界面如图所示: MATLAB 语言最基本的赋值语句结构为:变量名列表= 表达式。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。如果变量名和“= ”省略,则ans 变量将自动建立,例如键入:1900/81 ,得到输出结果:ans =23.4568 。 MATLAB 中变量命名的原则要求必须以英文字母开头,文件夹名字中可以

还包括、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的。这种规则包括将来为自己编写的脚本文件、函数文件命名以及为使用的变量命名也应遵循这个规则。 2、用户工作目录和当前目录的建立和设置 1)为管理方便,每个用户在使用MATLAB 前,尽量为自己建立一个专门的工作目录,即“用户目录”,用来存放自己创建应用文件。例如首先打开资源管理器,在E 驱动器下可以根据自己喜好建立一个新文件夹,但应注意:该文件夹必须以英文开头,文件夹名字中可以包括字母、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的,这与MATLAB 中为变量和文件名命名原则是一致的。尽管MATLAB\work 允许用户存放用户文件,但最好把它仅作为临时工作目录来使用。 2)为了用户运行方便,在开始工作前可把用户定义的目录设置为当前目录,方法是可直接在MATLAB 命令窗口桌面上方通过目录设置栏来实现。 3)把自己的工作目录加到MATLAB 搜索路径上,这样可以在任何情况下方便地调用自己的编写文件。MATLAB 工作时,基本搜索过程为:首先在工作空间,即MATLAB 内存中进行检查,看输入的指令是不是变量;如不是,则检查输入指令是不是内建函数(比如sin 函数等);如不是,则在当前目录上,检查是否有与输入指令相同的M 文件存在;如还没有,则在MATLAB 定义的搜索路径其他目录中,检查是否有该M 文件存在。设置方法是通过File 菜单下设置路径对话框进行。 3、熟悉简单的矩阵输入 1)从屏幕上输入矩阵A=[1 2 3 ;4 5 6;7 8 9] 回车 A=[1,2,3;4,5,6;7,8,9] 回车 观察输出结果。 2)试用回车代替分号,观察输出结果。 3)输入size(A) ,观察结果。 4)输入矩阵B=[9,8,7;6,5,4;3,2,1];回车 输入矩阵C=[4,5,6;7,8,9;1,2,3];回车,然后分别键入 A B C 回车观察结果。 5)选择File | new 菜单中的M-file ,输入B=[9,8,7;6,5,4;3,2,1] ;保存为

实验一 MATLAB基础训练

实验一 MATLAB基础训练 一、实验目的 本次上机实验主要练习使用Matlab的基本操作和基础知识,包括数组(复数、向量、矩阵、结构体数组等)的创建和数组元素的操作和运算、矩阵的运算、Matlab的运算符(尤其是点运算‘.’)、脚本M文件和函数M文件的编写、Matlab文件的编程(基本的流程控制结构)、基本的二维和三维绘图方法以及图形的标注等。希望通过本次实验使大家尽量在短时间内(4学时)掌握Matlab的基本操作和基础知识,为后面的实验项目奠定基础。 二、实验原理 参见PPT中有关内容。 三、实验内容 1. 上机练习课件中的例子。 2. 设两个复数a=1+2i, b=3-4i, 计算a+b, a-b, a*b, a/b, a和b的模。 3. 计算下式的结果,其中x=-3.5°, y=6.7° (提示:①应将角度单位由度转换为数学函数所能处理的弧度值;②求根函数sqrt,取绝对值函数abs,具体用法用help查询) 4. 对矩阵 123 456 789 A ?? ?? =?? ?? ?? , 实现下列操作: (1) 左右翻转(fliplr命令) (2) 上下翻转(flipud命令) (3) 利用cat命令分别将A扩展成3×6和6×3的矩阵 (3) 分别提取A的第2行,第2列,对角线元素 (4) 删除A的第2行2列的元素 (提示:将矩阵元素赋空阵[]可以删除元素,注意此时元素的访问只能使用单下标的方式。观察删除元素后,A中元素的排列方式的变化) 5. 创建[0,2π]区间上拥有100个等间隔元素的列向量 ...x.(Matlab默认是行向量),并绘制 y=sin(x1/3)的函数图像。 6. 创建如下图所示的单结构体数组。

matlab实验4MATLAB基本编程

实验4 MATLAB 基本编程 一、实验目的 1. 熟悉MATLAB 的脚本编写 2. 熟悉MATLAB 的函数编写 3. 熟悉MATLAB 的变量使用 4. 熟悉MATLAB 的程序控制结构 二、实验内容 1. 分别选用if 或switch 结构实现下述函数表示。 -1 x ≤-a f(x)= x/a -a ≤<--≤<≤<--≤=d x d x c d x d c c x b b x a a x a b a x x f 0)(11)(10)(

实验一MATLAB基本操作及运算.doc

实验一MATLAB基本操作及运算 一、实验目的 二、实验的设备及条件 三、实验内容 1、建立以下标量: 1) a=3 2) b=5+ 3 j,(j为虚数单位) 3) c=e j 2 / 3 2、建立以下向量: 2.71 38 1) Vb= 28 82 2) Vc=[4 3.8-3.8 -4 ] (向量中的数值从 4 到 -4,步长为 -0.2) 3、建立以下矩阵: 1) 3 L 3 Ma M O M 3 L 3 Ma 为一个 7×7的矩阵,其元素全为 3. 2) 1 11 L91 2 12 O92 Mb M M O M 10 20 L100

Mb 为一个 10× 10的矩阵 . 3) 1 14 5 Mc 2 5 17 3 23 8 4、使用题 1 中的变量计算下列等式的x,y,z的值: 1) x1 1 1 e( (a 15)/6) 2)x2 ( a 15 x1) 3)x3 ln( R [( b c)(b c)]sin( a / 3)) ,其中R表示复数实部。 5、求解函数值 y e ct2/(2.252),其中 c 取值见题 1, t 的取值范围为题 2 中行 向量 Vc。 6、使用题 1 和题 3 中所产生的标量和矩阵计算等式 Mx a Mc (Mc) 1 (Mc )T 其中 * 为矩阵所对应行列式的值,参考det 。 7、函数的使用和矩阵的访问。 1)计算矩阵 Mb 每一列的和,结果应为行向量形式。 2)计算整个矩阵 Mb 的平均值。 3)用向量 [1 1 1] 替换 Mb 的最上一行的值 4)将矩阵 Mb 的第 2~5 行,第 3 到 9 列的元素所构成的矩阵赋值给矩阵SubMb。 5)删除矩阵 Mb 的第一行; 6)使用函数 rand 产生一个 1× 10的向量 r ,并将 r 中值小于 0.5 的元素设置为 0。 8、已知 CellA(1, 1)=‘中国’, CellA( 1, 2)=‘北京’, CellA( 2, 1)是一个 3 乘 3 的单位阵, CellA( 2, 2)=[1 2 3],试用 MATLAB创建一个 2 ×2 的细胞数组 CellA。 9、已知结构数组student 中信息包含有姓名,学号,性别,年龄和班级,试用 MATLAB创建相应的结构数组 student。该数组包含有从自己学号开始连续 5 个同学的信息(如果学号在你后面的同学不足 5 个则往前排序),创建完成后查看自己的信息。

福州大学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]范围内的所有元素; 4. 已知 3 5 4 2 1 2 67 A 34 45 7 ,B 2 8 74 求下列表达式的值: (1) A*B 和 A.*B (2) A A 3 和 A.A 3 (3) A/B 和 B\A (4) [A,B]和[A([1,3]);BA2] 87 90 15 9 3 0 i ab 5. 设 a=1+2i,b=-3+4i, c e 6 ,求 c 的值。 2. 设 x=-74 o ,y=27 o ,求 sin (x 2 y 2) ta n x y 的 值。 3.当a 取,,, ?,,,时,求 e 0.3a sin(a 0.3)在各点的函数 值。

a b 实验二MATLAB程序设计 、实验目的 1 ?学会编写简单函数m文件,调用及调试函数m文件; 2 .学会MATLA啲简单程序编写。 二、实验设备 1. 方正电脑 2. MATLAB^件 三、实验内容 1. 从键盘输入一个4位整数,按如下规则加密后输出。加密规则:每位数字都加上7 然后用和除以10的余数取代该数字;然后将第1位数与第3位数交换,第2位数与第4位数交换。 2. 硅谷公司员工的工资计算方法如下: (1) 工作时数超过120h者,超过部分加发15% (2) 工作时数低于60h者,扣发700元; (3) 其余按每小时84元计发。 试编程按输入的工号和该员工的工时数,计算应发工资。 1 1 1 1 3. 根据 2 2 2 L 2,求的近似值。当n分别取100, 1000, 10000时, 6 122232n2 结果是多少? (要求:分别用循环结构和向量运算(使用sum函数)来实现) 1 1 1 4 .根据y 1 L ,求 3 5 2n 1 (1) y<3 时的最大n值; (2) 与(1)的n值对应的y值。考虑 a 5.考虑一下迭代公式x n 1,其中,a,b为常数。 b X n (1)编写程序求迭代结果,迭代的终止条件为X n 1 X n 10 5,迭代初值X0 1.0,迭 代次数不超过500次。 (2)如果迭代过程收敛于r,那么r的准确值是 b b 4a,当⑻卩的值取⑴“、 2 (8,3)、(10,时,分别对迭代结果和准确值进行比较。

MATLAB符号计算实验报告

实验六符号计算 学院:数计学院班级:1003班姓名:黄晓丹学号:1051020144 一、实验目的 1、了解富符号对象和数值对象之间的差别,以及它们之间的互相转换 2、了解符号运算和数值运算的特点、区别和优缺点 3、掌握符号对象的基本操作和运算,以及符号运算的基本运用 二、实验内容 1、符号常数形成和使用 (1)符号常数形成中的差异 >> a1=[1/3,pi/7,sqrt(5),pi+sqrt(5)] a1 = 0.3333 0.4488 2.2361 5.3777 >> a2=sym([1/3,pi/7,sqrt(5),pi+sqrt(5)]) a2 = [ 1/3, pi/7, sqrt(5),

6054707603575008*2^(-50)] >> a3=sym('[1/3,pi/7,sqrt(5),pi+sqrt(5)]') a3 = [ 1/3, pi/7, sqrt(5), pi+sqrt(5)] >> a24=a2-a3 a24 = [ 0, 0, 0, 189209612611719/35184372088832-pi-5^(1/2)] (2)把字符表达式转化为符号变量 >> y=sym('2*sin(x)*cos(x)') y = 2*sin(x)*cos(x) >> y=simple(y)

y = sin(2*x) (3)用符号计算验证三角等式 >> syms fai1 fai2;y=simple(sin(fai1)*cos(fai2)-cos(fai1)*sin(fai2)) y = sin(fai1-fai2) (4)求矩阵的行列式值、逆和特征值 >> syms a11 a12 a21 a22;A=[a11,a12;a21,a22] A = [ a11, a12] [ a21, a22] >> DA=det(A),IA=inv(A),EA=eig(A) DA =

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