MATLAB实习题目 实验1
(完整版)MATLAB)课后实验[1]
实验一 MATLAB 运算基础1. 先求以下表达式的值,尔后显示 MATLAB 工作空间的使用情况并保存全部变量。
(1)2sin 85 z1 21 e(2) 12z ln( x 1 x ) ,其中22 x2 1 2i5(3)ae e az sin( a 0.3) ln , a 3.0, 2.9, L , 2.9, 32 22t 0 t 1(4) 2z t 1 1 t 242t 2t 1 2 t 3,其中解:M 文件:z1=2*sin(85*pi/180)/(1+exp(2))x=[2 1+2*i;-.45 5];z2=1/2*log(x+sqrt(1+x^2))a=-3.0:0.1:3.0;z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2)t=0:0.5:2.5;z4=(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 =123d4e56g9实验二 MATLAB矩阵解析与办理1. 设有分块矩阵 A E R3 3 3 2O S2 3 2 2,其中 E、R、O、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试经过数值计算考据 2A E R RS2O S。
MATLAB实验一:参考--答案
save wenjian.mat A a x load wenjian.mat A a x 小结及思考 在 matlab 中,A*B 与 A .*B 以及 B./A 与 B.\A 之间有什么区别?
A*B 是 A 与 B 进行通常意义上的矩阵乘法得到的矩阵,而 A.*B 是矩阵 A 的每个 元素与 B 的对应位置的元素相乘得到的矩阵。 B./A 是矩阵 B 的每一个元素除以 A 对应位置的元素得到的矩阵, B.\A 是矩阵 A 的每一个元素除以 B 对应位置的元素得到的矩阵。
(1)A=2015*eye(10) (2)A=8*(ones(8)-eye(8))
0 8 (2) 8
8 0 8
8 8 0 88
9. 设有分块矩阵 A
E33 O23
R32 ,其中 E,R,O,S 分别为单位阵、随机阵、零阵和对角阵, S 22
7. 写出下列函数的作用: clc Clear ones det triu fliplr zeros cat
清除命令窗口的记录 清除已声明的变量和函数的记录 生成全 1 矩阵 求一个方阵的行列式 取一个矩阵的上三角 对矩阵进行左右旋转 产生一个零矩阵 拼接两个数组或者矩阵
8. 建立如下矩阵
0 0 2015 2015 0 0 (1) 0 0 2015 1010
3.
计算 1.369 sin
2
7 26.48 2.9 的值(输入程序) 10
1.369^2+sin(7/10*pi)*26.48^(1/2)/2.9
4.
1 3 3 1 1 2 输入矩阵 A 4 4 6 , B 2 2 2 ,指出下列命令的含义 6 8 9 3 3 3
实验一 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. 对矩阵123456789A⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦, 实现下列操作:(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. 创建如下图所示的单结构体数组。
7. 编程训练:下图所示电路中,R 1=2Ω, R 2=4Ω, R 3=12Ω, R 4=4Ω, R 5=12Ω, R 6=4Ω, R 7=2Ω, u s =10V, 求i 3。
(要求:以脚本M 文件方式建立程序。
实验一MATLAB操作基础实验报告
闽 江 学 院 电 子 系 实 验 报 告学生姓名:班级:学 号:课程:MATLAB 程序设计一、 实验题目:MATLAB 操作基础 二、 实验地点:实验楼A210 实验目的:1、熟悉MATLAB 的操作环境及基本操作方法。
2、掌握MATLAB 的搜索路径及其设置方法。
3、熟悉MATLAB 帮助信息的查阅方法。
三、 实验内容:1、先建立自己的工作目录,再将自己的工作目录设置到MATLAB 搜索路径下,再试验用help 命令能否查询到自己的工作目录。
2、在MATLAB 环境下验证例1-1至1-4,并完成以下题目: (1)绘制右图所示图形 (2)求383、利用MATLAB 的帮助功能分别查询inv ,plot 、max 、round 等函数的功能及用法。
4、在工作空间建立一个变量a ,同时在当前目录下建立一个M 文件:a.m ,试在命令窗口输入a ,观察结果,并解释原因。
四、 实验环境(使用的软硬件): MATLAB 7.0 五、 实验结果:实验程序: (1)求38。
程序: x=8;plot(x, x^(1/3));0.10.20.30.40.50.60.70.80.91-1-0.8-0.6-0.4-0.200.20.40.60.81得到的结果: ans= 2(2)绘制图像 程序:x=[0:0.001:1];plot(x, sin(2*pi*x),x, 2*x-1,x,0); 得到结果如下图:(3)查询plot 、inv 、round 、max 等函数的功能及用法 分别输入:输入:help plot 得到:PLOT Linear plot.PLOT(X,Y) plots vector Y versus vector X. If X or Y is a matrix, then the vector is plotted versus the rows or columns of the matrix, whichever line up. If X is a scalar and Y is a vector, length(Y) disconnected points are plotted.PLOT(Y) plots the columns of Y versus their index.If Y is complex, PLOT(Y) is equivalent to PLOT(real(Y),imag(Y)). In all other uses of PLOT, the imaginary part is ignored.Various line types, plot symbols and colors may be obtained with0.10.20.30.40.50.60.70.80.91-1-0.8-0.6-0.4-0.200.20.40.60.81PLOT(X,Y,S) where S is a character string made from one elementfrom any or all the following 3 columns:b blue . point - solidg green o circle : dottedr red x x-mark -. dashdot c cyan + plus -- dashed m magenta * stary yellow s squarek black d diamondv triangle (down)^ triangle (up)< triangle (left)> triangle (right)p pentagramh hexagramFor example, PLOT(X,Y,'c+:') plots a cyan dotted line with a plus at each data point; PLOT(X,Y,'bd') plots blue diamond at each data point but does not draw any line.PLOT(X1,Y1,S1,X2,Y2,S2,X3,Y3,S3,...) combines the plots defined by the (X,Y,S) triples, where the X's and Y's are vectors or matrices and the S's are strings.For example, PLOT(X,Y,'y-',X,Y,'go') plots the data twice, with a solid yellow line interpolating green circles at the data points.The PLOT command, if no color is specified, makes automatic use of the colors specified by the axes ColorOrder property. The default ColorOrder is listed in the table above for color systems where the default is blue for one line, and for multiple lines, to cyclethrough the first six colors in the table. For monochrome systems, PLOT cycles over the axes LineStyleOrder property.PLOT returns a column vector of handles to LINE objects, onehandle per line.The X,Y pairs, or X,Y,S triples, can be followed byparameteralue pairs to specify additional propertiesof the lines.输入:help inv得到:INV Matrix inverse.INV(X) is the inverse of the square matrix X.A warning message is printed if X is badly scaled ornearly singular.输入:help round得到:ROUND Round towards nearest integer.ROUND(X) rounds the elements of X to the nearest integers.输入:help max得到:MAX Largest component.For vectors, MAX(X) is the largest element in X. For matrices,MAX(X) is a row vector containing the maximum element from eachcolumn. For N-D arrays, MAX(X) operates along the firstnon-singleton dimension.[Y,I] = MAX(X) returns the indices of the maximum values in vector I. If the values along the first non-singleton dimension contain morethan one maximal element, the index of the first one is returned.MAX(X,Y) returns an array the same size as X and Y with thelargest elements taken from X or Y. Either one can be a scalar.[Y,I] = MAX(X,[],DIM) operates along the dimension DIM.When complex, the magnitude MAX(ABS(X)) is used, and the angleANGLE(X) is ignored. NaN's are ignored when computing the maximum.Example: If X = [2 8 4 then max(X,[],1) is [7 8 9],7 3 9]max(X,[],2) is [8 and max(X,5) is [5 8 59], 7 5 9].inv 求矩阵的逆plot 画图max 求最大值round 向0取整六、思考练习:1、help命令和look for命令有什么区别?lookfor 关键词在所有M文件中找“关键词”,比如:lookfor inv(即寻找关键词“inv”)其实就和我们平时用CTRL+F来查找“关键词”是一样的而help是显示matlab内置的帮助信息用法:help 命令,比如 help inv ,作用就是调用inv这个命令的帮助2、什么是工作空间?假定有变量A与B存在于工作空间中,如何用命令保存这两个变量?下次重新进入MATLAB后,又如何装载这两个变量?①工作空间:工作空间是由系统所提供的特殊变量和用户自己使用过程生成的所有变量组成的一个概念上的空间;②保存变量:保存当前工作空间,比如要保存的路径为f:\matlab\work\matlab.mat,输入命令:save f:\matlab\work\matlab.mat ;③载入变量:输入命令:load f:\matlab\work\matlab.mat 。
Matlab实验报告题目
MATLAB 语言综合实验实验一 Matlab 运算基础一、实验目的1.熟悉启动和退出MATLAB 的方法。
2.熟悉MATLAB 命令窗口的组成。
3.掌握建立矩阵的方法。
4.掌握MATLAB 各种表达式的书写规则以及常用函数的使用。
二、实验内容1.求表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量。
⎥⎦⎤⎢⎣⎡-+=++=545.0212),1ln(212i x x x z 其中>> x=[2 1+2*i;-0.45 5];>> z=1/2*log(x+sqrt(1+x^2))z =0.7114 - 0.0253i 0.8968 + 0.3658i0.2139 + 0.9343i 1.1541 - 0.0044i>>2.已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=723302131,76538773443412B A 求下列表达式的值:(1) A+6*B 和A-B+I (其中I 为单位矩阵)>> A=[12 34 -4;34 7 87;3 65 7];>> B=[1 3 -1;2 0 3;3 -2 7];>> A+6*Bans =18 52 -1046 7 10521 53 49>> I=[1 1 1;1 1 1;1 1 1];>> A-B+Ians =12 32 -233 8 851 68 1>>(2)A*B和A.*B>> A=[12 34 -4;34 7 87;3 65 7];>> B=[1 3 -1;2 0 3;3 -2 7];>> A*Bans =68 44 62309 -72 596154 -5 241>> A.*Bans =12 102 468 0 2619 -130 49>>(3)A^3和A.^3>> A=[12 34 -4;34 7 87;3 65 7];>> B=[1 3 -1;2 0 3;3 -2 7];>> A^3ans =37226 233824 48604247370 149188 60076678688 454142 118820 >> A.^3ans =1728 39304 -6439304 343 65850327 274625 343 >>(4)A/B及B\A>> A=[12 34 -4;34 7 87;3 65 7];>> B=[1 3 -1;2 0 3;3 -2 7];>> A/Bans =16.4000 -13.6000 7.600035.8000 -76.2000 50.200067.0000 -134.0000 68.0000>> B\Aans =109.4000 -131.2000 322.8000-53.0000 85.0000 -171.0000-61.6000 89.8000 -186.2000>>(5)[A,B]和[A([1,3],:);B^2]>> A=[12 34 -4;34 7 87;3 65 7];>> B=[1 3 -1;2 0 3;3 -2 7];>> [A,B]ans =12 34 -4 1 3 -134 7 87 2 0 33 65 7 3 -2 7 >> [A([1,3],:); B^2]ans =12 34 -43 65 74 5 111 0 1920 -5 40>>实验二 Matlab 矩阵分析与处理一、实验目的1.掌握生成特殊矩阵的方法。
实验一-熟悉MATLAB-环境---答案
实验一熟悉MATLAB环境本人自己做的,并不是标准答案,仅供参考。
[实验目的]1.熟悉MATLAB主界面,并学会简单的菜单操作。
2.学会简单的矩阵输入与信号输入。
3.掌握部分绘图函数。
[实验原理]MATLAB是以复杂矩阵作为基本编程单元的一种程序设计语言。
它提供了各种矩阵的运算与操作,并有较强的绘图功能。
用户第一次使用MATLAB时,建议首先在屏幕上键入demo命令,它将启动MATLAB的演试程序,用户可在此演示程序中领略MATLAB所提供的强大的运算与绘图功能。
也可以键入help进行进一步了解。
MATLAB启动界面如图所示:操作界面主要的介绍如下:口指令窗(CommandWindow),在该窗可键入各种送给MATLAB运作的指令、函数、表达式,并显示除图形外的所以运算结果。
口历史指令窗(CommandHistory),该窗记录已经运行过的指令、函数、表达式;允许用户对它们进行选择复制、重运行,以及产生M文件。
口工作空间浏览器(WorkspaceBrowser),该窗口罗列出MATLAB工作空间中所有的变量名、大小、字节数;并且在该窗中,可对变量进行观察、编辑、提取和保存其它还有当前目录浏览器(CurrentDirectoryBrowser)、M文件编辑/调试器(Editor/Debugger)以及帮助导航/浏览器(HelpNavigator/Browser)等,但通常不随操作界面的出现而启动。
利用File菜单可方便对文件或窗口进行管理。
其中File|New的各子菜单,M-file(M文件)、Figure(图形窗口)、或Model(SIMULINK编辑界面)分别可创建对应文件或模块。
Edit菜单允许用户和Windows的剪切板交互信息。
MATLAB语言最基本的赋值语句结构为:变量名列表=表达式。
表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。
Matlab上机实验答案
0.2000 0.1667 0.1429 0.1250 0.1111
1 1 1 1 1
1 2 3 4 5
1 3 6 10 15
1 4 10 20 35
1 5 15 35 70
>> Hh=det(H) Hh =
3.7493e-12 >> Hp=det(P) Hp =
1
>> Th=cond(H) Th =
0 0 1.0000 0 0
0.8147 0.9058 0.1270 1.0000 0
0.9134 0.6324 0.0975 0 2.0000
>> A^2
ans =
1.0000 0 0 0 0 >> [E,R+R*S;O,S^2]
0 1.0000 0 0 0
0 0 1.0000 0 0
1.6294 1.8116 0.2540 1.0000 0
阵和对角阵,试通过数值计算验证 A >> E=eye(3); >> R=rand(3,2); >> O=zeros(2,3); >> S=diag(1:2); >> A=[E,R;O,S]
E O
R RS 。 S2
A=
1.0000 0 0 0 0
0 1.0000 0 0 0
3. 建立一个 5×5 矩阵,求它的行列式值、迹、秩和范数。 >> A=rand(5) A= 0.2785 0.5469 0.9575 0.9649 0.1576 >> det(A) ans = -0.1322 >> trace(A) ans = 3.4127 >> rank(A) ans = 0.9706 0.9572 0.4854 0.8003 0.1419 0.4218 0.9157 0.7922 0.9595 0.6557 0.0357 0.8491 0.9340 0.6787 0.7577 0.7431 0.3922 0.6555 0.1712 0.7060
MATLAB实验作业一
MATLAB的基本操作(一)实验内容及步骤1.进入MATLAB工作环境,熟悉各窗口的功能。
(1)双击桌面图标,或从“开始”菜单打开MATLAB.exe,启动MATLAB。
(2)查看MATLAB界面各窗口的布局、了解其功能,并完成各窗口之间的切换。
(3)设置当前工作目录。
在D盘创建mymatlab目录,并将其作为当前工作目录。
今后的实验过程中以此目录作为当前工作目录。
2.计算5.542+cos(35π)√17.89÷3.5−e2的值。
(1)在命令窗口(Command Window)中输入程序:a=5.54^2+cos(3/5*pi)*sqrt(17.89)/3.5-exp(2)(2)按回车键运行,如果出现“Error”(出错信息),则应找出原因并改正,再运行。
(3)运行结果22.9291过程: >> a=5.54^2+cos(3/5*pi)*sqrt(17.89)/3.5-exp(2)a =22.9291>>3.输入矩阵A=[428256319], B=[111222333], 在命令窗口中执行下列表达式,掌握其含义: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(1)在命令窗口键入A=[4 2 8;2 5 6;3 1 9] ,生成矩阵A;键入B=[1 1 1;2 22;3 3 3] ,生成矩阵B。
>>A=[4 2 8;2 5 6;3 1 9] A =4 2 82 5 63 1 9>> B=[1 1 1;2 2 2;3 3 3]B =1 1 12 2 23 3 3>> A(2,3)ans =6>> A(6)ans =1>> A(:,2)ans =251>> A(3,:)ans =3 1 9>> A(:,1:2:3)4 82 63 9>> A(:,3).*B(:,2)ans =81227>> A(:,3)*B(2,:)ans =16 16 16 12 12 12 18 18 18>> A*Bans =32 32 32 30 30 30 32 32 32>> A.*Bans =4 2 8 4 10 12 9 3 27>> A^2ans =44 26 116 36 35 10041 20 111>> A.^2ans =16 4 644 25 369 1 81>> B/Aans =0.5000 0.0769 -0.38461.0000 0.1538 -0.76921.5000 0.2308 -1.1538>> B./Aans =0.2500 0.5000 0.12501.0000 0.4000 0.33331.0 3.0000 0.3333>> B.\Aans =4.0000 2.0000 8.00001.00002.50003.00001.0000 0.3333 3.0000>>4. 产生一个5阶魔方矩阵,将矩阵的第3行4列元素赋值给变量a;将由矩阵第2,3,4行第2,5列构成的子矩阵赋值给变量b。
MATLAB实验答案
实验一:变量和矩阵的赋值、矩阵的初等运算实验目的:1. 熟悉MATLAB的工作环境2. 掌握变量的赋值、矩阵的创建。
3. 掌握矩阵和数组的初等运算。
4. 熟悉和掌握inv、mean、var、randn、rand、ones、zeros、magic、eye函数的使用。
实验内容:1. 菜单栏File→Preferences→Command Window→Font and Colors修改字体,选择Use custom font改为24。
同样方法File→Preferences→Editor/Debugger→Font and Colors 修改字体,选择Use custom font改为24。
点击Apply,OK即可。
2. 在内产生均匀分布的200个点,形成1×200向量赋给变量X。
(结果不必记录)X=linspace(0,2*pi,200);3. 在内每间隔3产生向量Y。
Y=[0:3:10];4. 给矩阵赋值,,打开workspace查看矩阵的赋值。
使用save data A B语句存储到data.mat数据文件中。
输入Clear all命令清空所有变量,再使用load data加载矩阵A 和B。
A=[1 4 8 13;-3 6 -5 -9;2 -7 -12 18];B=[5 4 3 -2;6 -2 3 -8;-1 3 -9 7];save data A B;clear all;load data;5. 产生8*6阶的正态分布随机数矩阵R,求其各列的平均值和方差,并求全体的平均值和方差。
R=randn(8,6);a=mean(R);b= var(R);c=mean(R(:));d=var(R(:));6. 模拟选号程序,现有10000人,按顺序编号为1,2,…10000号,一次随机选出一个编号,要求随机数均匀分布。
R=round(ceil(rand(10000,1)*10000));7. 产生4*6阶的均匀分布随机数矩阵R,要求其元素在1~16之间取整数值,并求此矩阵前四列组成的方阵的逆阵。
MATLAB实验一(课后练习答案)
求: , , , , , ,
答:
>> a=[1 2;3 4;5 6],b=[5 6;3 4;1 2],c=[1 2 3;4 5 6]
a =
1 2
3 4
5 6
b =
5 6
3 4
1 2
c =
1 2 3
4 5 6
>> [mA,nA]=size(a),[mB,nB]=size(b)
mA =
3
nA =
-3 6 -5 -9
2 -7 -12 -8
B =
5 4 3 -2
6 -2 3 -8
-1 3 -9 7
>> C1=A*B',C2=A'*B,C3=A.*B
C1 =
19 -82 30
12 27 3
-38 54 29
C2 =
-15 16 -24 36
63 -17 93 -105
22 6 117 -60
19 46 84 -10
2
mB =
3
nB =
2
>>a+b
ans =
6 8
6 8
6 8
>>a-b
ans =
-4 -4
0 0
4 4
>>a*c
ans =
9 12 15
19 26 33
29 40 51
>>a*5
ans =
5 10
15 20
25 30
>>a/2
ans =
0.5000 1.0000
1.5000 2.0000
2.5000 3.0000
matlab实验一实验报告
matlab实验一实验报告实验一:Matlab实验报告引言:Matlab是一种强大的数学软件工具,广泛应用于科学计算、数据分析和工程设计等领域。
本实验旨在通过使用Matlab解决实际问题,探索其功能和应用。
一、实验目的本次实验的主要目的是熟悉Matlab的基本操作和常用函数,了解其在科学计算中的应用。
二、实验内容1. 数值计算在Matlab中,我们可以进行各种数值计算,包括基本的加减乘除运算,以及更复杂的矩阵运算和方程求解。
通过编写相应的代码,我们可以实现这些功能。
例如,我们可以使用Matlab计算两个矩阵的乘积,并输出结果。
代码如下:```matlabA = [1 2; 3 4];B = [5 6; 7 8];C = A * B;disp(C);```2. 数据可视化Matlab还提供了强大的数据可视化功能,可以将数据以图表的形式展示出来,更直观地观察数据的规律和趋势。
例如,我们可以使用Matlab绘制一个简单的折线图,来展示某个物体在不同时间下的位置变化。
代码如下:```matlabt = 0:0.1:10;x = sin(t);plot(t, x);xlabel('Time');ylabel('Position');title('Position vs. Time');```3. 图像处理Matlab还可以进行图像处理,包括图像的读取、处理和保存等操作。
我们可以通过Matlab对图像进行增强、滤波、分割等处理,以及进行图像的压缩和重建。
例如,我们可以使用Matlab读取一张图片,并对其进行灰度化处理。
代码如下:```matlabimg = imread('image.jpg');gray_img = rgb2gray(img);imshow(gray_img);```三、实验结果与分析在本次实验中,我们成功完成了数值计算、数据可视化和图像处理等任务。
matlab实验一实验报告
matlab实验一实验报告一、实验目的本次实验的主要目的是熟悉 MATLAB 软件的基本操作环境和编程语法,通过实际编写和运行简单的程序,初步掌握 MATLAB 在数值计算、图形绘制和数据处理方面的基本功能。
二、实验环境本次实验使用的是 MATLAB R2020a 版本,运行在 Windows 10 操作系统上。
计算机配置为:Intel Core i5 处理器,8GB 内存。
三、实验内容及步骤1、矩阵运算创建一个 3×3 的矩阵 A,元素分别为 1 到 9。
创建一个 3×3 的零矩阵 B。
计算 A+B 和 A×B 的结果。
在 MATLAB 中,我们可以使用以下代码实现:```matlabA = 1 2 3; 4 5 6; 7 8 9;B = zeros(3);C = A + B;D = A B;disp(C);disp(D);```2、数据类型转换定义一个整数变量 x 为 5。
将 x 转换为双精度浮点数。
将 x 转换为字符串类型。
代码如下:```matlabx = 5;y = double(x);z = num2str(x);disp(y);disp(z);```3、函数调用定义一个函数 fun,输入参数为 x,返回值为 x 的平方。
调用函数 fun,计算 3 的平方。
函数定义及调用代码:```matlabfunction y = fun(x)y = x^2;endresult = fun(3);disp(result);```4、图形绘制绘制函数 y = sin(x)在区间0, 2π上的图像。
使用以下代码实现:```matlabx = 0:001:2pi;y = sin(x);plot(x, y);```四、实验结果1、矩阵运算A+B 的结果为:```matlab1 2 34 5 67 8 9```A×B 的结果为:```matlab0 0 00 0 00 0 0```2、数据类型转换将整数 5 转换为双精度浮点数,结果为 50000。
Matlab实验第一次实验答案
实验一Matlab使用方法和程序设计一、实验目的1、掌握Matlab软件使用的基本方法;2、熟悉Matlab的数据表示、基本运算和程序控制语句3、熟悉Matlab绘图命令及基本绘图控制4、熟悉Matlab程序设计的基本方法二、实验内容:1、帮助命令使用help命令,查找 sqrt(开方)函数的使用方法;解:sqrtSquare rootSyntaxB = sqrt(X)DescriptionB = 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.RemarksSee sqrtm for the matrix square root.Examplessqrt((-2:2)')ans =0 + 1.4142i0 + 1.0000i1.00001.41422、矩阵运算(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)矩阵的转置及共轭转置已知A=[5+i,2-i,1;6*i,4,9-i];求A.', A'解:A=[5+1i,2-1i,1;6*1i,4,9-1i ];A1=A.',A2=A'(4)使用冒号表达式选出指定元素已知: A=[1 2 3;4 5 6;7 8 9];求A中第3列前2个元素;A中所有列第2,3行的元素;方括号[]解:A=[1 2 3;4 5 6;7 8 9 ];B=A([1,2],[3]),C=A(2:end, : )—用magic 函数生成一个4阶魔术矩阵,删除该矩阵的第四列 3、多项式(1)求多项式 42)(3--=x x x p 的根解:A=[1 0 -2 -4];B=roots(A)(2)已知A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4] , 求矩阵A 的特征多项式;解:A=[1.2 3 5 .9 ; 5 1.7 5 6 ;3 9 0 1 ;1 2 3 4]; A=poly(A); A=poly2sym(A)把矩阵A作为未知数代入到多项式中;4、基本绘图命令(1)绘制余弦曲线 y=cos(t),t∈[0,2π]解:t=0:.1:2*pi;y=cos(t);plot(t,y),grid(2)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t∈[0,2π] t=0:.1:2*pi;y1=cos(t-0.25);y2=sin(t-0.25);plot(t,y1,t,y2)grid5、基本绘图控制绘制[0,4π]区间上的x1=10sint曲线,并要求:(1)线形为点划线、颜色为红色、数据点标记为加号;(2)坐标轴控制:显示范围、刻度线、比例、网络线(3)标注控制:坐标轴名称、标题、相应文本;t=0:.01:4*pi;y=10*sin(t);plot(t,y,'-.',t,y,'r')grid6、基本程序设计(1)编写命令文件:计算1+2+…+n<2000 时的最大n值;解法1:s=0;i=0;while(s<2000) i=i+1;s=s+i; ends=s-i,i=i-1解法2:s=0;for i=1:1000; s=s+i;if(s>2000) ,break;endends=s-i,i=i-1(2)编写函数文件:分别用for和while循环结构编写程序,求2的0到n次幂的和。
MATLAB实验指导书(第一次实验)
************************ MATLAB上机指导书************************昆明理工大学机电学院刘孝保2013年3月实验一 MATLAB 工作环境熟悉及简单命令的执行一、实验目的:熟悉MATLAB 的工作环境,学会使用MATLAB 进行一些简单的运算。
二、实验内容:MATLAB 的启动和退出,熟悉MATLAB 的桌面(Desktop ),包括菜单(Menu )、工具条 (Toolbar )、命令窗口(Command Window)、历史命令窗口、工作空间(Workspace)等;完成一些基本的矩阵操作;学习使用在线帮助系统。
三、实验步骤:1、启动MATLAB ,熟悉MATLAB 的桌面。
2、在命令窗口执行命令完成以下运算,观察workspace 的变化,记录运算结果。
(1)(365-52⨯2-70)÷3 (2)>>area=pi*2.5^2(3)已知x=3,y=4,在MATLAB 中求z :()232y x y x z -= (4)将下面的矩阵赋值给变量m1,在workspace 中察看m1在内存中占用的字节数。
m1=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡11514412679810115133216 执行以下命令 >>m1( 2 , 3 ) >>m1( 11 ) >>m1( : , 3 )>>m1( 2 : 3 , 1 : 3 )>>m1( 1 ,4 ) + m1( 2 ,3 ) + m1( 3 ,2 ) + m1( 4 ,1) (5)执行命令>>help abs查看函数abs 的用法及用途,计算abs( 3 + 4i ) (6)执行命令>>x=0:0.1:6*pi; >>y=5*sin(x); >>plot(x,y)(6)运行MATLAB 的演示程序,>>demo ,以便对MATLAB 有一个总体了解。
实验一MATLAB基本操作并且附有答案.
实验一、MA TLAB基本操作一、实验目的熟悉MA TLAB软件环境,掌握命令窗口的使用。
二、实验内容及步骤1、命令窗口的简单使用(1简单矩阵的输入1 2 3A = 4 5 67 8 9>> A=[1 2 3 ;4 5 6 ;7 8 9 ](2求[12+2×(7-4]÷32的算术运算结果>>[12+2*(7-4]/3^22、有关向量、矩阵或数组的一些运算(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? (3设a=10,b=20;求i=a/b与j=a\b?(4设a=[1 -2 3;4 5 -4;5 -6 7]请设计出程序,分别找出小于0的矩阵元素及其位置(单下标、全下标的形式,并将其单下标转换成全下标。
>> a=[1 -2 3;4 5 -4;5 -6 7];>> [i,j]=find(a<0>>b=find(a<0 >> a(b >> [i,j]=ind2sub(size(a,b (5在MA TLAB命令行窗口运行A=[1,2;3,4]+i*[5,6;7,8];看结果如何?如果改成运行A=[1,2;3,4]+i[5,6;7,8],结果又如何?>> >>A=[1,2;3,4]+i*[5,6;7,8]A =1.0000 + 5.0000i2.0000 + 6.0000i3.0000 + 7.0000i4.0000 + 8.0000i当输入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=[1 2 3;3 4 2;5 2 3];a^2 代表两个矩阵相乘ans =22 16 1625 26 2326 24 28>> a.^2 代表A矩阵元素的平方ans =1 4 99 16 425 4 9(7有一段指令如下,请思考并说明运行结果及其原因clearX=[1 2;8 9;3 6];X( : 访问向量是列优先。
01实验报告一MATLAB基本操作实验题目
实验报告一MATLAB基本操作实验题目
1 随机抽取1个班的《高等数学》课程成绩如下,并统计他们中的最高分、最低分以及他们的平均成绩。
60 84 83 69 39 60 79 88 75 82 80 80 95 73 60 74 60 67 71 83
63 60 60 76 65 72 76 90 98 77 76 86 60 61 97
2设A为2×3矩阵,A=
123
456
⎛⎫
⎪
⎝⎭
,试建立一个与矩阵A同样大小零矩阵,幺
矩阵,单位矩阵,0~1间均匀分布的随机矩阵,均值为0,方差为1的标准正态分布随机矩阵。
3 建立随机矩阵。
(1) 在区间[10,100]内均匀分布的4阶随机矩阵;
(2) 均值为0.5、方差为0.7的4阶正态分布随机矩阵。
4 产生5阶随机方阵A,其元素为[5,70]区间的随机整数,然后判断A的元素是否能被3整除。
5 建立矩阵A=
510607
6060100
--
⎛⎫
⎪
-
⎝⎭
,然后找出大于4的元素的位置。
matlab实验一
MATLAB 实验一一、实验目的:1. Be familiar with MATLAB Environment2. Be familiar with array and matrix3. Be familiar with MATLAB operations and simple plot function二、实验内容:1. Be familiar with Matlab 6.5Startup Matlab 6.5, browse the major tools of the Matlab desktop ⏹ The Command Windows⏹ The Command History Windows ⏹ Launch Pad⏹ The Edit/Debug Window ⏹ Figure Windows⏹ Workspace Browser and Array Editer ⏹ Help Browser⏹ Current Directory Browser2. Give the answer of the following questions for the array1.10.02.13.50.01.16.62.83.412.10.10.30.41.31.45.10.01.10.0a r r ay -⎡⎤⎢⎥-⎢⎥=⎢⎥-⎢⎥-⎣⎦1)What is the size of array1? ans = 4 5 2)What is the value of array1(4,1)? ans = -1.4000 3)What is the size and value of array1(:,1:2)?Size:ans = 4 2 ; value: ans = 1.1000 0 0 1.1000 2.1000 0.1000 -1.4000 5.1000 4) What is the size and value of array1([1 3], end)?Size:ans = 2 1 ; value: ans = 6.00001 .30003. Give the answer of the following commad1)a=1:2:5; a =1 3 5 2) b=[a ’ a ’ a ’]; b = 1 1 1 3 3 35 5 53) c=b(1:2:3,1:2:3); c =1 15 54) d=a+b(2,:) d = 4 6 8 5) w=[zeros(1,3) ones(3,1)’ 3:5’] w = 0 0 0 1 1 1 3 4 54. Give the answer of the sub-arrays1.10.02.13.50.01.16.62.83.412.10.10.30.41.31.45.10.01.10.0a r r ay -⎡⎤⎢⎥-⎢⎥=⎢⎥-⎢⎥-⎣⎦1) array1(3,:); ans =2.1000 0.1000 0.3000 -0.4000 1.3000 2) array1(:,3); ans =2.1000 -6.6000 0.3000 03) array1(1:2:3,[3 3 4]) ans = 2.1000 2.1000 -3.5000 0.3000 0.3000 -0.40004) array1([1 1],:) ans =1.1000 0 2.1000 -3.5000 6.0000 1.1000 0 2.1000 -3.5000 6.0000 5. Give the answer of the following operations22111,,,(2)12022a b c d e y e --⎡⎤⎡⎤⎡⎤====⎢⎥⎢⎥⎢⎥--⎣⎦⎣⎦⎣⎦ 1) a+b ans = 3 -3-1 42) a*d ans = 2 -2-1 23) a.*d ans =2 0 0 24) a*c ans = 6 -55) a.*c Error using ==> times Matrix dimensions must agree. 6)a\b ans =1.0000 1.0000 0.5000 1.5000 7) a.\b ans = 0.5000 0.50000 1.00008) a.^b ans =2.0000 -0.50001.0000 4.00006.Solve the following system of simultaneous equations for x1234561234561234561234561234562.0 5.0 1.0 3.0 4.0 1.00.02.0 1.0 5.0 2.0 6.0 4.0 1.01.0 6.0 4.0 5.0 3.0 1.0 6.04.0 3.0 6.05.0 2.0 2.010.03.06.0 4.0 2.0 6.0 4.06x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x -++++-=---++=-+--+-=--+----=-+++-+=-123456.02.0 4.0 4.0 4.0 5.0 4.0 2.0x x x x x x ⎧⎪⎪⎪⎪⎨⎪⎪⎪++++-=-⎪⎩ x = 2.0173 0.6302 -5.3832 4.7388 -2.3474 -1.43967.Edit & Run the m-file% test step response functionwn=6; kosi=[0.1:0.1:1.0 2]; figure(1); hold on for kos=kosinum=wn^2; den=[1,2*kos*wn,wn.^2]; step(num,den)endhold off;8.Edit & Run the m-file% test plot functionx=0:pi/20:3*pi; y1=sin(x); y2=2*cos(2*x); plot(x,y1,'rv:',x,y2,'bo--');title('Plot the Line of y=sin(2x) and its derivative'); xlabel('X axis'); ylabel('Y axis');legend('f(x)','d/dx f(x)'); grid on;9.Edit & Run the m-file% test subplot and loglog functionx=0:0.1:10; y=x.^2-10.*x+26;subplot(2,2,1); plot(x,y); grid on;subplot(2,2,2); semilogx(x,y); grid on;subplot(2,2,3); semilogy(x,y); grid on;subplot(2,2,4); loglog(x,y); grid on;10.Edit & Run the m-file% test max and plot functionvolts=120; rs=50; rl=1:0.1:100;amps=volts./(rs+rl); pl=(amps.^2).*rl; [maxvol,index]=max(pl);plot(rl,pl,rl(index),pl(index),'rh'); grid on;。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
建立一个基于AWGN信道的BPSK调制的通信系统。
其中AWGN 信道的信噪比变化范围为-5dB~10dB,最后请画出该系统的性能曲线(即信噪比-误码率曲线,信噪比步长为0.5dB)
实验原理图:
SIMULINK系统
需要设置的参数:
代码:
function bpskerr_rate=trng_gauss
close all;
clear all;
clc
echo on
SNRindb1=-5:0.5:10;
SNRindb2=-5:0.5:10;
for i=1:length(SNRindb1)
smld_err_prb(i)=cm_bpske(SNRindb1(i)); %simulated error rate echo off;
end
echo on
for i=1:length(SNRindb2)
SNR=exp(SNRindb2(i)*log(10)/10); %signal to noise ratio
theo_err_prb(i)=erfc(sqrt(SNR/2))/2; %theoretical symbol error rate
echo off;
end
echo on
%plotting commands follows
semilogy(SNRindb1,smld_err_prb,'*');
xlabel('SNR(dB)---------->');
ylabel('BER-------------->');
hold on
semilogy(SNRindb2,theo_err_prb);
xlabel('SNR(dB)---------->');
ylabel('BER-------------->');
legend(' simulated result',' theoretical result');
hold off
function [n1,n2]=gngauss(m,sgma)
% [n1 n2]=gngauss(m,sgma)
% [n1 n2]=gngauss(sgma)
% [n1 n2]=gngauss
% GNGAUSS generates two independent gaussian variables with
% mean m & S.D sgma
% if one of the input argement missing it takes mean as zero
% if neither mean nor variance is given, it generates two
%standard gaussian random variables
if nargin==0
m=0;
sgma=1;
elseif nargin==1
sgma=m;
m=0;
end
u=rand; % uniform random variable in (0,1)
z=sgma*(sqrt(2*log(1/(1-u)))); % rayleigh distributed random variable
u=rand; % another uniform distributed variable in (0,1) n1=m+z*cos(2*pi*u);
n2=m+z*sin(2*pi*u);
function[p]=cm_bpske(snr_in_db)
% [p]=cm_bpske(snr_in_db)
% cm_bpske finds the probability of error for the given value of snr_in_db
N=5000;
E=1; %energy per symbol
snr=10^(snr_in_db/10); %signal to noise ratio
sgma=E/sqrt(snr*2); %noise variance
%generation of data source
for i=1:N
temp=rand;
if(temp<0.5)
dsource(i)=0;
else
dsource(i)=1;
end
end
%detection and the probability of errror calculation numofbiterror=0;
for i=1:N
%received signal at the detector ,for the ith symbol is: if (dsource(i)==0)
r0=E+gngauss(sgma);
r1=gngauss(sgma);
else
r1=E+gngauss(sgma);
r0=gngauss(sgma);
end
% the detector is:
if(r0>r1)
decis=0;
else
decis=1;
end
%increment the error counter,if the decision is not correct if (decis~=dsource(i))
numofbiterror=numofbiterror+1;
end
end
p=numofbiterror/N;。