实验十一,MATLAB模拟
matlab模拟(word文档良心出品)
MATLAB模拟太阳系实验报告小组成员:邹智康U201313766王思懋U201313475陈桃斌U201313531杨飞U201313530陈铁U201313522班级:信卓1301指导老师:文灏一、实验目的1、熟悉MATLAB的基本功能,了解MATLAB的编译环境。
2、掌握MATLAB的基本绘图函数,熟悉绘图函数的用法、简单图形标注、简单颜色鉴定。
3、通过组内分工、协商合作,增强组员自主学习的能力,加强组员间团结合作的能力。
二、预期目标1、绘制太阳系三维动态图形。
2、模拟八大行星和彗星绕太阳运行动态轨道。
3、模拟月球绕地球运动.小星星带及土星环。
4、模拟出大致的行星大小.轨道大小及运行周期的比例三、实验前的准备工作1、对MATLAB的初步了解:MATLAB(矩阵实验室)是MATrix LABoratory的缩写,是一款由美国TheMathWorks公司出品的商业数学软件。
MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。
除了矩阵运算、绘制函数/数据图像等常用功能外,MATLAB还可以用来创建用户界面及与调用其它语言(包括C,C++和FORTRAN)编写的程序。
2、组内进行多次讨论,并明确组员分工:陈铁、王思懋两人负责前期资料(包括太阳系的各种所需数据、MATLAB的编译环境等)的收集,陈桃斌负责ppt的制作,杨飞负责主体代码,邹智康负责实验报告的书写。
由杨飞将主题代码写好后,再把其余代码分块分给其余组员各自书写,以保证每个组员的参与度。
四、实验成果展示1、全部代码2、%³õʼÉèÖÃ3、figure('name','ÐÇϵÑÝʾ');%ÉèÖñêÌâÃû×Ö4、pausetime=.01;%ÉèÖÃÔÝͣʱ¼ä5、set(gca,'xlim',[-50 50],'ylim',[-50 30],'zlim',[-5050]);6、set(gcf,'doublebuffer','on') %Ïû³ý¶¶¶¯7、xlabel('xÖá'),ylabel('yÖá'),zlabel('zÖá');8、axis equal;9、grid on;10、view([3 5 2]);11、hold on12、a=[8.5 12.5 20 30 50 60 80 100 90 1.5];%³¤Öá13、b=[8 12 18 26 45 55 70 90 30 1.5];%¶ÌÖá14、omga=[4 1.25 1 0.5 0.1 0.05 0.1 0.09 0.1 5];%½ÇËÙ¶È15、r=[0.35 0.8 0.8 0.5 3 2.5 1.5 1.5 0.5 0.35];%ÇòÌå°ë¾¶Ç°°Ë¸öΪ¶ÔÓ¦ÐÐÐÇ£¬µÚ¾Å¸öΪåçÐÇ£¬µÚÊ®¸öΪÔÂÇò16、c=sqrt(a.^2-b.^2);h=pi/18;h1=pi/10;f=pi/9;g=pi/8;g1=pi/6;17、aby=[h h 0;h1 h 0;h h 0;h h 0;h h 0;h h 0;h g 0;h h h;g0 g;0 g1 0];%ÿ¸ö¹ìµÀƽÃæÆ«ÒÆÉèÖÃ18、19、%СÐÐÐÇ´øÓëÍÁÐÇ»·ÉèÖÃ20、runu=35:0.5:40;theta=(0:0.05*pi:2*pi)';runa=2.8:0.4:5.6;21、xx=cos(theta)*runu+20;22、yy=0.9*sin(theta)*runu;23、zz=-0.17*xx-0.17*yy; plot3(xx,yy,zz,':k'); %СÐдøÉèÖÃ24、hx=cos(theta)*runa;hy=sin(theta)*runa;hz=-0.1*hx-0.2*hy; %color={'y','m','b','m','r','c','b','b'};25、26、%Ì«ÑôÉèÖÃ27、[X,Y,Z]=sphere(40);28、surf(5*X,5*Y,5*Z);colormap(autumn) %ÉèÖÃÌ«Ñô29、light ('position',[1 0 2],'style','infinite')30、lighting phong31、material shiny32、t=0:0.01*pi:50*pi; t';33、num=length(a);34、35、%¹ìµÀ·½³Ì36、for n=1:num37、x(:,n)=a(n)*cos(omga(n)*t)+c(n);38、y(:,n)=b(n)*sin(omga(n)*t);39、z(:,n)=0*t;40、xuanz(:,:)=[1 0 0;0 cos(aby(n,1)) -sin(aby(n,1));0sin(aby(n,1)) cos(aby(n,1))]*[cos(aby(n,2)) 0sin(aby(n,2));0 1 0;-sin(aby(n,2)) 0cos(aby(n,2))]*[cos(aby(n,3)) -sin(aby(n,3))0;sin(aby(n,3)) cos(aby(n,3)) 0;0 0 1];41、xyz(:,:)=[x(:,n) y(:,n) z(:,n)]*xuanz(:,:);42、x(:,n)=xyz(:,1);43、y(:,n)=xyz(:,2);44、z(:,n)=xyz(:,3);45、if n<=946、p(n)=surf(r(n)*X+x(1,n),r(n)*Y+y(1,n),r(n)*Z+z(1,n));shading interp47、plot3(x(:,n),y(:,n),z(:,n),'-k');%»-³öËùÓй켣Ïß48、else49、p(n)=surf(r(n)*X+x(1,n)+x(1,3),r(n)*Y+y(1,n)+y(1,3),r(n)*Z+z(1,n)+z(1,3));shading interp50、pmuw(n-9)=plot3(x(:,n)+x(1,3),y(:,n)+y(1,3),z(:,n)+z(1,3),'-k');%ÔÂÇò¹ìµÀÉèÖÃ51、end52、end53、54、%ÍÁÐÇ»·55、for n=1:length(runa)56、ph(n)=plot3(hx(:,n)+x(1,6),hy(:,n)+y(1,6),hz(:,n)+z(1,6),'-c');57、end58、59、%ÐÐÐÇÑÕÉ«60、set(p(1),'facecolor','y');set(p(2),'facecolor','m');set(p(3),'facecolor','b');set(p(4),'facecolor','m');61、set(p(5),'facecolor','r');set(p(6),'facecolor','c');set(p(7),'facecolor','b');set(p(8),'facecolor','b');62、set(p(9),'facecolor','r');set(p(10),'facecolor','k');63、64、%»-³öͼÐÎ65、for m=1:500066、for n=1:num67、if n<=968、set(p(n),'xdata',r(n)*X+x(m,n),'ydata',r(n)*Y+y(m,n),'zdata',r(n)*Z+z(m,n));%ËùÓеļ´Ê±Î»ÖÃ69、else70、set(p(n),'xdata',r(n)*X+x(m,n)+x(m,3),'ydata',r(n)*Y+y(m,n)+y(m,3),'zdata',r(n)*Z+z(m,n)+z(m,3));71、set(pmuw(n-9),'xdata',x(:,n)+x(m,3),'ydata',y(:,n)+y(m,3),'zdata',z(:,n)+z(m,3));72、end73、end74、75、for n=1:length(runa)76、set(ph(n),'xdata',hx(:,n)+x(m,6),'ydata',hy(:,n)+y(m,6),'zdata',hz(:,n)+z(m,6));%¹â»·¼´Ê±Î»ÖÃ77、end78、79、pause(pausetime); %ÔÝÍ£Ò»»á80、drawnow81、end2、分块诠释(1)这是初始的设置,包括一些必要数据的设置以及后面要用到的参数的设置。
11自动控制原理MATLAB实验指导书
实验一 典型环节的MATLAB 仿真一、实验目的1.熟悉MATLAB 桌面和命令窗口,初步了解SIMULINK 功能模块的使用方法。
2.通过观察典型环节在单位阶跃信号作用下的动态特性,加深对各典型环节响应曲线的理解。
3.定性了解各参数变化对典型环节动态特性的影响。
二、SIMULINK 的使用MATLAB 中SIMULINK 是一个用来对动态系统进行建模、仿真和分析的软件包。
利用SIMULINK 功能模块可以快速的建立控制系统的模型,进行仿真和调试。
1.运行MATLAB 软件,在命令窗口栏“>>”提示符下键入simulink 命令,按Enter 键或在工具栏单击按钮,即可进入如图1-1所示的SIMULINK 仿真环境下。
2.选择File 菜单下New 下的Model 命令,新建一个simulink 仿真环境常规模板。
3.在simulink 仿真环境下,创建所需要的系统。
以图1-2所示的系统为例,说明基本设计步骤如下:1)进入线性系统模块库,构建传递函数。
点击simulink 下的“Continuous ”,再将右边窗口中“Transfer Fen ”的图标用左键拖至新建的“untitled ”窗口。
2)改变模块参数。
在simulink 仿真环境“untitled ”窗口中双击该图标,即可改变传递函数。
其中方括号内的数字分别为传递函数的分子、分母各次幂由高到低的系数,数字之间用空格隔开;设置完成后,选择OK ,即完成该模块的设置。
图1-1 SIMULINK 仿真界面 图1-2 系统方框图3)建立其它传递函数模块。
按照上述方法,在不同的simulink 的模块库中,建立系统所需的传递函数模块。
例:比例环节用“Math ”右边窗口“Gain ”的图标。
4)选取阶跃信号输入函数。
用鼠标点击simulink 下的“Source ”,将右边窗口中“Step ”图标用左键拖至新建的“untitled ”窗口,形成一个阶跃函数输入模块。
如何在MATLAB中进行模拟实验
如何在MATLAB中进行模拟实验在科学研究和工程设计中,模拟实验是一种常用的工具。
通过在计算机中运行虚拟的实验环境,模拟实验可以帮助研究人员更好地理解问题的本质、验证理论模型的有效性以及预测系统的行为。
MATLAB作为一种强大的数值计算和工程仿真软件,其具备了丰富的工具箱和函数库,能够方便地进行各种模拟实验。
本文将介绍一些常见的MATLAB模拟实验方法和技巧,希望能够帮助读者更好地应用MATLAB进行科研和工程实践。
首先,我们来介绍一下在MATLAB中进行物理仿真的方法。
物理仿真是一种基于物理模型的模拟实验方法,通过对系统的物理规律进行建模和求解,可以模拟出系统的运动轨迹、受力情况等。
在MATLAB中,可以利用一个强大的工具箱——Simulink来进行物理仿真实验。
Simulink是一种基于图形化界面的系统仿真工具,它可以将复杂的系统模型分解成多个子模块,并通过连接这些子模块的信号来构建整个系统模型。
Simulink提供了丰富的组件库,其中包含各种传感器、执行器、控制器等元件,可以方便地构建系统模型。
在构建好系统模型后,通过设置模型的参数和初始条件,并选择合适的仿真方法,就可以进行仿真实验了。
Simulink中的仿真结果可以以图形或数据的形式展示,为科研和工程分析提供了重要的依据。
除了物理仿真外,MATLAB还可以进行电路仿真实验。
在电子电路设计和分析中,MATLAB提供了一种强大的工具箱——电路设计工具箱,可以帮助研究人员模拟和分析各种电子电路。
电路设计工具箱提供了各种电子元件的模型,包括电阻、电容、电感、二极管、晶体管等,可以用来构建完整的电子电路模型。
在构建好电路模型后,可以通过设置元件的参数,并选择合适的交流或直流分析方法进行仿真实验。
仿真结果可以帮助研究人员验证电路设计的正确性,分析电路中各个元件的功耗、电压和电流等信息,以及优化电路的性能。
不仅如此,MATLAB还提供了丰富的数学建模和优化工具箱,可以在MATLAB中进行数学和最优化的模拟实验。
如何在MATLAB中进行模拟实验设计
如何在MATLAB中进行模拟实验设计一、引言随着科技的飞速发展,模拟实验在各个领域的应用越来越广泛。
而MATLAB作为一种功能强大的数学软件,给实验设计带来了许多便利。
本文将介绍如何在MATLAB中进行模拟实验设计,帮助读者更好地利用这一工具进行科研研究。
二、实验设计的重要性在科学研究中,实验设计起着至关重要的作用。
一个良好的实验设计可以帮助研究人员准确地获得实验结果,进而推导出科学规律或发现新的知识。
而模拟实验作为一种辅助工具,可以帮助研究人员在实验前进行系统地预测和探索。
三、MATLAB的基本功能在开始进行模拟实验设计之前,我们需要了解一些MATLAB的基本功能。
MATLAB是一种面向数值计算和可视化的高级编程语言和环境。
它的功能非常强大,并且由于其简单易用的特点,也得到了广泛的应用。
在MATLAB中,我们可以进行数值计算、数据处理、绘图等操作,这些都为模拟实验提供了良好的基础。
四、构建模型在模拟实验中,首先我们需要构建一个模型。
模型是对实际问题或现象的抽象和简化,通过建立数学方程或算法来描述。
在MATLAB中,我们可以利用其强大的数值计算功能来构建模型。
以抛物线运动为例,我们可以利用MATLAB中的运动学方程来描述抛物线的运动轨迹。
通过引入时间变量t,位置变量x和y,以及速度变量v和加速度变量a,我们可以建立如下的模型:x = v*t;y = (1/2)*a*t^2;通过这个简单的模型,我们就可以预测在给定初速度和加速度的情况下,抛物线的运动轨迹。
五、参数设置在进行模拟实验设计时,我们需要设置一些参数。
参数可以看作是模型中的一些固定变量,通过改变参数的值,我们可以观察模型在不同条件下的行为。
在MATLAB中,我们可以通过创建变量来设置参数,并为其赋予不同的值。
例如,在抛物线模型中,我们可以设置初速度v和加速度a的值,然后观察在不同参数下抛物线的轨迹变化。
六、实验结果分析在模拟实验设计中,我们需要对实验结果进行分析和解释。
matlab 模拟 实验报告
matlab 模拟实验报告Matlab模拟实验报告引言:Matlab作为一种功能强大的数学软件,广泛应用于科学研究和工程领域。
本文将通过模拟实验的方式,探讨Matlab在信号处理和控制系统中的应用。
一、信号处理实验在信号处理领域,Matlab提供了丰富的工具和函数,可以对各种类型的信号进行处理和分析。
我们选择了音频信号作为实验对象,通过Matlab模拟实验,探索不同的信号处理技术。
1.1 信号生成与显示首先,我们使用Matlab生成一个正弦信号,并通过plot函数将其显示出来。
代码如下:```matlabt = 0:0.001:1; % 时间范围为0到1秒,采样率为1000Hzf = 10; % 信号频率为10Hzx = sin(2*pi*f*t); % 生成正弦信号plot(t, x); % 显示信号```通过运行以上代码,我们可以在Matlab的图形界面中看到一个频率为10Hz的正弦信号波形。
1.2 信号滤波接下来,我们将对生成的正弦信号进行滤波处理,以去除其中的高频噪声。
我们使用Matlab中的滤波函数fir1来实现。
代码如下:```matlabfs = 1000; % 采样率为1000Hzfc = 100; % 截止频率为100HzN = 50; % 滤波器阶数b = fir1(N, fc/(fs/2)); % 生成滤波器系数y = filter(b, 1, x); % 对信号进行滤波plot(t, y); % 显示滤波后的信号```通过运行以上代码,我们可以观察到滤波后信号中高频成分的减弱。
二、控制系统实验在控制系统领域,Matlab提供了丰富的工具和函数,可以进行系统建模、控制器设计和系统仿真等操作。
我们选择了一个简单的控制系统作为实验对象,通过Matlab模拟实验,探索不同的控制策略。
2.1 系统建模首先,我们需要对控制系统进行建模。
假设我们的控制系统是一个带有传感器、控制器和执行器的闭环系统。
matlab仿真实训课程设计
matlab仿真实训课程设计一、课程目标知识目标:1. 理解Matlab仿真的基本原理,掌握仿真模型的构建方法;2. 学会运用Matlab进行数据可视化,分析仿真结果,并提取有效信息;3. 掌握结合课本知识,运用Matlab解决实际问题的能力。
技能目标:1. 能够独立进行Matlab仿真实验,熟练操作Matlab软件;2. 学会编写简单的Matlab程序,实现对仿真模型的参数调整和优化;3. 能够运用Matlab工具箱进行数据分析和处理,提高问题解决效率。
情感态度价值观目标:1. 培养学生对Matlab仿真的兴趣,激发学生探索科学问题的热情;2. 培养学生的团队协作意识,提高沟通与表达能力;3. 引导学生认识到仿真技术在工程领域的应用价值,树立正确的工程观念。
课程性质:本课程为选修课,旨在帮助学生掌握Matlab仿真的基本技能,提高解决实际问题的能力。
学生特点:学生具备一定的编程基础和数学知识,对Matlab软件有一定了解,但实际操作能力较弱。
教学要求:结合课本内容,注重实践操作,提高学生的动手能力,使学生在实践中掌握理论知识。
将目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. Matlab仿真基础- 介绍Matlab软件的安装与基本操作;- Matlab编程基础,包括数据类型、流程控制、函数编写等;- 理解仿真原理,掌握仿真模型构建的基本方法。
2. 数据可视化与分析- 学会使用Matlab进行数据可视化,如二维、三维图形绘制;- 掌握曲线拟合、插值、图像处理等数据分析方法;- 结合课本案例,进行实际操作练习。
3. 仿真实验与问题求解- 根据课本内容,选择合适的问题进行Matlab仿真实验;- 学会调整仿真模型参数,优化实验结果;- 分析实验数据,提取有效信息,解决实际问题。
4. 工具箱应用- 介绍Matlab常用工具箱,如信号处理、控制系统、神经网络等;- 学会运用工具箱进行数据分析和处理,提高问题解决效率;- 结合课本案例,进行实际应用练习。
如何利用Matlab进行模拟和仿真实验
如何利用Matlab进行模拟和仿真实验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. 定义电路参数:首先,我们需要定义电路的各个参数,包括输入电阻、输出电阻和放大倍数。
这些参数将作为Matlab仿真的输入。
2. 构建电路模型:接下来,我们需要在Matlab中构建电路模型。
可以使用电路元件的模型来表示电路的行为,并使用Matlab的电路分析工具进行仿真。
3. 仿真分析:在电路模型构建完成后,我们可以通过Matlab进行仿真分析。
可以通过输入不同的信号波形,观察电路的输出响应,并计算放大倍数。
4. 结果可视化:为了更直观地观察仿真结果,我们可以使用Matlab的图形处理功能将仿真结果可视化。
可以绘制输入信号波形、输出信号波形和放大倍数的变化曲线图。
实验结果:通过仿真分析,我们得到了以下实验结果:1. 输入信号波形与输出信号波形的对比图:通过绘制输入信号波形和输出信号波形的变化曲线,我们可以观察到电路的放大效果。
可以看到输出信号的幅度大于输入信号,说明电路具有放大功能。
2. 放大倍数的计算结果:通过对输出信号和输入信号的幅度进行计算,我们可以得到电路的放大倍数。
通过比较不同输入信号幅度下的输出信号幅度,可以得到放大倍数的变化情况。
讨论与分析:通过对实验结果的讨论和分析,我们可以得出以下结论:1. 电路的放大性能:根据实验结果,我们可以评估电路的放大性能。
通过观察输出信号的幅度和输入信号的幅度之间的比值,可以判断电路的放大效果是否符合设计要求。
利用Matlab进行模拟与仿真实验的基本方法
利用Matlab进行模拟与仿真实验的基本方法研究物理现象和工程问题时,我们常常需要进行模拟与仿真实验。
模拟与仿真实验是一种方便、经济且高效的方法,可以帮助我们更好地理解和预测系统的行为。
在模拟与仿真实验中,Matlab是一个功能强大且广泛使用的工具。
它不仅具有丰富的数学和工程计算功能,还提供了直观的用户界面和易于使用的命令语法。
本文将介绍利用Matlab进行模拟与仿真实验的基本方法。
一、了解问题在进行模拟与仿真实验之前,我们首先需要深入了解所研究问题的背景和相关理论知识。
只有充分理解问题,我们才能准确地建立数学模型和选择合适的仿真算法。
因此,在进行模拟与仿真实验之前,我们应该阅读相关的文献和教材,并与领域内的专家进行交流。
二、建立数学模型建立数学模型是模拟与仿真实验的关键步骤。
一个好的数学模型能够准确地描述模拟对象的行为,并能够反映出实际系统的特点。
在Matlab中,我们可以使用符号计算工具箱来建立数学模型。
符号计算工具箱可以帮助我们定义符号变量、运算符号表达式和求解方程等。
在建立数学模型时,我们需要注意选择合适的变量和参数,并使用正确的物理单位对其进行定义。
三、选择仿真算法选择合适的仿真算法是模拟与仿真实验的关键决策。
不同的问题可能需要使用不同的仿真算法。
在Matlab中,我们可以使用内置的仿真工具箱来选择和应用不同的仿真算法。
仿真工具箱提供了丰富的仿真算法库,如欧拉法、龙格-库塔法和有限元法等。
在选择仿真算法时,我们应该评估算法的精确性、速度和稳定性,并根据实际情况进行权衡取舍。
四、编写仿真程序在建立数学模型和选择仿真算法之后,我们需要使用Matlab编写仿真程序。
仿真程序是实现模拟与仿真实验的关键工具。
在编写仿真程序时,我们应该遵循一些基本的编程原则,如模块化设计、代码复用和错误处理等。
同时,我们应该充分利用Matlab的各种功能和工具,如图形界面设计、符号计算和并行计算等,以提高仿真程序的性能和可靠性。
MATLAB仿真技术实验教案
MATLAB仿真技术实验教案第一篇:MATLAB仿真技术实验教案《MATLAB仿真技术》实验教案实验一实验名称:熟悉Matlab交互工作界面一、实验目的1、熟悉Matlab各种工作界面的操作要旨2、掌握Matlab的基本操作命令二、实验步骤1、命令窗口(1)体验命令窗口的菜单及各项功能(2)尝试命令窗口编辑特殊功能键和设置2、工作空间窗口与当前路径窗口(1)在工作空间窗口查看及修改变量(2)添加新的路径为Matlab路径3、图形窗口和文本编辑窗口(1)练习图形窗口中修改图形的方法(2)在文本编辑窗口调试程序4、体会Matlab的基本操作命令三、实验仪器PC机 MATLAB软件四、实验结果五、结论实验二实验名称:Matlab在符号计算方面的应用一、实验目的1、掌握标识符的生成和使用2、掌握矩阵及变量的赋值3、熟悉三类运算符及其功能二、实验内容1、标识符的生成和使用1)、计算y=x+(x-0.98)/(x+1.35)-5(x+1/x),当x=2和x=4时的值。
>>x=[2 4];y=x.^3+(x-0.98).^2./(x+1.35).^3-5*(x+1./x);y y = -4.4723 42.8096 32)、计算cos60-9-2。
ο323>> y=cos(pi/3)-(9-sqrt(2))^(1/3)y =-1.46492、矩阵及变量的赋值21)、已知a=3,A=4,b=a,B=b2-1,c=a+A-2B,C=a+2B+c,求C >> a=3;A=4;b=a^2;B=b^2-1;c=a+A-2*B;C=a+2*B+c;C C = 2)、创建3×4矩阵魔方阵和相应的随机矩阵,将两个矩阵并接起来,然后提取任意两个列向量。
>> A=magic(4);A(4,:)=[];B=rand(3,4);C=[A B];D=C(:,3);E=C(:,4);D,E D = 3 10 6E =8 12 3)、创建一个5×5随机阵并求其逆。
如何使用Matlab技术进行模拟仿真
如何使用Matlab技术进行模拟仿真引言在科学研究和工程设计中,模拟仿真是一种重要的工具。
它可以帮助研究人员和工程师预测和评估系统的性能、优化设计方案、解决问题等。
近年来,Matlab成为了广泛使用的科学计算软件,具有强大的数值计算和仿真功能。
本文将介绍如何使用Matlab技术进行模拟仿真,以及一些常见的应用案例。
一、Matlab的基本介绍Matlab是由美国MathWorks公司开发的一种科学计算软件。
它具有丰富的数学函数库和各种工具箱,可以进行数值计算、数据可视化、统计分析、信号处理、控制系统设计等。
Matlab是一种解释性的编程语言,用户可以通过编写脚本文件或使用命令行进行交互式计算。
二、Matlab的仿真建模工具Matlab提供了Simulink这一强大的仿真建模工具。
Simulink使用图形化界面,可以直观地构建系统模型。
可以将系统抽象成各种不同的模块,通过连接这些模块来描述系统的结构和行为。
Simulink支持常见的连续时间仿真、离散时间仿真和混合仿真,并提供了丰富的仿真调试工具。
三、Matlab的数值计算和优化在模拟仿真过程中,通常需要进行数值计算和参数优化。
Matlab提供了强大的数值计算功能,可以进行矩阵运算、数值积分、微分方程求解、优化等。
用户可以通过编写自定义函数和调用内置函数来实现数值计算和优化任务。
Matlab还提供了各种优化算法,如遗传算法、模拟退火算法、粒子群优化算法等,可以解决复杂的优化问题。
四、Matlab在控制系统设计中的应用控制系统是一种常见的工程系统,如何设计合适的控制策略是一个重要的问题。
Matlab提供了专门的控制系统工具箱,包括系统建模、控制器设计、仿真测试等功能。
用户可以使用Matlab进行控制系统建模,通过调整控制器参数来达到所需的性能指标,并使用Simulink进行仿真测试。
Matlab还提供了自适应控制、最优控制、模糊控制等高级控制方法,可以满足不同的控制需求。
如何使用MATLAB进行数据处理和模拟实验
如何使用MATLAB进行数据处理和模拟实验第一章:MATLAB简介MATLAB是一种强大的数值计算软件,广泛应用于科学与工程领域。
它具备丰富的数学和统计函数库,可以进行各种数据处理和模拟实验。
在本章中,我们将简要介绍MATLAB的基本特点和使用方法。
1.1 MATLAB的特点MATLAB具备以下特点:(1)矩阵计算:MATLAB内置了矩阵运算功能,使得数据处理更加简便和高效。
(2)图形显示:MATLAB可以生成高质量的二维和三维图形,方便数据可视化。
(3)函数丰富:MATLAB内置了大量的数学和统计函数,能够满足各种数值计算需求。
(4)易于学习:MATLAB的语法简单易懂,上手较容易,适合初学者。
1.2 MATLAB的安装和启动要使用MATLAB进行数据处理和模拟实验,首先需要安装MATLAB软件。
(1)从MathWorks官方网站下载MATLAB安装程序。
(2)运行安装程序,并按照提示进行安装。
(3)安装完成后,通过启动菜单或桌面图标启动MATLAB。
1.3 MATLAB的基本语法MATLAB的语法类似于其他编程语言,主要包括变量定义、函数调用、循环和条件判断等基本操作。
(1)变量定义:使用等号将数值或表达式赋给变量,例如:x = 2.5。
(2)函数调用:通过函数名和参数调用函数,例如:y =sin(x)。
(3)循环:使用for或while循环重复执行一段代码,例如:for i = 1:10。
(4)条件判断:使用if语句根据条件执行不同的代码块,例如:if x > 0。
第二章:数据处理数据处理是指从原始数据中提取、转换和整理信息的过程。
在MATLAB中,通过使用各种数据处理函数和工具箱可以实现对数据的各种操作。
2.1 数据导入和导出MATLAB支持多种数据格式的导入和导出,包括文本文件、Excel文件、图像文件等。
通过导入数据,可以将数据加载到MATLAB工作空间中进行处理。
(1)导入文本文件:使用readtable函数可以将文本文件中的数据读取为一个表格变量。
如何在Matlab中进行模拟和仿真
如何在Matlab中进行模拟和仿真引言:模拟和仿真是数字化时代不可替代的工具,在众多领域具有广泛的应用。
Matlab作为一种强大的数学计算软件,提供了丰富的工具和函数,可以帮助我们进行各种模拟和仿真分析。
本文将介绍如何在Matlab中进行模拟和仿真,以及一些常用的技巧和注意事项。
一、Matlab中的模拟和仿真工具1. Matlab的基本特性Matlab具有高效的计算能力和友好的用户界面,支持多种数学运算、绘图和数据处理功能。
它提供了丰富的工具箱,可以满足不同领域的模拟和仿真需求。
2. Matlab SimulinkMatlab Simulink是Matlab中的一款强大的系统仿真工具,可用于建立各种复杂的动态系统模型。
通过使用Simulink中的模块和线路连接,可以直观地建立并仿真各种系统,如电路、机械系统、控制系统等。
3. Matlab中的其他工具箱除了Simulink,Matlab还提供了许多其他工具箱,如Signal Processing Toolbox、Control System Toolbox、Communication Toolbox等,可以用于处理和分析特定领域的信号、控制和通信问题。
这些工具箱提供了丰富的函数和算法,大大简化了模拟和仿真的过程。
二、Matlab模拟和仿真的基本步骤1. 建立模型在进行模拟和仿真之前,首先需要明确模型的目标和要求。
然后,根据模型的特点和公式,使用Matlab提供的函数和工具箱,建立相应的数学模型。
可以根据需要将模型分为多个子系统,以便更好地组织和管理模型。
2. 参数设置模型建立完成后,需要设置各个参数的数值。
这些参数可能包括模型的物理特性、控制参数等。
根据具体情况,可以通过手工输入、数据拟合或对已有数据的分析来确定参数的取值。
3. 运行仿真参数设置完成后,即可运行仿真。
Matlab提供了多种仿真方法,如连续仿真、离散仿真、Monte Carlo仿真等。
matlab仿真实验报告,Matlab仿真及其应用实验报告.doc
matlab仿真实验报告,Matlab仿真及其应⽤实验报告.doc Matlab仿真及其应⽤ 实验报告温州⼤学物理与电⼦信息⼯程学院Matlab仿真及其应⽤ 实验报告课程名称:Matlab仿真及其应⽤班 级:10电信姓名:吴** 学号:1011000****实验地点:5B305⽇期:12.25实验⼆ Matlab 基本编程基础[实验⽬的和要求]熟悉MATLAB环境与⼯作空间熟悉变量与矩阵的输⼊、矩阵的运算熟悉M⽂件与M函数的编写与应⽤熟悉MATLAB控制语句与逻辑运算掌握if语句、switch语句、try语句的使⽤。
掌握利⽤for语句、while语句实现循环结构的⽅法。
[实验内容]1⾏100列的Fibonacc 数组a,a(1)=a(2)=1,a(i)=a(i-1)+a(i-2),⽤for循环指令来寻求该数组中第⼀个⼤于10000的元素,并之处其位置i。
编写M函数表⽰曲线以及它的包络线,并从命令窗⼝输⼊命令语句绘制曲线。
t的取值范围是[0,4π]。
设,编写⼀个M函数⽂件,使得调⽤f(x)时,x可⽤矩阵代⼊,得出的f(x)为同阶矩阵。
根据,求时的最⼤n值;与(1)的n值对应的y值。
已知求中,最⼤值、最⼩值、各数之和,以及正数、零、负数的个数。
输⼊⼀个百分制成绩,要求输出成绩等级A,B,C,D,E。
其中,90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
求分段函数的值。
⽤if语句实现输出x=-5.0, -3.0, 1.0, 2.0, 2.5, 3.0, 5.0时的y值。
编写⼀M函数,实现近似计算指数,其中x为函数参数输⼊,当n+1步与n步的结果误差⼩于0.00001时停⽌。
编写⼀M函数,a和x作为M函数参数输⼊,函数⾥⾯分别⽤if结构实现函数表⽰实验结果及分析:1.a=ones(1,100); %定义数组for i=3:100a(i)=a(i-1)+a(i-2);if(a(i)>10000)a(i),break;endend ,i2.function y=ff(t)y1=exp(-t/3);y2=exp(-t/3).*sin(3*t); y=[y1;y2]3.function y=f(x);a=input('输⼊a值:');x=input('输⼊x值:');if(x<=-a)y=-1;elseif(x-a)y=x/a;elsey=1;endend4.for n=1:100f(n)=1./(2*n-1);y=sum(f)if y>=3my=y-f(n)breakendendmy5.f(1)=1,f(2)=0,f(3)=1; for n=4:100f(n)=f(n-1)-2*f(n-2)+f(n-3);enda=sum(f);b=max(f);c=min(f);p=f==0,d=sum(p);%p等于f为0的个数p1=f>0,e=sum(p1);p2=f<0,f=sum(p2);a,b,c,d,e,f6.clear;n=input('输⼊成绩:');m=floor(n/10);%取整switch mcase num2cell(9:10)disp('A'); %显⽰在控制框case 8disp('B');case 7disp('C');case 6disp('D');case num2cell(0:5)disp('E');otherwisedisp('error')end7.function y=ex3_4(x)for i=1:length(x)if (x(i)<0)&(x(i)~=-3)y(i)=x(i)^2+x(i)-6elseif (x(i)>=0)&(x(i)<5)&(x(i)~=2)&(x(i)~=3) y(i)=x(i)^2-5*x(i)+6else y(i)=x(i)^2-x(i)-1 endendy8.function t=ex3_4(x) n=0;t=1;y=1;x=input(‘’);while y>=0.00001n=n+1;y=x^n/factorial(n);t=t+y;endn9.function y=f(x);a=input('输⼊a值:'); x=input('输⼊x值:'); if。
如何在MATLAB中进行仿真实验
如何在MATLAB中进行仿真实验1. 引言在科学研究和工程设计中,仿真实验是一种重要的手段和工具。
通过建立数学模型和使用计算机来模拟和分析实际系统,可以在较短时间内获得大量有效的数据和结果。
MATLAB是一个功能强大的数值计算软件,广泛应用于仿真实验中。
本文旨在介绍如何在MATLAB中进行仿真实验,并探讨一些实验技巧和注意事项。
2. 确定仿真目标和建立数学模型在进行仿真实验之前,首先需要明确仿真的目标和问题。
例如,如果要研究一个物理系统的动态特性,可以考虑建立相应的微分方程或差分方程模型。
对于控制系统的仿真,可以使用传递函数或状态空间模型。
在MATLAB中,可以使用符号计算工具箱来建立数学模型,并将其转化为可用的形式。
3. 编写仿真程序一旦数学模型建立完成,就可以开始编写仿真程序。
MATLAB提供了丰富的函数和工具箱,可以方便地进行仿真实验。
首先,可以使用ODE或PDE求解器来求解微分方程或差分方程模型。
对于控制系统的仿真,可以使用control工具箱中的函数来进行系统响应和稳定性分析。
4. 参数设置和输入规划在进行仿真实验时,需要对系统的参数和输入进行设置。
参数包括系统的初始条件、物理特性和环境因素等,可以通过改变参数的值来观察系统的响应。
输入规划可以是恒定的、随机的或基于特定函数的,可以根据实际需求进行设定。
MATLAB提供了丰富的函数和工具箱,可以方便地对参数和输入进行设置和规划。
5. 数据可视化和结果分析仿真实验的一个重要任务是对仿真数据进行可视化和结果分析。
MATLAB提供了强大的绘图函数和工具箱,可以绘制各种图表,如曲线图、散点图、三维图等。
可以使用这些功能来展示仿真数据的时域和频域特性,以及系统的稳定性和响应。
同时,还可以使用MATLAB进行数据统计和处理,如求取平均值、方差、相关性等。
6. 优化和参数调整仿真实验可以帮助优化系统设计和参数调整。
通过对仿真结果的观察和分析,可以发现系统存在的问题和改进的空间。
matlab 仿真实验报告
matlab 仿真实验报告Matlab 仿真实验报告引言:在科学研究和工程应用中,仿真实验是一种非常重要的手段。
通过在计算机上建立数学模型和进行仿真实验,我们可以更好地理解和预测现实世界中的各种现象和问题。
Matlab作为一种强大的科学计算软件,被广泛应用于各个领域的仿真实验中。
本文将介绍我进行的一次基于Matlab的仿真实验,并对实验结果进行分析和讨论。
实验背景:在电子通信领域中,信号的传输和接收是一个重要的研究方向。
而在进行信号传输时,会受到各种信道的影响,如噪声、衰落等。
为了更好地理解信道的特性和优化信号传输方案,我进行了一次关于信道传输的仿真实验。
实验目的:本次实验的目的是通过Matlab仿真,研究不同信道条件下信号传输的性能,并对比分析不同传输方案的优劣。
实验步骤:1. 信道建模:首先,我需要建立信道的数学模型。
根据实际情况,我选择了常见的高斯信道模型作为仿真对象。
通过Matlab提供的函数,我可以很方便地生成高斯噪声,并将其加入到信号中。
2. 信号传输方案设计:接下来,我需要设计不同的信号传输方案。
在实验中,我选择了两种常见的调制方式:频移键控(FSK)和相移键控(PSK)。
通过调整不同的调制参数,我可以模拟不同的传输效果。
3. 信号传输仿真:在信道模型和传输方案设计完成后,我开始进行信号传输的仿真实验。
通过Matlab提供的信号处理函数,我可以很方便地生成调制后的信号,并将其传输到信道中。
4. 信号接收和解调:在信号传输完成后,我需要进行信号接收和解调。
通过Matlab提供的信号处理函数,我可以很方便地对接收到的信号进行解调,并还原出原始的信息信号。
5. 仿真结果分析:最后,我对仿真结果进行分析和讨论。
通过对比不同信道条件下的传输性能,我可以评估不同传输方案的优劣,并得出一些有价值的结论。
实验结果与讨论:通过对不同信道条件下的信号传输仿真实验,我得到了一些有价值的结果。
首先,我观察到在高斯噪声较大的信道条件下,PSK调制比FSK调制具有更好的抗干扰性能。
如何使用Matlab进行模拟实验
如何使用Matlab进行模拟实验引言:Matlab是一种广泛应用于科学计算和工程领域的强大软件工具。
它提供了丰富的算法库和功能,使得科学家和工程师能够对复杂的问题进行建模、仿真和分析。
本文将介绍如何使用Matlab进行模拟实验的基本步骤和注意事项。
一、了解Matlab的基本操作和语法:在开始使用Matlab进行模拟实验之前,我们首先需要对Matlab的基本操作和语法有所了解。
Matlab的命令行界面(Command Window)是我们与Matlab交互的主要窗口,通过在命令行中输入命令,我们可以进行变量定义、函数调用、图形绘制等操作。
此外,Matlab还提供了丰富的算法函数和工具箱,我们可以使用这些函数和工具箱来完成各种模拟实验的任务。
二、数据预处理和准备:在进行模拟实验之前,我们通常需要对原始数据进行预处理和准备。
预处理的任务包括:数据清洗、数据归一化、数据平滑等。
为了方便后续的数据分析和建模,我们还需要将原始数据从外部导入到Matlab中,并进行相应的格式转换和处理。
Matlab提供了丰富的数据导入和处理函数,我们可以灵活地根据实际需求进行操作。
三、建立模型和仿真:建立模型是进行模拟实验的核心步骤。
在Matlab中,我们可以使用各种数学建模和仿真工具来构建模型,并对模型进行仿真和分析。
常见的建模工具包括:微分方程、差分方程、状态空间模型等。
在建立模型之前,我们需要对实验问题进行深入的研究和分析,明确问题的目标和约束条件,并选择合适的建模方法和技术。
在建立模型之后,我们可以使用Matlab中的仿真函数对模型进行仿真,从而获得系统的响应和性能指标。
四、数据分析和结果展示:在模拟实验完成之后,我们通常需要对实验结果进行分析和评估。
Matlab提供了丰富的数据分析函数和工具,我们可以使用这些函数和工具对实验数据进行统计、回归、频谱分析等操作。
此外,Matlab还提供了灵活强大的图形绘制功能,我们可以使用这些功能将实验结果以图形的形式展示出来,从而更直观地理解和分析实验结果。
如何利用Matlab技术进行模拟实验
如何利用Matlab技术进行模拟实验引言:模拟实验是一种基于计算机仿真的方法,通过对系统的数学建模及仿真模拟,来了解和研究实际问题。
MATLAB作为一种功能强大的数学软件,提供了丰富的工具和函数,可以用于各种领域的模拟实验。
本文将介绍如何利用MATLAB技术进行模拟实验,并分析其优势和应用案例。
一、使用MATLAB进行数学建模数学建模是模拟实验的基础,通过数学模型的建立,可以将实际问题转化为数学表达式,进而进行仿真模拟分析。
在MATLAB中,有一些常用的数学建模工具和函数可以帮助我们完成这个过程。
1.符号计算工具包(Symbolic Math Toolbox):该工具包提供了符号化数学计算的功能,可以进行符号运算、求解方程、求导、积分等操作。
通过符号计算,可以将数学问题抽象为符号表达式,方便后续的建模和仿真。
2.方程求解器(Solver):MATLAB中内置了多种求解方程的算法和函数,可以快速准确地求解各种数学模型中的方程。
例如,可以使用fsolve函数来求解非线性方程组,使用ode45函数来求解常微分方程等。
3.优化工具箱(Optimization Toolbox):该工具箱提供了多种优化算法和函数,可以用于求解最优化问题。
例如,使用fmincon函数可以进行约束最优化,使用linprog函数可以进行线性规划等。
二、MATLAB的仿真建模功能MATLAB不仅可以进行数学建模,还提供了强大的仿真建模功能,可以根据建立的数学模型进行仿真实验,并得到模拟结果。
1.图形化建模界面(Simulink):MATLAB中的Simulink是一个图形化建模和仿真环境,可以用于构建动态系统的模型。
用户可以通过将各种功能块组合在一起,建立整个系统的模型。
Simulink支持各种类型的信号和系统,包括连续时间、离散时间、混合时间等。
通过Simulink可以直观地展示系统的动态行为,并进行仿真和分析。
2.系统动态仿真:MATLAB提供了一系列用于系统动态仿真的函数和工具箱。
matlab 模拟 实验报告
matlab 模拟实验报告《利用Matlab模拟的实验报告》摘要:本实验利用Matlab软件对某一特定系统进行了模拟实验。
通过对系统的建模和仿真,我们得出了一些有价值的结论,并对系统的性能进行了评估。
本文将详细介绍实验的目的、方法、结果和分析,以及对实验结果的讨论和总结。
1. 引言Matlab是一种强大的数学建模和仿真工具,广泛应用于工程、科学和技术领域。
利用Matlab进行系统仿真可以帮助我们更好地理解系统的行为和性能,优化系统设计,并预测系统在不同条件下的表现。
本实验旨在利用Matlab对某一特定系统进行仿真,以验证系统的性能和稳定性。
2. 实验目的本实验的主要目的是利用Matlab对某一特定系统进行建模和仿真,分析系统的动态响应和稳定性,并评估系统的性能。
具体来说,我们将通过仿真实验探讨系统的频率响应、阶跃响应和脉冲响应,以及系统的稳定性和鲁棒性。
3. 实验方法首先,我们对系统进行了建模,包括系统的传递函数、状态空间模型等。
然后,利用Matlab软件进行仿真实验,分别对系统的频率响应、阶跃响应和脉冲响应进行了分析。
最后,我们对仿真结果进行了统计和评估,得出了一些有价值的结论。
4. 实验结果与分析通过Matlab的仿真实验,我们得到了系统的频率响应曲线、阶跃响应曲线和脉冲响应曲线。
通过对这些曲线的分析,我们可以得出系统的动态特性和稳定性。
同时,我们还对系统的性能进行了评估,包括系统的超调量、调节时间等指标。
5. 结果讨论与总结通过对实验结果的讨论和总结,我们得出了一些结论和建议。
我们对系统的性能和稳定性进行了评估,发现系统在某些条件下存在一些问题,提出了一些建议和改进措施。
同时,我们也对Matlab软件在系统仿真中的应用进行了总结和展望。
结论本实验利用Matlab对某一特定系统进行了建模和仿真,得出了一些有价值的结论。
通过对系统的动态响应和稳定性进行分析,我们发现了系统存在的一些问题,并提出了一些建议和改进措施。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验十MATLAB模拟
一.实验目的
掌握应用matlab进行离散事件的蒙特卡罗方法模拟的一般原理和过程。
二.实验原理和方法
1.模拟的概念:模拟就是利用物理的、数学的模型来类比、模仿现实系统及其演变过程,以寻求过程规律的一种方法。
模拟的基本思想是建立一个试验模型,这个模型包含所研究系统的主要特点.通过对这个实验模型的运行,获得所要研究系统的必要信息。
2.数学模拟:在一定的假设条件下,运用数学运算模拟系统的运行,称为数学模拟。
现代的数学模拟都是在计算机上进行的,称为计算机模拟。
在实际问题中,面对一些带随机因素的复杂系统,用分析方法建模常常需要作许多简化假设,与面临的实际问题可能相差甚远,以致解答根本无法应用。
这时,计算机模拟几乎成为唯一的选择。
蒙特卡洛(Monte Carlo)方法是一种应用随机数来进行计算机模拟的方法.此方法对研究的系统进行随机观察抽样,通过对样本值的观察统计,求得所研究系统的某些参数.
例1.在我方某前沿防守地域,敌人以一个炮排(含两门火炮)为单位对我方进行干扰和破坏.为躲避我方打击,敌方对其阵地进行了伪装并经常变换射击地点.
经过长期观察发现,我方指挥所对敌方目标的指示有50%是准确的,而我方火力单位,在指示正确时,有1/3的射击效果能毁伤敌人一门火炮,有1/6的射击效果能全部消灭敌人.
现在希望能用某种方式把我方将要对敌人实施的20次打击结果显现出来,确定有效射击的比率及毁伤敌方火炮的平均值。
分析:这是一个概率问题,可以通过理论计算得到相应的概率和期望值.但这样只能给出作战行动的最终静态结果,而显示不出作战行动的动态过程.
为了能显示我方20次射击的过程,现采用模拟的方式。
1.问题分析:需要模拟出以下两件事:
[1] 观察所对目标的指示正确与否
模拟试验有两种结果,每一种结果出现的概率都是1/2.
[2] 当指示正确时,我方火力单位的射击结果情况
模拟试验有三种结果:毁伤一门火炮的可能性为1/3(即2/6),毁伤两门的可能性为1/6,没能毁伤敌火炮的可能性为1/2(即3/6).
2. 符号假设
i:要模拟的打击次数;k1:没击中敌人火炮的射击总数;
k2:击中敌人一门火炮的射击总数;k3:击中敌人两门火炮的射击总数.E:有效射击比率;E1:20次射击平均每次毁伤敌人的火炮数.
3.流程框图:
4. 模拟结果
从以上模拟结果可计算出: E =7/20=0.35 20
22012001⨯+⨯+⨯
=E =0.5 5. 理论计算
设:⎩⎨⎧=观察所对目标指示正确
确观察所对目标指示不正
10j
A 0:射中敌方火炮的事件;A 1:射中敌方一门火炮的事件; A 2:射中敌方两门火炮的事件. 则由全概率公式:
E = P(A 0) = P(j=0)P(A 0∣j=0) + P(j=1)P(A 0∣j=1) =
25.02
1
21021=⨯+⨯ P(A 1) = P(j=0)P(A 1∣j=0) + P(j=1)P(A 1∣j=1) =
6
13121021=⨯+⨯ P(A 2) = P(j=0)P(A 2∣j=0) + P(j=1)P(A 2∣j=1)
=
1216121021=⨯+⨯ E 1 = 33.012
1
2611≈⨯
+⨯ 6. 结果比较
理论计算和模拟结果的比较
虽然模拟结果与理论计算不完全一致,但它却能更加真实地表达实际战斗动态过程.
用蒙特卡洛方法进行计算机模拟的步骤:
[1] 设计一个逻辑框图,即模拟模型.这个框图要正确反映系统各部分运行时的逻辑关系。
[2] 模拟随机现象.可通过具有各种概率分布的模拟随机数来模拟随机现象.
产生模拟随机数的计算机命令
在Matlab软件中,可以直接产生满足各种分布的随机数,命令如下:
1.产生m n阶[a,b]均匀分布U(a,b)的随机数矩阵:
unifrnd (a,b,m, n)
产生一个[a,b]均匀分布的随机数:unifrnd (a,b)
2.产生m n阶[0,1]均匀分布的随机数矩阵:rand (m, n)
产生一个[0,1]均匀分布的随机数:rand
3.产生m⨯n阶均值为μ,方差为σ的正态分布的随机数矩阵:
normrnd (μ,σ,m, n)
4.产生m⨯n阶参数为λ的帕松分布的随机数矩阵:poissrnd (λ,m, n)
三.试验内容:
在某商店有一个售货员,顾客陆续来到,售货员逐个地接待顾客.当到来的顾客较多时,一部分顾客便须排队等待,被接待后的顾客便离开商店.设:1.顾客到来间隔时间服从参数为0.1的指数分布.
2.对顾客的服务时间服从[4,15]上的均匀分布.
3.排队按先到先服务规则,队长无限制.
假定一个工作日为8小时,时间以分钟为单位。
[1]模拟一个工作日内完成服务的个数及顾客平均等待时间t.
[2]模拟100个工作日,求出平均每日完成服务的个数及每日顾客的平均等待时间。