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

合集下载

MATLAB实验报告

MATLAB实验报告

MATLAB实验报告一、实验目的本次 MATLAB 实验旨在深入了解和掌握 MATLAB 软件的基本操作和应用,通过实际编程和数据处理,提高解决问题的能力,培养编程思维和逻辑分析能力。

二、实验环境本次实验使用的是 MATLAB R2020a 版本,运行在 Windows 10 操作系统上。

计算机配置为英特尔酷睿 i5 处理器,8GB 内存。

三、实验内容(一)矩阵运算1、矩阵的创建使用直接输入、函数生成和从外部文件导入等方式创建矩阵。

例如,通过`1 2 3; 4 5 6; 7 8 9` 直接输入创建一个 3 行 3 列的矩阵;使用`ones(3,3)`函数创建一个 3 行 3 列元素全为 1 的矩阵。

2、矩阵的基本运算包括矩阵的加减乘除、求逆、转置等。

例如,对于两个相同维度的矩阵`A` 和`B` ,可以进行加法运算`C = A + B` 。

3、矩阵的特征值和特征向量计算通过`eig` 函数计算矩阵的特征值和特征向量,加深对线性代数知识的理解和应用。

(二)函数编写1、自定义函数使用`function` 关键字定义自己的函数,例如编写一个计算两个数之和的函数`function s = add(a,b) s = a + b; end` 。

2、函数的调用在主程序中调用自定义函数,并传递参数进行计算。

3、函数的参数传递了解值传递和引用传递的区别,以及如何根据实际需求选择合适的参数传递方式。

(三)绘图功能1、二维图形绘制使用`plot` 函数绘制简单的折线图、曲线等,如`x = 0:01:2pi; y = sin(x); plot(x,y)`绘制正弦曲线。

2、图形的修饰通过设置坐标轴范围、标题、标签、线条颜色和样式等属性,使图形更加清晰和美观。

3、三维图形绘制尝试使用`mesh` 、`surf` 等函数绘制三维图形,如绘制一个球面`x,y,z = sphere(50); surf(x,y,z)`。

(四)数据处理与分析1、数据的读取和写入使用`load` 和`save` 函数从外部文件读取数据和将数据保存到文件中。

西北农林科技大学数值分析数值法实验报告

西北农林科技大学数值分析数值法实验报告

数值法实验报告专业班级:信息与计算科学121 姓名:金辉 学号:20120142801)实验目的本次实验的目的是熟练《数值分析》第二章“插值法”的相关内容,掌握三种插值方法:牛顿多项式插值,三次样条插值,拉格朗日插值,并比较三种插值方法的优劣。

本次试验要求编写牛顿多项式插值,三次样条插值,拉格朗日插值的程序编码,并在MATLAB 软件中去实现。

2)实验题目 实验一:试用44据进行插值。

用图给出{(x i ,y i ),x i =0.2+0.08i ,i=0,1, 11, 10},P 4(x )及S (x )。

实验二:在区间[-1,1]上分别取10,20n =用两组等距节点对龙格函数21()125f x x =+作多项式插值及三次样条插值,对每个n 值,分别画出插值函数即()f x 的图形。

实验三:可以得到平方根函数的近似,在区间[0,64]上作图。

(1)用这9各点作8次多项式插值L 8(x).(2)用三次样条(自然边界条件)程序求S (x )。

从结果看在[0,64]上,那个插值更精确;在区间[0,1]上,两种哪个更精确?3)实验原理与理论基础《数值分析》第二章“插值法”的相关内容,包括:牛顿多项式插值,三次样条插值,拉格朗日4)实验内容 实验一:试用44据进行插值。

用图给出{(xi ,yi),xi=0.2+0.08i,i=0,1, 11, 10},P4(x)及S(x)。

(1)首先我们先求牛顿插值多项式,此处要用4次牛顿插值多项式处理数据。

已知n次牛顿插值多项式如下:P n =f(x)+f[x,x1](x-x)+ f[x,x1,x2](x-x) (x-x1)+···+f[x0,x1, (x)n](x-x) ···(x-xn-1)我们要知道牛顿插值多项式的系数,即均差表中得部分均差。

在MATLAB的Editor中输入程序代码,计算牛顿插值中多项式系数的程序如下:function varargout=newtonliu(varargin)clear,clcx=[0.2 0.4 0.6 0.8 1.0];fx=[0.98 0.92 0.81 0.64 0.38];newtonchzh(x,fx);function newtonchzh(x,fx)%由此函数可得差分表n=length(x);fprintf('*****************差分表*****************************\n');FF=ones(n,n);FF(:,1)=fx';for i=2:nfor j=i:nFF(j,i)=(FF(j,i-1)-FF(j-1,i-1))/(x(j)-x(j-i+1));endendfor i=1:nfprintf('%4.2f',x(i));for j=1:ifprintf('%10.5f',FF(i,j));endfprintf('\n'); end由所以有四次插值牛顿多项式为:P 4(x )=0.98-0.3(x-0.2)-0.62500 (x-0.2)(x-0.4) -0.20833(x-0.2)(x-0.4)(x-0.6)-0.52083 (x-0.2)(x-0.4)(x-0.6)(x-0.8)(2)接下来我们求三次样条插值函数。

实验六 MATLAB句柄绘图和GUI界面设计

实验六  MATLAB句柄绘图和GUI界面设计

西北农林科技大学实验报告学院名称:理学院专业年级:姓名:学号:课程:数学软件实验报告日期:2014年11月22日实验六MATLAB的句柄绘图与GUI界面设计一、实验目的MATLAB语言的句柄绘图可以对图形的各基本对象进行更为细腻的修饰,能产生更为复杂的图形,而且为动态图形的制作奠定了基础。

本次实验的目的是了解图形的基本结构,掌握图形对象之间的关系,熟悉图形对象属性的获取、设置与修改。

并能初步使用MATLAB 的GUI界面设计进行界面的设计,为将来进行软件开发打好基础。

二.实验要求MATLAB的底层图形修饰方法十分的丰富,通过本次实验,要求能体会句柄图形的概念,熟悉根屏幕、图形窗口、界面控制、界面菜单、轴、线、面、字、块、像等基本图形对象的创建和修改,熟练掌握基本图形对象的属性获取、设置与修改,会利用对象属性修改图形,会创建与修改界面控制与界面菜单。

能根据需要使用消息对话框、警告对话框、输入对话框、提示对话框、列表对话框、进度指示条等。

能初步设计出自己较为满意的GUI图形用户界面。

三.实验内容一、句柄图形的概念句柄图形(Handle Graphics):是一种面向对象的绘图系统。

该系统提供创建计算机图形所必须的各种软件。

它所支持的指令,可直接创建线、文字、网线、面以及图形用户界面。

在MATLAB中的图形系统中,所有的图形操作都是针对图形对象而言的,每个对象从创建时起就被赋予了唯一的标识,这种标识就是该图像的句柄。

1.图形对象MATLAB的图形对象包括计算机屏幕、图形窗口、坐标轴、用户菜单、用户控件、曲线、曲面、文字、图像、光源、区域块和方框等。

系统将每一个对象按树型结构组织起来。

每个具体图形不必包含每个对象,但每个图形必须具备根屏幕和图形窗口。

2.图形对象句柄MATLAB在创建每一个图形对象时,都为该对象分配唯一的一个值,称其为图形对象句柄(Handle)。

句柄是图形对象的唯一标识符,不同对象的句柄不可能重复和混淆。

北科大Matlab 数学实验报告

北科大Matlab 数学实验报告

数学实验报告实验名称 Matlab 基础知识学院专业班级姓名学号2014年 6月一、实验目的1.认识熟悉Matlab这一软件,并在此基础上学会基本操作;2.掌握Matlab基本操作和常用命令;3.了解Matlab常用函数,运算符和表达式;4.掌握Matlab工作方式和M文件的相关知识;5.学会Matlab中矩阵和数组的运算;二、实验任务P16 第4题编写函数文件,计算1!nkk =∑,并求出当k=20时表达式的值; P27第2题矩阵A=123456789⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,B=468556322⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,计算AB,A.B,并比较两者的区别;P27第3题已知矩阵A=5291⎡⎤⎢⎥⎣⎦,B=1292⎡⎤⎢⎥⎣⎦,做简单的关系运算A>B,A==B,A<B,并做逻辑运算A==B&A<B,A==B&A>B; P34 第1题用11114357π=-+-+……公式求π的近似值,直到某一项的绝对值小于-610为止;三、实验程序P16 第4题function sum=jiechengn sum=0;y=1;for k=1:nfor i=1:ky=yi;endsum=sum+y;endsumP27第2题>>A=1 2 3;4 5 6;7 8 9>>B=4 6 8;5 5 6;3 2 2>>AB>>A.BP27第3题>> A=5 2;9 1;B=1 2;9 2;>>A>B>>A==B>>A<B>> A==B&A<B>> A==B&A>BP34 第1题t=1;pi=0;n=1;s=1;while abst>=1e-6pi=pi+t;n=n+2;s=-s;t=s/n;endpi=4pi;四、实验结果P16 第4题P27第2题两者的区别:AB是按正规算法进行矩阵的计算, A.B是对应元素相乘; P27第3题P34 第1题>> pipi=五、实验总结这次实验是第一次接触Matlab这个软件,所以有些生疏,花的时间也比较多,但功夫不怕有心人,而且当一个程序弄出来后感觉也特别开心,以后再继续努力学习;一、实验目的了解并掌握matlab的基本绘图二、实验任务P79页 1,3,5题三、实验程序1.clf;x=0:pi/50:4pi;y1=expx/3.sin3x;y2=expx/3;y3=-expx/3;plotx,y1,'b',x,y2,'r-.',x,y3,'r-.',grid onlegend'y1=expx/3.sin3x','y2=+-expx/3'3.clf;x1=-pi:pi/50:pi;x2=pi:pi/50:4pi;x3=1::8;y1=x1.cosx1;y2=x2.tanx2.^-1.sinx2.^3;y3=expx3.^-1.sinx3;subplot2,2,1,plotx1,y1,'m.',grid on,title'y=xcosx'xlabel'xá',ylabel'yá'gtext'y=xcosx',legend'y=xcosx'subplot2,2,2,plotx2,y2,'r',grid on,title'y=xtan1/xsinx^3' xlabel'xá',ylabel'yá'gtext'y=xtan1/xsinx^3',legend'y=xtan1/xsinx^3'subplot2,2,3,plotx3,y3,'bp',grid on,title'y=e1/x3sinx' xlabel'xá',ylabel'yá'gtext'y=e1/x3sinx',legend'y=e1/x3sinx'5.t=0:pi/50:20pi;x=t.costpi/6;y=t.sintpi/6;z=2t;plot3x,y,z四、实验结果1.3.5.五、实验总结通过本次课程和作业,我初步了解了matlab在绘图方面的优势和重要性;一、 实验目的1. 学会用Matlab 进行三维的曲线绘图;2. 掌握绘图的基本指令和参数设置 二、 实验任务 P79 习题5绘制圆锥螺线的图像并加标注,圆锥螺线的参数方程为;⎪⎪⎪⎩⎪⎪⎪⎨⎧===t z t t y t t x 26sin 6cos ππ )200(π≤≤t ;P79 习题9画三维曲线2)x,y (-2-x -522≤≤=y z 与平面z=3的交线;三、 实验程序 习题5:clf;t=0:pi/100:20pi; x=t.cost.pi/6; y=t.sint.pi/6; z=2t;plot3x,y,z title '圆锥螺线'xlabel 'x 轴',ylabel 'y 轴',zlabel 'z 轴'习题9:clf;t=-2::2;x,y=meshgridt; z1=5-x.^2-y.^2;subplot1,2,1,meshx,y,z1,title '曲面z1=5-x.^2-y.^2' z2=3onessizex;r0=absz1-z2<=;zz=r0.z2;yy=r0.y;xx=r0.x;subplot1,2,2,plot3xxr0~=0,yyr0~=0,zzr0~=0,'.'title'交线'四、实验结果习题5:习题9:五、实验总结这次三维曲线曲面的绘制虽然不算复杂,但还是要注意一些细节,而且要注意弄懂其中的原因,不能硬套书上的,否则很容易不明道理的出错;1. 学会用Matlab 练习使用矩阵的基本运算;2. 掌握用Matlab 运用矩阵的特征值、特征向量、特征多项式;3. 学会用Matlab 解线性方程组;4. 掌握用Matlab 进行数值方法计算定积分 二、 实验任务 P114 习题12随机输入一个六阶方阵,并求其转置、行列式、秩,以及行最简式; P114 习题14求矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=2 1 11 2 11 1 2A 的特征多项式、特征值和特征向量;P115 习题20求下列线性方程组的通解:1⎪⎩⎪⎨⎧=+=++=++0-43-203-0-243213214321x x x x x x x x x x x 2⎪⎪⎩⎪⎪⎨⎧=+=+=+21-32--13--0--432143214321x x x x x x x x x x x xP167 习题17用三种方法求下列积分的数值解: 2dx xxx ⎰+π2cos 1sinP167 习题18用多种数值方法计算定积分⎰4sin -11πdx x,并与精确值2进行比较,观察不同方法相应的误差;习题12>> A=1 9 5 3 6 5;2 4 6 8 1 0;3 4 6 9 7 2;4 6 7 8 10 4;5 0 7 3 2 1;3 8 6 3 1 9>> A'>> detA>> rankA>> rrefA习题14:>> B=2 1 1;1 2 1;1 1 2>> p=polyB>> V D=eigB习题20:1>> A=1 1 2 -4;-1 1 3 0;2 -3 4 -1>> rrefA2>> B=1 -1 -1 1;1 -1 1 -3;1 -1 -2 3>> rrefB>> C=1 -1 -1 1 0;1 -1 1 -3 1;1 -1 -2 3 -1/2>> rrefC习题17:2function y=jifenxy=x.sinx./1+cosx.^2;h=;x=0:h:pi;y0=1+cosx.^2;y1=x.sinx./y0;t=lengthx;s1=sumy11:t-1hs2=sumy12:ths3=trapzx,y1s4=quad'jifen',0,pi习题18:function y=jifenxy=1./1-sinx;h=;x=0:h:pi/4;y=1./1-sinx;t=lengthx; format long s1=sumy11:t-1h s2=sumy12:th s3=trapzx,ys4=quad 'jifen',0,pi/4 format short u1=s1-sqrt2 u2=s2-sqrt2 u3=s3-sqrt2 u4=s4-sqrt2四、 实验结果 习题12 习题14 习题201原方程对应的同解方程组为:⎪⎪⎪⎩⎪⎪⎪⎨⎧===434241256572553x x x x x x ,解得方程基础解系为:⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡1256572553,所以方程组的通解为:⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡4321x x x x =⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡12565725531κ 2解对应的齐次方程组⎩⎨⎧=+=434212x x x x x ,可得一个基础解系:⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=1212ε原方程组对应的同解方程组为:⎪⎪⎩⎪⎪⎨⎧+=++=2122143421x x x x x ,可找到一个特解为:⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡=125125*η 因此,此方程组的通解为: 习题17: 2 习题18:五、 实验总结在掌握线性代数相关运算和数值积分的理论基础上进行操作,学会了用Matlab 相关指令和编程,并进行计算与误差分析,感觉原来很繁琐的计算用Matlab 很方便一、 实验目的1. 学会用Matlab 进行曲线拟合和使用插值函数;2. 掌握曲线拟合和插值处理的基本指令和参数设置 二、 实验任务 P130 习题9已知在某实验中测得某质点的位移s 和速度v 随时间t 变化如下:、求质点的速度与位移随时间的变化曲线以及位移随速度变化曲线; P130 习题10在某种添加剂的不同浓度之下对铝合金进行抗拉强实验,得到数据如下,现分别使用不同的插值方法,对其中没有测量的浓度进行推测,并估算出浓度X=18及26时的抗压强度Y 的值;P130 习题12利用不同的方法对22169x y z =-在-3,3上的二维插值效果进行比较;三、 实验程序 习题9:clf; t=0::3; v=0 ; s=1 2 3 4;p1=polyfitt,v,2;p2=polyfitt,s,2;p3=polyfits,v,2;disp'速度与时间函数',f1=poly2strp1,'t'disp'位移与时间的函数',f2=poly2strp2,'t'disp'位移与速度的函数',f3=poly2strp3,'s't1=0::3;s1=0::4;y1=polyvalp1,t1;y2=polyvalp2,t1;y3=polyvalp3,s1;subplot1,3,1,plott,v,'b',t1,y1,'-.',title'速度与时间函数',xlabel't轴',ylabel'v轴'subplot1,3,2,plott,s,'x',t1,y2,':',title'位移与时间的函数',xlabel't 轴',ylabel's轴'subplot1,3,3,plots,v,'k',s1,y3,'r--',title'位移与速度的函数',xlabel's轴',ylabel'v轴'习题10:clf;x=10:5:30;y= ;xi=10::30;yi1=interp1x,y,xi,'nearest';yi2=interp1x,y,xi,'linear';yi3=interp1x,y,xi,'spline';yi4=interp1x,y,xi,'cubic';plotx,y,'b',xi,yi1,'--',xi,yi2,'-.',xi,yi3,'k-',xi,yi4,'m:'legend'原始数据','最近点插值','线性插值','样条插值','立方插值'disp'浓度X=18的抗压强度值'a=interp1x,y,18,'spline'disp'浓度X=26的抗压强度值'b=interp1x,y,26,'cubic'习题12:x,y=meshgrid-3:.5:3;z=x.^2/16-y.^2/9;x1,y1=meshgrid-3:.1:3;z1=x1.^2/16-y1.^2/9;figure1subplot1,2,1,meshx,y,z,title'数据点'subplot1,2,2,meshx1,y1,z1,title'函数图象'xi,yi=meshgrid-3:.125:3;zi1=interp2x,y,z,xi,yi,'nearest';zi2=interp2x,y,z,xi,yi,'linear';zi3=interp2x,y,z,xi,yi,'spline';zi4=interp2x,y,z,xi,yi,'cubic';figure2subplot221,meshxi,yi,zi1,title'最近点插值'subplot222,meshxi,yi,zi2,title'线性插值'subplot223,meshxi,yi,zi3,title'样条插值'subplot224,meshxi,yi,zi4,title'立方插值'四、实验结果习题9:习题10:习题12:五、实验总结本次实验是对多项式的表达以及对曲线的拟合方法,在实际操作进一步了认识拟合和插值的方法以及Matlab的简单方便;六、 实验目的1. 学会用Matlab 进行常微分方程的求解、随机试验和统计作图;2. 掌握相关运算处理的基本指令和参数设置 七、 实验任务 P168 习题24 求解微分方程yxx y cos sin ,=; P168 习题27用数值方法求解析下列微分方程,用不同颜色和线形将y 和y ’画在同一个图形窗口里:t y y y 2-1-t ,,,=+初始时间:0t =0;终止时间:π=f t ;初始条件:2.0|1.0|00,====t t y y ;P190 习题15描绘以下数组的频数直方图:, ,,, , , , , , , , , , , , , P190 习题16若样本为85,86,78,90,96,82,80,74 求样本均值、标准差、中位数、极差和方差;八、 实验程序 习题24:>>dsolve'Dy=xsinx/cosy','x' 习题27:function xdot=exft,x u=1-2t;xdot=0,1;1,-tx+0,1'u; clf; t0=0;tf=pi;x0t=;;t,x=ode23'exf',t0,tf,x0t;y=x:,1Dy=x:,2plott,y,'r-', t,Dy,'b'legend'y','Dy'xlabel't轴'习题15:clf;load ;figure1histA,5figure2histA,10figure3histA,20习题16:B=85 86 78 90 96 82 80 74;disp' 样本均值标准差中位数极差方差'C=meanB,stdB,medianB,rangeB,varB九、实验结果习题24:习题27:习题15:习题16:十、实验总结通过这最后一次实验,我学习了怎么用Matlab作常微分方程的求解、概率论与数理统计的相关计算,感受到了Matlab软件的强大与方便;。

西农MATLAB实验4

西农MATLAB实验4

图形绘制二、实验目的:熟悉和掌握MA TLAB基本的二维图形绘制函数。

三、实验内容:1.绘制简单的二维图形t=0:0.1:2*piy=sin(t)plot(t,y)2.一个坐标系绘制多幅图形t=0:0.1:2*pi; y1=sin(t); y2=cos(t); y3=y1.*y2;plot(t,y1,'--r',t,y2,':g',t,y3,'x')plot(t,y1,'-c',t,y2,'-.y',t,y3,'d')3.图形标识和坐标控制t=0:0.1:2*piy=sin(t)plot(t,y)grid on,xlabel('时间'),ylabel('幅值'),title('正弦曲线') axis([-1,8,-1.2,1.2])4.交互式图形指令axis([0,5,0,5]);hold on;box on;x=[];y=[];while(1)[x1,y1,button]=ginput(1);if(button~=1) break; endplot(x1,y1,'o');x=[x,x1];y=[y,y1]; endline(x,y);hold off;gtext('用左键取点,然后划线');四、思考题:第1题第2题x=-pi:pi/50:4*pifigure(1)subplot(3,1,1)y=x.*cos(x)plot(x,y),grid ongtext('\leftarrow y=xcosx')title('y=xcosx')xlabel('x'),ylabel('y')axis([-pi,pi,-10,10])subplot(3,1,2)y=x.*tan(1./x).*sin(x.^3)plot(x,y),grid ongtext('\leftarrow y=xtan(1/x)sin(x^3)') title('y=xtan(1/x)sin(x^3')xlabel('x'),ylabel('y')axis([-pi,4*pi,-5,5])subplot(3,1,3)y=exp(1./x).*sin(x)plot(x,y),grid ongtext('\leftarrow y=e^(1/x)sin(x)')title('y=e^{1/x}sin(x)')xlabel('x'),ylabel('y')axis([1,8,-3,3])-10010y=xcosxxy-505y=xtan(1/x)sin(x 3x y12345678-202y=e1/xsin(x)xy第3题x=0:pi/50:4*piy1=exp(x./3).*sin(3.*x) y2=exp(x./3) y3=-exp(x./3)plot(x,y1,'b*',x,y2,'r-.',x,y3,'r-.')五.附加题目1.[x,y]=meshgrid(-5:0,-1:3)或者x=-5:0;y=(-1:3);X=ones(size(y))'*x,Y=y'*ones(size(x))2.(1)x=-10:0.1:10;y=-10:0.1:10;z=peaks(x,y) (2)[x,y]=meshgrid(-10:0.1:10);z=peaks(x,y); figure(1)subplot(221) mesh(x,y,z) subplot(222) meshc(x,y,z) subplot(223) meshz(x,y,z) subplot(224) surf(x,y,z)(3)(4)colormap(spring)colormap(summer)colormap(autumn)colormap(winter)六、遇到的问题及解决:不会使用axisde 函数,经过和同学讨论,终于学会了。

matlab计算机实验报告

matlab计算机实验报告

matlab计算机实验报告Matlab计算机实验报告引言Matlab是一种强大的计算机软件,广泛应用于科学计算、数据分析和工程设计等领域。

本实验报告旨在介绍我对Matlab的实验研究和应用。

通过实验,我深入了解了Matlab的功能和特点,并通过实际案例展示了其在科学计算和数据处理中的应用。

实验一:基本操作和语法在本实验中,我首先学习了Matlab的基本操作和语法。

通过编写简单的程序,我熟悉了Matlab的变量定义、赋值、运算符和条件语句等基本语法。

我还学习了Matlab的矩阵操作和向量化计算的优势。

通过实例演示,我发现Matlab在处理大规模数据时具有高效性和便捷性。

实验二:数据可视化数据可视化是Matlab的重要应用之一。

在本实验中,我学习了如何使用Matlab绘制各种图表,如折线图、散点图、柱状图和饼图等。

我了解了Matlab 的绘图函数和参数设置,并通过实例展示了如何将数据转化为直观的图形展示。

数据可视化不仅可以帮助我们更好地理解数据,还可以用于数据分析和决策支持。

实验三:数值计算和优化Matlab在数值计算和优化方面具有强大的功能。

在本实验中,我学习了Matlab 的数值计算函数和工具箱,如数值积分、微分方程求解和线性代数运算等。

通过实例研究,我发现Matlab在求解复杂数学问题和优化算法方面具有出色的性能。

这对于科学研究和工程设计中的数值分析和优化问题非常有用。

实验四:图像处理和模式识别Matlab在图像处理和模式识别领域也有广泛的应用。

在本实验中,我学习了Matlab的图像处理工具箱和模式识别算法。

通过实例演示,我了解了如何使用Matlab进行图像滤波、边缘检测和特征提取等操作。

我还学习了一些常见的模式识别算法,如支持向量机和神经网络等。

这些技术在计算机视觉和模式识别中具有重要的应用价值。

实验五:信号处理和系统建模Matlab在信号处理和系统建模方面也有广泛的应用。

在本实验中,我学习了Matlab的信号处理工具箱和系统建模工具。

MATLAB的符号矩阵运算与符号微积分

MATLAB的符号矩阵运算与符号微积分

西北农林科技大学实验报告学院名称:理学院专业年级:2013级信计1班姓名:学号:课程:数学软件实验报告日期:2014年11月1日实验三MATLAB的符号矩阵运算与符号微积分一.实验目的MATLAB 不仅具有数值运算功能,还开发了在matlab环境下实现符号计算的工具包Symbolic Math Toolbox。

本次实验的目的对所学的符号矩阵的创建与修改、各种符号运算进行巩固,学会使用数学软件来求极限、微分、积分,解方程和解微分方程等。

二.实验要求理解符号变量、符号表达式、符号矩阵等概念,掌握符号矩阵和符号表达式的创建,了解符号运算与数值运算的不同点,会修改已有的符号矩阵,并会符号矩阵与数值矩阵的相互转换,掌握符号矩阵矩阵的运算。

熟练掌握符号求极限、符号求微分(导数)、符号求积分(不定积分和定积分),掌握符号代数方程(组)求解、符号微分方程(组)求解,了解符号积分变换。

三.实验内容符号运算一、符号变量、符号表达式、符号矩阵等概念MATLAB符号运算工具箱处理的对象主要是符号变量与符号表达式。

要实现MATLAB的符号运算,首先要将处理的对象定义为符号变量或符号表达式,其定义格式如下:1.sym ('变量名') 或sym ('表达式')2.syms 变量名1变量名. . . 变量名n二、符号运算与数值运算的不同点数值运算:求出具体的数值,不含符号。

(如解方程,求出未知数x=1.5 ,不是未知数=ab+c)符号运算:结果用符号表示。

许多问题,只有数值解,没有符号解。

三、修改已有的符号矩阵及符号矩阵与数值矩阵的相互转换1. 修改已有的符号矩阵(1).直接修改可用↑、←键找到所要修改的矩阵,直接修改(2)指令修改用A1=sym(A,*,*,'new') 来修改。

用A1=subs(A, 'new', 'old')来修改2. 符号矩阵与数值矩阵的相互转换(1)将数值矩阵转化为符号矩阵>> A=[1/3,2.5;1/0.7,2/5]A =0.3333 2.50001.4286 0.4000>> sym(A)ans =[0.333333333333333 2.50000000000000 ][ ][1.42857142857143 0.400000000000000](2) 将符号矩阵转化为数值矩阵函数调用格式:double(a)>> a=sym ('[1,3;4,6;3,4]')a =[1 3][ ][4 6][ ][3 4]>> double(a)ans =1 34 63 4四、符号运算1.符号矩阵和符号表达式的创建(1) 符号表达式的创建>> syms x y z>> x,y,zx =xy =yz =z>> f1=x^2+2*x+1f1 =2x + 2 x + 1>> f2=exp(y)+exp(z)^2f2 =2exp(y) + exp(z)>> f3=f1+f2f3 =2 2x + 2 x + 1 + exp(y) + exp(z)(2)符号矩阵创建a.用sym()创建>> exam=sym ('[1,x;y/x,1+1/y;3+3,4*r]')exam =[ 1 x ][ ][y/x 1 + 1/y][ ][ 6 4 r ] b.普通矩阵方法>> syms a1 a2 a3 a4>> A=[a1 a2;a3 a4]A =[a1 a2][ ][a3 a4] >> A(1),A(3)ans =a1ans =a2c.用矩阵元素通式创建>> syms x y c r>> a=sin((c+(r-1)*3));>> b=exp(r+(c-1)*4);>> c=(c+(r-1)*3)*x+(r+(c-1)*4)*y;>> A=symmat(3,3,a)A =[sin(1) sin(2) sin(3)][ ][sin(4) sin(5) sin(6)][ ][sin(7) sin(8) sin(9)]2.符号微积分(1)极限返回符号对象f当x→a时的极限>> limit(f,x,a)ans =[2 2][ ][4 4]返回符号对象f当x→a时的右极限>> limit(f,x,a,'right')ans =[2 2][ ][4 4]返回符号对象f当x→a时的左极限>> limit(f,x,a,'left')ans =[2 2][ ][4 4] (2).导数求符号对象f关于默认变量的微分diff(f)ans =2 2求符号对象f关于指定变量v的微分>> v=2v =2>> diff(f,v)ans =求符号对象f关于默认变量的n次微分,n为自然数1、2、3…>> n=4n =4求符号对象f关于指定变量v的n次微分>> diff(f,n)ans =[]>> diff(f, v,n)ans =Empty array: 2-by-2-by-1-by-0(3)积分求符号对象f关于默认变量的不定积分>> int(f)ans =[2 x 2 x][ ][4 x 4 x]求符号对象f关于指定变量v的不定积分>> f=v+3f =v + 3>> int(f,v)ans =21/2 v + 3 x 求符号对象f关于默认变量的从a到b的定积分>> f=v+3f =5>> a=2,b=3a =2b =3>> int(f,a,b)ans =53.符号线性代数(1).解符号代数方程>> solve('f=a*x^2+b*x+c',x)ans =[ 2 1/2 ][ -b + (-4 a c + 4 a f + b ) ][1/2 ----------------------------- ][ a ][ ][ 2 1/2][ b + (-4 a c + 4 a f + b ) ][- 1/2 ----------------------------][ a ](2).解微分方程>> dsolve('Dy=1+y^2')ans =tan(t + _C1)四、实验总结通过本次试验,我了解到MATLAB 不仅具有数值运算功能,还开发了在matlab 环境下实现符号计算的工具包Symbolic Math Toolbox。

matlab实验报告1

matlab实验报告1

matlab实验报告1MATLAB实验报告1摘要:本实验使用MATLAB软件进行了一系列的实验,主要包括数据处理、图像处理和信号处理。

通过实验,我们掌握了MATLAB软件在科学计算和工程领域的应用,深入了解了MATLAB在数据处理、图像处理和信号处理方面的强大功能。

一、数据处理实验在数据处理实验中,我们使用MATLAB对一组实验数据进行了分析和处理。

首先,我们导入了实验数据并进行了数据清洗和预处理,然后利用MATLAB的统计分析工具对数据进行了描述性统计分析,包括均值、方差、标准差等指标的计算。

接着,我们利用MATLAB的绘图工具绘制了数据的直方图和散点图,直观地展现了数据的分布规律和相关性。

二、图像处理实验在图像处理实验中,我们使用MATLAB对一幅图像进行了处理和分析。

首先,我们读取了图像并进行了灰度化处理,然后利用MATLAB的图像滤波工具对图像进行了平滑和锐化处理,最后利用MATLAB的图像分割工具对图像进行了分割和特征提取。

通过实验,我们深入了解了MATLAB在图像处理领域的应用,掌握了图像处理的基本原理和方法。

三、信号处理实验在信号处理实验中,我们使用MATLAB对一组信号进行了处理和分析。

首先,我们生成了一组模拟信号并进行了频域分析,利用MATLAB的信号滤波工具对信号进行了滤波处理,然后利用MATLAB的频谱分析工具对信号的频谱特性进行了分析。

通过实验,我们深入了解了MATLAB在信号处理领域的应用,掌握了信号处理的基本原理和方法。

综上所述,本实验通过对MATLAB软件的应用实验,使我们对MATLAB在数据处理、图像处理和信号处理方面的功能有了更深入的了解,为我们今后在科学计算和工程领域的应用奠定了良好的基础。

MATLAB软件的强大功能和广泛应用前景,将为我们的学习和科研工作提供有力的支持和帮助。

matlab实验报告

matlab实验报告

matlab实验报告Matlab实验报告实验题目:利用Matlab进行数据处理与分析实验目的:通过使用Matlab进行数据处理与分析的实践,掌握Matlab的基本操作和数据处理的方法。

实验内容:1. 数据读取:从文件中读取原始数据,并进行初步的观察和分析。

2. 数据清洗:对原始数据进行清洗,包括去除空值、异常值等。

3. 数据可视化:利用Matlab的绘图函数,将数据可视化呈现,以方便对数据进行进一步的分析和理解。

4. 数据分析:对清洗后的数据进行统计分析,包括求平均值、方差、相关系数等。

5. 模型建立:根据数据分析的结果,建立合适的数学模型,并使用Matlab进行参数估计和模型验证。

6. 结果验证:利用实验数据和模型进行实验结果的对比,验证模型的准确性和可靠性。

实验步骤:1. 准备实验数据:从实验样本中获得原始数据,并将其存储为文本文件。

2. 使用Matlab导入数据:使用Matlab的数据导入函数,将文本文件中的数据导入到Matlab的工作空间中。

3. 数据分析与处理:使用Matlab的数据处理函数,对导入的数据进行清洗和处理,去除异常值和空值,并进行初步的数据观察和分析。

4. 数据可视化:利用Matlab的绘图函数,绘制数据的直方图、散点图、折线图等,以展示数据的分布和趋势。

5. 数据统计分析:使用Matlab的统计分析函数,对处理后的数据进行统计分析,包括计算平均值、方差、相关系数等。

6. 模型建立与验证:根据数据分析的结果,建立合适的数学模型,并使用Matlab进行参数估计和模型验证。

7. 结果对比和讨论:将实验结果与模型预测结果进行对比,并进行结果的讨论和分析。

8. 实验结论:总结实验结果并给出结论。

实验结果:根据实验数据的分析和处理,得出如下结论:1. 数据呈现正态分布,符合正态性假设。

2. 数据之间存在显著的正相关关系,相关系数为0.8,结果具有统计学意义。

3. 建立的数学模型与实验数据拟合良好,模型预测结果与实验结果吻合度高。

西北农林科技大学数值分析数值法实验报告

西北农林科技大学数值分析数值法实验报告

数值法实验报告专业班级:信息与计算科学121 姓名:金辉 学号:20120142801)实验目的本次实验的目的是熟练《数值分析》第二章“插值法”的相关内容,掌握三种插值方法:牛顿多项式插值,三次样条插值,拉格朗日插值,并比较三种插值方法的优劣。

本次试验要求编写牛顿多项式插值,三次样条插值,拉格朗日插值的程序编码,并在MATLAB 软件中去实现。

2)实验题目实验一:已知函数在下列各点的值为试用4次牛顿插值多项式P 4(x )及三次样条函数S (x )(自然边界条件)对数据进行插值。

用图给出{(x i ,y i ),x i =0.2+0.08i ,i=0,1, 11, 10},P 4(x )及S (x )。

实验二:在区间[-1,1]上分别取10,20n =用两组等距节点对龙格函数21()125f x x =+作多项式插值及三次样条插值,对每个n 值,分别画出插值函数即()f x 的图形。

实验三:可以得到平方根函数的近似,在区间[0,64]上作图。

(1)用这9各点作8次多项式插值L8(x).(2)用三次样条(自然边界条件)程序求S(x)。

从结果看在[0,64]上,那个插值更精确;在区间[0,1]上,两种哪个更精确?3)实验原理与理论基础《数值分析》第二章“插值法”的相关内容,包括:牛顿多项式插值,三次样条插值,拉格朗日4)实验内容实验一:已知函数在下列各点的值为试用4次牛顿插值多项式P4(x)及三次样条函数S(x)(自然边界条件)对数据进行插值。

用图给出{(x i,y i),x i=0.2+0.08i,i=0,1, 11, 10},P4(x)及S(x)。

(1)首先我们先求牛顿插值多项式,此处要用4次牛顿插值多项式处理数据。

已知n次牛顿插值多项式如下:P n=f(x0)+f[x0,x1](x-x0)+ f[x0,x1,x2](x-x0) (x-x1)+···+f[x0,x1,···x n](x-x0) ···(x-x n-1)我们要知道牛顿插值多项式的系数,即均差表中得部分均差。

试验一熟悉matlab环境实验报告

试验一熟悉matlab环境实验报告

试验一熟悉matlab环境(实验报告) 实验报告:熟悉MATLAB环境一、实验目的1.掌握MATLAB的基本操作方法,熟悉MATLAB的界面和工具栏。

2.了解MATLAB的变量类型、数据结构、矩阵运算等基本概念。

3.学会使用MATLAB进行数值计算、绘图和数据分析。

二、实验内容1.MATLAB界面与工具栏:熟悉MATLAB的启动界面,了解MATLAB的菜单栏、工具栏和命令窗口。

掌握如何创建、保存和打开MATLAB脚本文件。

2.变量与数据类型:学习MATLAB的变量命名规则,了解变量类型(如标量、向量、矩阵等)及其在内存中的存储方式。

掌握如何声明变量并赋值,理解MATLAB中的数据结构(如结构体、细胞数组等)。

3.矩阵运算:学习MATLAB的矩阵运算规则,了解矩阵的基本操作(如转置、逆等)。

掌握矩阵运算的常用函数(如求行列式、矩阵的秩等)。

4.数值计算与绘图:学习使用MATLAB进行数值计算和绘图。

掌握MATLAB的数值计算函数(如sin、cos、exp等)及其应用,了解如何绘制二维和三维图形。

5.数据分析:学习使用MATLAB进行数据分析。

了解如何读取和导出数据文件,掌握基本的统计方法和数据分析技术(如求平均值、中位数、标准差等)。

三、实验步骤与操作方法1.打开MATLAB软件,进入命令窗口。

2.创建并保存脚本文件:使用“edit”命令创建一个新的脚本文件,保存文件并命名(如“熟悉MATLAB环境.m”)。

3.变量与数据类型操作:在脚本文件中输入不同类型的变量并赋值,观察变量的输出结果。

例如,声明一个标量变量a和一个向量变量b,然后分别对它们进行赋值和输出。

4.矩阵运算:在脚本文件中输入一个矩阵并进行基本操作。

例如,声明一个3x3的矩阵A,对其进行转置、逆等操作,并输出结果。

5.数值计算与绘图:在脚本文件中使用数值计算函数并进行绘图操作。

例如,创建一个包含0到2π范围内100个点的向量x,计算sin(x)和cos(x)的值,绘制它们的图形并保存结果。

matlab实验报告

matlab实验报告

matlab实验报告实验报告:Matlab实验分析1. 实验目的本实验旨在通过Matlab软件完成一系列数值计算和数据分析的任务,包括绘制曲线、解方程、矩阵运算等,以加深对Matlab软件的理解和掌握。

2. 实验内容2.1 绘制函数曲线首先,我们通过在Matlab中输入函数的表达式来绘制函数曲线。

例如,我们可以输入y = sin(x)来绘制正弦函数的曲线。

另外,我们还可以设置曲线的颜色、线型和坐标轴范围等。

2.2 解方程接下来,我们使用Matlab来解方程。

对于一元方程,我们可以使用solve函数来求出方程的解。

例如,我们输入syms x; solve(x^2 - 2*x - 8)来解方程x^2 - 2x - 8 = 0。

而对于多元方程组,我们可以使用solve函数的向量输入形式来求解。

例如,我们输入syms x y; solve(x^2 + y^2 - 1, x - y - 1)来求解方程组x^2 + y^2 - 1 = 0和x - y - 1 = 0的解。

2.3 矩阵运算Matlab也可以进行矩阵运算。

我们可以使用矩阵相乘、相加和取逆等运算。

例如,我们可以输入A = [1 2; 3 4]和B = [5 6;7 8]来定义两个矩阵,然后使用A * B来计算它们的乘积。

3. 实验结果与分析在本实验中,我们成功完成了绘制函数曲线、解方程和矩阵运算等任务。

通过Matlab软件,我们可以快速、准确地进行数值计算和数据分析。

使用Matlab的高级函数和工具箱,我们可以更方便地处理复杂的数值计算和数据分析问题。

4. 实验总结通过本次实验,我们进一步加深了对Matlab软件的理解和掌握。

Matlab提供了丰富的函数库和工具箱,适用于各种不同的数值计算和数据分析任务。

在日常科研和工程实践中,Matlab是一个非常强大和方便的工具,可以帮助我们更高效地完成任务。

matlab实验报告(实验4)

matlab实验报告(实验4)

学生实验报告开课学院及实验室: 机电学院2012年12月21日学院机电学院年级、专业、班姓名学号实验课程名称MATLAB程序设计成绩实验项目名称实验4: 数据和函数的可视化指导老师一、实验目的1、掌握MATLAB绘图的基本步骤和相关指令调用的先后顺序。

2、掌握MATLAB绘图指令的调用方法。

二、实验内容数学函数从形式上可以分为离散函数和连续函数。

MATLAB对这两种函数数据的可视化都提供了相应的指令。

仔细阅读教材【例5.1-1】的实现代码, 运行并保存结果;并改用stem函数, 画出【例5.1-1】的序列图。

仔细阅读教材【例5.1-2】的实现代码, 运行并保存结果;并分别使用描点和连折线方式, 画出连续函数y=xcosx的近似图形(采样点数自定, 要求画出的图尽量接近原连续函数的图)。

仔细阅读【例5.2-2】的实现代码, 理解plot指令画多条曲线的运用方法, 运行并保存结果;并使用plot函数和legend函数, 在同一个图形窗口上画出y=sint和y=sin(2t)在[0,2pi]区间上的图形, 并标出图例。

仔细阅读【例5.2-4】的实现代码, 理解图形标识选项的运用方法, 运行并保存结果;并修改代码, 把“sin(t)”字体改为正体, 大小改为20, “极大值”改为宋体。

阅读【例5.2-6】, 理解使用hold on指令画多幅图的方法, 运行并保存结果。

阅读【例5.2-8】, 理解使用subplot函数画多个子图的方法, 运行并保存结果。

(1)综合实验: 阅读以下关于通过绘制二阶系统阶跃响应综合演示图形标识的示例, 理解示例中所有图形标识指令的作用, 掌握各个图形标识指令的运用方法, 并在原指令上改动以实现以下功能:(2)把横坐标范围改为0至5pi, 纵坐标范围改为0至2;(3)把图中的横轴的刻度改为从0开始到4pi, 中间各点间隔为pi/2;纵轴刻度改为从0开始到1.5, 中间各点间隔为0.3;(4)把图中的α改为σ。

信号与系统实验西北农林科技大学第一次实验

信号与系统实验西北农林科技大学第一次实验

《MATLAB&信号与系统》实验
title('虚部'); subplot(2,2,2); grid on plot(t,Xa); grid on axis([0,15,0,max(Xa)+1]),title('模'); subplot(2,2,4); plot(t,Xn); axis([0,15,-(max(Xn)+1),max(Xn)+1]),title('相角'); grid on %subplot(m,n,i) 命令是建立 m 行 n 列画图窗口,并指定画图位置 i
西北农林科技大学—信息工程学院
《MATLAB&信号与系统》实验
2.5
2
1.5
1
0.5
0 -2
-1.5
-1
-0.5
0
0.5
1
1.5
2
图 1.7 向量表示法的图
例 1-8 单位阶跃信号 单位阶跃信号 u(t)用“t>=0”产生,调用格式为 ft=(t>=0) %% 向量表示法 clear all %初始化,清空变量 clc %清空窗口命令 t=-1:0.01:5; ft=heaviside(t); plot(t,ft); grid on; axis([-1,5,-0.5,1.5]);
1.5
1
0.5
0
-0.5 -1
0
1
2
《MATLAB&信号与系统》实验
grid on
%正弦信号的向量表示
常用基本信号的 MATLAB 函数如下表所示,使用方法: a) 在工作窗口输入 help *n cos sinc exp 功能 单位阶跃函数 正弦函数 余弦函数 sinc 函数 指数函数 函数名 rectpuls tripuls square sawtooth 功能 门函数 三角脉冲函数 周期方波 周期锯齿波或三角波

matlab实验报告

matlab实验报告

matlab实验报告《matlab 实验报告》一、实验目的通过本次实验,熟悉 MATLAB 软件的基本操作和功能,掌握使用MATLAB 进行数学计算、数据处理、图形绘制等方面的方法和技巧,提高运用 MATLAB 解决实际问题的能力。

二、实验环境1、计算机:_____2、操作系统:_____3、 MATLAB 版本:_____三、实验内容及步骤(一)矩阵运算1、创建矩阵在 MATLAB 中,可以通过直接输入元素的方式创建矩阵,例如:`A = 1 2 3; 4 5 6; 7 8 9`,创建了一个 3 行 3 列的矩阵 A。

还可以使用函数来创建特定类型的矩阵,如全零矩阵`zeros(m,n)`、全 1 矩阵`ones(m,n)`、单位矩阵`eye(n)`等。

2、矩阵的基本运算加法和减法:两个矩阵相加或相减,要求它们的维度相同,对应元素进行运算。

乘法:矩阵乘法需要满足前一个矩阵的列数等于后一个矩阵的行数。

转置:使用`A'`来获取矩阵 A 的转置。

(二)函数的使用1、自定义函数可以在 MATLAB 中自定义函数,例如定义一个计算两个数之和的函数:```matlabfunction s = add_numbers(a,b)s = a + b;end```2、调用函数在命令窗口中输入`add_numbers(3,5)`即可得到结果 8。

(三)数据的读取和写入1、读取数据使用`load`函数可以读取数据文件,例如`load('datatxt')`。

2、写入数据使用`save`函数可以将数据保存到文件中,例如`save('resulttxt',A)`,将矩阵 A 保存到`resulttxt`文件中。

(四)图形绘制1、二维图形绘制折线图:使用`plot(x,y)`函数,其中 x 和 y 分别是横坐标和纵坐标的数据。

绘制柱状图:使用`bar(x,y)`函数。

2、三维图形绘制三维曲线:使用`plot3(x,y,z)`函数。

MATLAB实验报告_8

MATLAB实验报告_8

实验一基本操作和简单语句输入一、实验环境计算机MATLAB软件二、实验目的1.熟悉MA TLAB的命令窗口。

2、掌握MATLAB的一些基本操作, 能够进行一般的数值计算。

3.实现语句的重调和修改。

三、实验内容与步骤1.启动MA TLAB2.观察MA TLAB窗口的各个组成部分(1)了解菜单栏各窗口项的功能, 用鼠标打开MA TLAB的各个菜单, 在状态栏里显示当前鼠标所指的菜单项的含义。

(2)用鼠标指向常用工具栏的每个工具按钮, 了解各工具按钮的含义。

3.命令窗口的打开和关闭(1)查看菜单窗口中有哪些菜单命令。

(2)在命令窗口中输入命令a=3;b=4;y=a*b+a/b, 然后回车, 查看命令显示结果。

>> a=3;b=4;y=a*b+a/b,y =12.7500(3)利用MA TLAB中编辑命令时常用的按键功能, 调用上一个语句, 对它进行修改(如把分号改成逗号, 看运行结果), 并把运行结果复制到word中保存。

>> a=3,b=4,y=a*b+a/b,a =3b =4y =12.7500(4)关闭命令窗口。

(5)打开命令窗口。

4.使用MA TLAB帮助熟悉MATLAB的帮助系统, 通过帮助系统了解有关内容。

5、在命令窗口中输入demo, 将出现MA TLAB的演示窗, 通过演示窗, 对MATLAB的功能进行一次浏览。

四、练习1.计算y=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x), x=2, x=3时的值。

>> x=2;y=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x)y =-4.4697>> x=3;y=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x)y =10.38652.计算cos(pi/3)-sqrt(9-sqrt(2))>> cos(pi/3)-sqrt(9-sqrt(2))ans =-2.25423.已知: a=3,A=4,b=a^2,B=b^2-1,c=a+A-2*B,C=a+B+2*c, 求: C>> a=3;A=4;b=a^2;B=b^2-1;c=a+A-2*B;C=a+B+2*cC =-2234.复数z1=1+3*i,z2=1+2*i,z3=2*exp((pi/6)*i),求z=(z1*z2)/z3>> z1=1+3*i;z2=1+2*i;z3=2*exp((pi/6)*i);z=(z1*z2)/z3z =-0.9151 + 3.4151i实验二矩阵和数组的操作一、实验环境计算机MATLAB软件二、实验目的1.掌握矩阵和数组的一般操作, 包括创建、保存、修改和调用等。

西北农林科技大学数值分析实验3

西北农林科技大学数值分析实验3

最小二乘法及程序设计算法专业班级:信计121班 姓名:金 辉 学号:2012014280一、实验目的1、熟悉MA TLAB 编程;2、学习最小二乘法及程序设计算法;3、编写尽可能通用的程序并撰写程序使用说明,使用所编写的程序对实验问题进行求解并提交实验报告。

二、实验题目1、对于给函数22511)(x x f +=在区间[]1,1-上取10.2(0,1,...,10)i x i i =-+=,试求3次曲线拟合,试画出拟合曲线并打印出方程,与第2章计算实习题2的结果比较。

试求及相应的三种拟合曲线。

三、实验原理与理论基础用最小二乘法求拟合曲线时,22δ都考虑为加权平均和[]2220()()()mi i i i x S x f x δω==-∑ (4.3)这里()0x ω≥是[],a b 上的权函数,它表示不同点(),()i i x f x 处的数据比重不同。

用最小二乘法求拟合曲线的问题,就是在形如0()()()ni ii S x a x n m ϕ==<∑ (4.2)式中的()S x 中求一函数*()y S x =,使(4.3)式取得最小。

它可转化为求多元函数20100(,,...,)()()()mn n i j j i i i j I a a a x a x f x ωϕ==⎡⎤=-⎢⎥⎣⎦∑∑ (4.4)的极小点()***01,,...,n a a a 的问题。

由求多元函数极值的必要条件,有002()()()()0,0,1,...,.m n i j j i i k i i j k Ix a x f x x k n a ωϕϕ==⎡⎤∂=-==⎢⎥∂⎣⎦∑∑ 若记 0(,)()()()mj k ijikii x x x ϕϕωϕϕ==∑ (4.5)(,)()()(),0,1,...,mk i i k i k i f x f x x d k n ϕωϕ==≡=∑上式可改写为(,),0,1,...,.nkj j k j a d k n ϕϕ===∑ (4.6),此线性方程组称为法方程,可将其写成矩阵形式 Ga d =,其中01(,,...,)T n a a a a =,01(,,...,)T n d d d d =,000101011101(,)(,)...(,)(,)(,)...(,).........(,)(,)...(,)n n n n n n G ϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕϕ⎛⎫⎪ ⎪= ⎪ ⎪⎝⎭ (4.7) 要使法方程(4.6)有唯一解01,,...,n a a a ,就要求矩阵G 非奇异。

matlab实验一实验报告

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实验(西北农林科技大学)

课程实验报告学年学期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=53a+b−5c=54a−b+c=9为例:(2)用MALTAB命令和M程序两种方式求解3×3复数矩阵的模和相角。

答:(3)创建一个4╳4矩阵,求逆矩阵、产生对角矩阵、求矩阵的秩等。

(5)创建一个一元四次多项式,进行多项式求值,求根计算。

432(6)创建一个一元三次多项式,取十个不同自变量值,计算多项式的值,并分别进行一阶、二阶拟合,图示原始数据和拟合结果(7)自建一个一元三次多项式,取十个不同自变量值,计算多项式的值,并用线性、相邻点和三次插值,图示其插值结果。

解:(8)给出多组温度的测定值(内含平均温度、最低、最高温度),并求其平均温度、最低、最高温度的平均值、标准差等。

解:>> a=fix(40*rand(6,3)+1)a =39 32 2820 39 3133 27 306 2 1617 34 2737 38 7>> mean(a) %各列的平均值ans =25.3333 28.6667 23.1667 >> std(a) %各列的标准差ans =13.0639 13.7647 9.5795课程实验报告学年学期2015-2016学年第2学期课程名称MATLAB与科学计算实验名称实验二 MATLAB的符号计算与可视化实验室测量测绘实验中心计算机室专业年级土木13级学生姓名学生学号提交时间 2016-06-02成绩任课教师王增红水利与建筑工程学院实验二 MATLAB的符号计算与可视化1、目的和要求(1)熟练掌握MATLAB符号表达式的创建、代数运算及化简。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程实验报告
学年学期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)
a =
39 32 28
20 39 31
33 27 30
6 2 16
17 34 27
37 38 7
>> mean(a) %各列的平均值
ans =
25.3333 28.6667 23.1667 >> std(a) %各列的标准差
ans =
13.0639 13.7647 9.5795
课程实验报告
学年学期2015-2016学年第2学期
课程名称MATLAB与科学计算
实验名称实验二 MATLAB的符号计算与可视化实验室测量测绘实验中心计算机室专业年级土木13级
学生姓名
学生学号
提交时间 2016-06-02
成绩
任课教师王增红
水利与建筑工程学院
实验二 MATLAB的符号计算与可视化
1、目的和要求
(1)熟练掌握MATLAB符号表达式的创建、代数运算及化简。

(2)熟悉符号方程的求解。

(3)熟练掌握MATLAB二维曲线、三维图形的绘制。

(4)熟练掌握各种特殊图形的绘制。

2、内容和步骤
参见教材实验三、四。

3、实验报告提交要求
(1)使用sym和syms命令创建符号变量和符号表达式;
解:>> syms x y
>> z=x^6+y^5+x*y
z =
x^6 + x*y + y^5
>> subs(z,x,5) %用5替换了x
ans =
y^5 + 5*y + 15625
(3)寻找两个一元三次符号表达式,分别进行其符号表达式的加、减、乘等运算;
(4)寻找一个可化简的符号表达式,并化简;
解:>> y=sym('x^7+x^5+1')
y =
x^7 + x^5 + 1
>> factor(y)
ans =
(x^2 + x + 1)*(x^5 - x^4 + x^3 - x + 1)
(5) 绘制二维曲线,寻找四种二维的曲线,把图形窗口分割为2列2行,并分别标明图名、坐标等。

解:
(6) 绘制特殊图形。

参照教材中相关内容,选取不同的数据绘制三维条形图;
(7)随机产生正态分布的数据100个,给出统计数据,并绘制饼状图。

注:所有题目要求不同的学生采用不同的符号数字,报告中应列明命令或M文件及结果,(5)~(7)题要求用M文件表达。

课程实验报告
学年学期2015-2016学年第2学期
课程名称MATLAB与科学计算
实验名称实验三 MATLAB程序设计
实验室测量测绘实验中心计算机室专业年级级
学生姓名
学生学号 1
提交时间 2016-06-02 成绩
任课教师王增红
水利与建筑工程学院
实验三 MATLAB 程序设计
1、目的和要求
(1)熟练掌握MATLAB 的程序流程控制结构。

(2)熟练掌握M 文件的结构。

(3)熟练掌握函数调用和参数传递。

2、内容和步骤
参见教材实验五。

3、实验报告提交要求
用for 语句、while 和函数调用三种方式分别对下述两题进行编程,并上机进行操作、运行出结果。

(1) +-+-+-
=)!
2()1(!4!21cos 242n x x x x n
n n ≥30即可
(2) ++-++-+-=++1
)1(432)1ln(1
432n x x x x x x n n (-1<x ≤1) n ≥2000即可
课程实验报告
学年学期2015-2016学年第2学期
课程名称MATLAB与科学计算
实验名称实验四 Simulink仿真
实验室测量测绘实验中心计算机室专业年级土级
学生姓名
学生学号
提交时间 2016-06-02 成绩
任课教师王增红
水利与建筑工程学院
实验四 Simulink仿真
1、目的和要求
掌握Simulink的模型窗口、创建过程,会设置模块和信号线参数。

2、内容和步骤
参见教材7.5.2小节内容。

3、实验报告提交要求
(1) 使用Simulink模型窗口用两种方法建立二阶系统的仿真模型,并写出具体步骤。

法一:
➢打开simulink窗口,新建一个模型。

➢在“Sources”模块库选择“Step”模块,在“Conyinuous”模块库选择“Transfer Fcn”
模块,在“Math Operations”模块库选择“Sum”模块,在“Sinks”模块库选择“Scope”
模块。

连接各模块,从信号线引出分支点,构成环闭系统。

➢设置模块参数,打开“Sum”模块“参数设置”对话框,将“Icon shape”设置为“rectangular”,将“List of signs”设置为“|+-”。

在“Transfer Fcn”模块的“参数设置”对话框
中,将坟墓多项式“Denominator”设置为“[1 0.6 0]”。

在“Step”模块的“参数设置”
对话框中,将“Step time”修改为0。

➢添加信号线文本注释。

➢方针并分析。

在Simulink模型窗口,选择菜单“Simulation”→“Simulation parameters…”命令,
在“Solver”页将“Stop time”设置为15,单机“Start simulation”按钮,示波器显
示时间为15s。

打开示波器的“y坐标设置”对话框,将y坐标的“Y-min”改为0,“Y-max”
改为2。

运行后得到下图。

图一图二
法二:将法一中系统的结构修改成使用积分模块(integrater)和零极点模块(zero-pole)串联,反馈使用“math operations”模块库中的“gain”模块结构成反馈环的增益为-1,二阶系统结构如图一所示,因此运行后的波形图也与法一所得到的波形图相同。

图一图二
(2) 使用Simulink模型窗口创建如下所示的模型,并进行仿真。

步骤:
➢选择“sources”模块库中选择两个“sine wave”模块,在“Math Operations”中选择“sum”
模块,在“sinks”模块中选择“scope”模块,在“continuous”模块库中选择“integrator”
模块。

➢然后用信号线连接个模块,构成闭环系统。

➢仿真并分析,单击工具栏中的“start simulation”按钮开始仿真,在示波器上显示仿真波形。

图一图二。

相关文档
最新文档