计算机仿真实验报告(二)

2020-02-21 21:31

计算机仿真实验报告

学 号:2013214926

班 级:机设13-3班

姓 名: 田启军 指导老师: 翟 华

日期 2016年4月12日

单服务员单队列系统仿真实验

实验要求及实验报告

一.实验要求及目的

通过实验了解离散事件系统仿真一般过程,了解离散事件系统中典型的单服务.单队列系统的仿真一般过程,并理解单服务.单队列系统的流程过程,能画出流程图,了解不同分布随机数的计算机实现过程,了解事件扫描法在离散事件系统中的应用。

同学能在参考源程序的基础上,独立编写C源程序,或其他高级语言程序,能正确理解程序含义,能正确计算仿真结果,并对结果进行分析。

二.实验报告

1.给出RAND()子程序输出的10个数据,以及对应的符合正态分布和指数分布的随机数。 RAND() 1 2 3 4 5 0.979553 0.664057 0.504250 0.527916 0.193561 2.4904 4.0939 3.0001 6.3882 2.6499 6.8468 3.2569 16.4216 NORMAL 2.9767 EXPENT() 0.2066

RAND() 6 7 8 9 10 0.959777 0.683238 0.084337 0.162432 0.080400 4.5799 3.8091 3.7783 24.7294 1.6343 18.1749 6.6180 25.2074 NORMAL 2.9658 EXPENT() 0.4105

2.分别输入下列三组数据,给出相应的计算结果(包括服务员

忙度、平均服务时间、平均到达间隔时间、顾客在系统中平均时间、顾客在队列中平均时间、系统中平均顾客数、队列中平均顾客数、停留4个时间单位以上的顾客比例等),并加以文字说明。 (1)输入数据为:

MIAT=10, MSVT=5,SIGMA=2,TIME=100

miat=10.000000,msvt=5.000000,sigma=2.000000,time=100.000000 rho=0.482677,mq=2.000000,pc=0.454545,clock=114.048820 nd=11.000000,amts=4.362051,amta=9.973741 lq=1.026730,l=1.509407,wq=10.645217,w=3.600372

(2)输入数据为:

MIAT=10, MSVT=3,SIGMA=1,TIME=100

miat=10.000000,msvt=3.000000,sigma=1.000000,time=100.000000 rho=0.242204,mq=1.000000,pc=0.111111,clock=108.105759 nd=9.000000,amts=2.909301,amta=11.269994 lq=0.682092,l=0.924297,wq=8.193123,w=2.863684

(3)输入数据为:

MIAT=10, MSVT=30,SIGMA=2,TIME=100

miat=10.000000,msvt=30.00000,sigma=2.000000,time=100.000000 rho=0.998272,mq=8.000000,pc=1.000000,clock=119.530281 nd=4.000000,amts=29.953489,amta=9.972269 lq=5.037513,l=6.035784,wq=150.533829,w=15.594049

三.实验内容

在C语言环境下,输入C语言程序:

#include \#include \

FILE * fp; float seed; int sstop,ip;

float miat,msvt,svt; float tval,tlq,tmen;

float sigma,time,lqt,lst,tle; float wkst[100];

float b,mq,s,f,nd,ts,is,ta,ia,clock,fel[3]; int imevt,numevs;

rptgen() //报告生成子程序

{ float rho,w,pc,amts,amta,lq,l,wq; rho=b/clock; w=s/nd; pc=f/nd; amts=ts/is; amta=ta/ia; lq=tlq/clock; l=tmen/clock; wq=tlq/nd;

if((fp=fopen(\{printf(\}

printf(\

fprintf(fp,\fprintf(fp,\fprintf(fp,\fprintf(fp,\}

float rand() //随机数生成子程序 {float a,c,m; float rand1; a=25173.0; c=13849.0; m=65535.0;

seed=(seed*a+c)-m*(int)((seed*a+c)/m); if(seed==0.0) seed=1.0; rand1=seed/m;

return rand1; }

float normal(ex,stdx) float ex,stdx; {float sum,x; int i; float r; sum=0.0;

for(i=1;i<=12;i++) {r=rand(); sum=sum+r;}

x=stdx*(sum-6.0)+ex; return x; }

float expent(ex) float ex; {float r,x; r=rand();

printf(\x=-ex*log(r); return x; }

//正态分布随机数生成子程序

//指数分布随机数生成子程序

initlz() //系统初始化子程序 {float aat;

clock=0.0; //置仿真时钟为0.0 imevt=0; //假定系统在时间0为空闲 lqt=0.0; //置以下各统计量初值为0 lst=0.0; tle=0.0; b=0.0; mq=0.0; s=0.0; f=0.0; nd=0.0; ts=0.0; is=0.0; ta=0.0; ia=0.0; tlq=0.0; tmen=0.0;

aat=expent(miat);


计算机仿真实验报告(二).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:安监总安健〔2012〕88号 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: