OPNET核心函数学习(一)

本文详细介绍了OPNET模型中的核心函数,包括分布类函数如op_dist_uniform()和op_dist_exponential(),事件类函数如op_ev_current()和op_ev_cancel(),接口控制类函数op_ici_create(),标识类函数op_id_self(),内部模型访问类函数如op_ima_obj_state_get(),中断类函数如仿真核心中断和状态中断,以及包类函数如op_pk_create()和op_pk_destroy()。这些函数在OPNET建模和仿真中起到关键作用,帮助实现随机数生成、事件处理、信息传递、对象访问和包操作等功能。
摘要由CSDN通过智能技术生成
1 分布类核心函数
分布类核心函数功能:按照指定的概率分布函数产生随机值。
op_dist_uniform():输入参数为非0实数,代表取值上限,产生均匀分布的随机数, 注意:不包含此上限。
op_dist_exponential():产生服从指数分布的随机数,输入参数为指数分布函数的平均值
此外,还可以采用以下两个步骤:
1 )调用  op_dist_load() 自定义一个带参数的随机分布函数。
返回值不是一个随机数,而是指向一个分布函数的指针( Distribution * ),这个指针供以后使用,所以这个步骤一般是在进程的初始化状态完成的;不管是对  OPNET  自带的一些分布函数,还是对  PDF Editor (分布函数编辑器)创建的函数,都可以调用op_dist_load()进行加载。当函数不再使用时还可以调用op_dist_unload()将所占内存释放。
2)函数一旦被加载,就可以在整个仿真过程中通过调用。
op_dist_outcome()用来产生一个服从自定义分布函数的随机值。这两个核心函数以分布函数指针为输入参数, 返回一个随机值。
 

2 事件类核心函数
功能:为进程模型提供有关事件的信息。
以下三个函数可以访问事件列表中的事件。
(1)op_ev_current():返回当前事件。
(2)op_ev_next(): 获得当前有效事件的下一事件。
(3)op_ev_seek_time():获得与输入的仿真事件最接近的那个事件的句柄。
以下两个常搭配使用:
op_ev_pending():判断一个事件是否还在列表中等待调度
op_ev_cancel():将事件列表中的将来事件删除

自中断:模拟进程的各种延时(将来某个时刻)的处理。自中断、遥远中断和多播中断源于调度他们的进程模块。
流中断:由于包到达输入流端口时触发的,流中断源于发送包的模块。
op_ev_strm():决定包到达的流索引号
op_ev_stat():决定事件作用的状态线索引号
op_ev_code():得到事件号
op_ev_time():返回事件调用的仿真时间
op_ev_equal():比较两个事件句柄,在进程等待一个特定事件时有用。
op_ev_src_id():获取事件源模块id
op_ev_dst_id():获取事件目的模块id
3 接口控制类核心函数
  ICI:接口控制信息,是进程块间传递信息的载体。
op_ici_create():基于指定的ICI格式文件返回一个指向ICI文件的指针。
op_ici_destroy():销毁,ICI的信息一般只用一次
4 标识类核心函数
  • 5
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值