matlab讲义

随机过程实验讲义
林静珊
刘继成
华中科技大学数学与统计学院
前言 (1)
第一章Matlab简介 (2)
第二章简单分布的模拟 (6)
第三章基本随机过程 (9)
第四章Markov过程 (12)
第五章模拟的应用和例子 (16)
附录各章的原程序 (52)
参考文献 (76)
若想检验数学模型是否反映客观现实,最自然的方法是比较由模型计算的理论概率和由客观试验得到的经验频率。不幸的是,这两件事都往往是费时的、昂贵的、困难的,甚至是不可能的。此时,计算机模拟在这两方面都可以派上用场:提供理论概率的数值估计与接近现实试验的模拟。
模拟的第一步自然是在计算机程序的算法中如何产生随机性。程序语言,甚至计算器,都提供了“随机”生成[0,1]区间内连续数的方法。因为每次运行程序常常生成相同的“随机数”,因此这些数被称为伪随机数。尽管如此,对于多数的具体问题这样的随机数已经够用。我们将假定计算机已经能够生成[0,1]上的均匀随机数。也假定这些数是独立同分布的,尽管它们常常是周期的、相关的、……。
……
本讲义的安排如下,第一章是Matlab简介,从实践动手角度了解并熟悉Matlab环境、命令、帮助等,这将方便于Matlab的初学者。第二章是简单随机变量的模拟,只给出了常用的Matlab 模拟语句,没有堆砌同一种变量的多种模拟方法。对于没有列举的随机变量的模拟,以及有特殊需求的读者应该由这些方法得到启发,或者参考更详细的其他文献资料。第三章是基本随机过程的模拟。主要是简单独立增量过程的模拟,多维的推广是直接的。第四章是Markov过程的模拟。包括服务系统,生灭过程、简单分支过程等。第五章是这些模拟的应用。例如,计算概率、估计积分、模拟现实、误差估计,以及减小方差技术,特别给读者提供了一些经典问题的模拟,通过这些问题的模拟将会更加牢固地掌握实
际模拟的步骤。平稳过程的模拟、以及利用平稳过程来预测的内容并没有包含在本讲义之内,但这丝毫不影响该内容的重要性,这也是将会增补进来的主要内容之一。希望读者碰到类似的问题时能够查阅相关资料解决之。三星e568
各章的内容包括了模拟的基本思路和Matlab代码。源程序包展示了对各种随机过程与随机机制的有效模拟和可视化的基本技术,试图强调matlab自然处理矩阵和向量的方法,目标是为涉及应用随机模拟的读者在准备自己的程序代码时到灵感和想法。建议读者在了解了模拟的基本方法之后就着手解决自己感兴趣的实际问题。对实际具体问题的解决有助于更深刻理解模拟的思想、也会在具体应用中拓展现有的模拟方法。
第一章Matlab简介
若你想在计算机上运行Matlab,点击:开始/程序/MATLAB6.5,这样将会出现有三个窗口的交互界面。如果你是初学者,可以先浏览一下Matlab的指导材料,点击:Help/MATLAB Help,打开窗口左边的“MATLAB”一节即可看到相关的内容。
就自己而言,我学习Matlab更喜欢的方式是:输入并运行一些命令、观察出现的结果,然后查阅想了解的帮助文件。这也正是本节的方法。在“command window”窗口中显示有提示符“>>”,在提示符后输入下面的命令,按回车键即可运行并显示相应的结果。当然,不要输入行号、也不必输入后面的注释。
在这个部分讨论的Matlab文件有:rando.m,vrando.m,show.m。
一、Matlab初步
1:2*9Matlab当作计算器用。2:sin(1)Matlab仅显示四位小数,但保存的更多!3:format long显示更多位小数。4:sin(1)
沧州日报5:2^999
我眼中的学校6:format short
7:x=sin(1)将计算结果存在变量中。8:x显示x的值。9:x=rand(10,1)x是包含有10个[0,1]上均匀分布随机数的集合,它是一个列向量或者是10×1的矩阵。
10:x+5x的每个分量都加5。11:1000*x x的每个分量都乘以1000。12:x=rand(10,7)10×7的随机数矩阵。若想重复此命令或其他命令,按住向上的光标键直至看到想重复的命令。
13:x=rand(1000,1)将1000换成更大的数试试。14:x=rand(1000,1);用分号“;”可以不显示结果。15:help显示标准的帮助列表。16:help elmat显示关于初等矩阵的帮助,包括命令“rand”。17:help
rand直接显示“rand”的帮助。18:x(1:20,1)取出x的第一列中的1-20个数。19:help punct Matlab中关于标点符号的用法。20:max(x)
21:mean(x)
22:sum(x)
23:median(x)x的中位数。24:cumsum(x)x的分量累计和向量。25:y=sort(rand(10,1))由小到大排序后的向量。
26:hist(x)作出x的直方图。27:hist(x,30)用30个方柱代替缺省的10个。28:y=-log(x)对x的分量取自然对数。29:hist(y,30)多数的y的分量只是接近0的,但有些是和6差不多大的,y中的数被称为指数分布随机数。
30:z=randn(1000,1);生成1000个标准正态分布随机数。31:hist(z,30)直方图是钟形的。对大于1000的数试试结果。
与龙同行二、获取更多帮助
卑南族32:如果你想查不会使用的命令,可以点击::Help/MATLAB Help,打开左边的“MATLAB”
节,选择“Functions–Categorical List”即可。据我所知,这是寻求帮助的最好方法。
三、画出数据点
33:plot(x(1:10),’*’);用“*”描出x的前10个点。注意两个单引号为英文的单引号,下同。34:plot(x-0.5);向下平移0.5,描出述据点,且将其连成线。35:hold on将下面的图形加到上面的图形中。36:plot(cumsum(x-0.5),’r’);将这个结果图画到上面的图形中。“’r’”表示用红的线绘出,而缺省的颜为蓝。
37:zoom on用鼠标点击可放大图形,双击回到原始的尺寸。38:clf清除当前的图形。39:z=randn(1000,1);生成1000个标准正态分布随机数。40:w=z+randn(1000,1);生成依赖z的随机数。41:plot(z,w,’*’);作出(z,w)的图形。42:axis([-33-44]);显示x在[-3,3]与y在[-4,4]范围的图形。
四、作图函数
43:clf
44:ezplot(’sin(x)’,[03*pi]);画出正弦函数的图形。45:hold on
46:t=0:0.01:3*pi;定义一个时间点向量,间隔为0.01。47:t t为一行向量。48:t=t’现在t为一列向量。49:plot(t,sin(5*t),’r’);用红画sin(t)关于t的函数。显然,函数ezplot不能设置图形的颜。
50:title(’sin(x)and sin(5x)’)给图形加上更恰当的标题。
五、运行现有的Matlab程序
51:上网下载或者拷贝一些编辑好的Matlab程序到自己的电脑中。
52:如果在你电脑的某个文件夹中有现成的Matlab程序(*.m),可以设置“Current Directory”
(Command Window窗口的上面)为该文件夹即可运行这些程序。

本文发布于:2024-09-22 05:28:36,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/14320.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:模拟   过程   图形   命令
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议