产生瑞利分布的随机数 C语言实现
瑞利分布的概率密度函数为
瑞丽分布的均值为,方差为
首先使用逆变换法产生参数的指数分布的随机变量
,其概率密度函数为
然后通过变换,产生瑞丽分布的随机变量x,具体的方法如下:
(1)产生均匀分布的随机数
(2)计算
(3)计算
1、头文件 rayleigh.h
#pragma once
#ifndef RAYLEIGH_H_
#define RAYLEIGH_H_/*
函数功能: 瑞利分布的随机数
输入参数说明:
sigma 瑞利分布的均值
seed 长整型指针变量, *seed 为伪随机数的种子
*/double rayleigh_data(double sigma, long int * seed);#endif // !RAYLEIGH_H
2、rayleigh.c
#include "rayleigh.h"#include <stdint.h>
#include "string.h"
#include "stdio.h"
#include "uniform.h"
#include <math.h>double rayleigh_data(double sigma, long int * seed)
{double u, x;u = uniform_data(0.0, 1.0, seed);x = -2.0 * log(u);x = sigma + sqrt(x);return x;
}
3、主函数 main.c
#include <stdio.h>
#include <string.h>
#include "uniform.h"
#include "rayleigh.h"int main()
{// 产生50个瑞利分布的随机数int i, j;long int s;double x, sigma;sigma = 1.0; s = 13579;for (i = 0; i < 10; i++){for (j = 0; j < 5; j++){x = rayleigh_data(sigma, &s);printf("%13.7f",x);}printf("\n");} getchar(); // 此行代码是为了保持输出窗口,按任意按键关闭弹窗return 0;
}
4、调试输出结果
产生瑞利分布的随机数 C语言实现相关推荐
- 产生拉普拉斯分布随机数--C语言实现
1.产生随机变量的组合法 将分布函数分解为若干个较简单的子分布函数的线性组合 其中且,是分布函数. 定理:若随机变量,即,并且,取; 证明的分布函数为 定理证毕. 根据此定义,我们可以给出产生随机数的 ...
- 产生正态分布(高斯分布)随机数 C语言实现
正态分布的概率密度函数如下 通常使用表示均值为,方差为 产生正太分布的方法如下: 设为(0,1)上n个相互独立的均匀分布的随机数,由于,. 根据中心极限定理可知,当n趋向于无穷时 的分布近似于正态分布 ...
- c语言中什么情况下会出现随机数,C语言中如何产生随机数
今天看到一段小程序 ,里面用到随机数.才发现在C语言中产生随机数不像matlab中那么简单. C中也有rand()函数,但是rand()函数产生的数不是真正意义上的随机数,是一个伪随机数,是根据一个数 ...
- c语言产生随机数_C语言 求的近似值
点击上方"蓝字"关注我们 愉快的一天,不得不做的三件事: 种田,锄地,整代码!!! [题目] 用循环方法实现. (1)请利用"正多边形逼近"的方法求出π的近似值 ...
- c语言中二维数组中产生随机数,C语言中是如何进行随机数生成的[多图]
C语言中是如何进行随机数生成的.C语言是编程人员经常会到的一款计算机编程语言,有的朋友想知道怎样使用C语言进行随机数生成,那么就快随小编一起来看看这篇C语言中是如何进行随机数生成的吧!其中不仅为大家介 ...
- Flutter获取随机数 Dart语言核心基础
也许你迷茫,但是我想说,在你迷茫的同时,保持本心,过好今天就好. 学习Dart语言,首先我们需要使用到一个语言调试工具 DartPad 在 Dart 中,dart:math 类库提供了 数学常数和函数 ...
- c语言产生50以内随机数,C语言产生随机数
C语言/C++产生随机数:要用到的函数是rand(), srand()和time() 需要说明的是,iostream头文件中就有srand函数的定义,不需要再额外引入stdlib.h;而使用time( ...
- 0 1随机数C语言程序,C语言产生随机数的方法
C语言产生随机数的方法 C语言的设计目标是提供一种能以简易的方式编译.处理低级存储器.产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言.那么C语言产生随机数的方法都有哪些呢?以下仅供参考! ...
- 正态分布随机数 C语言,正态分布随机数生成算法
<正态分布随机数生成算法>由会员分享,可在线阅读,更多相关<正态分布随机数生成算法(7页珍藏版)>请在人人文库网上搜索. 1.概率论与数理统计课程设计题目:正态分布随机数生成算 ...
最新文章
- 故障排除:硬盘坏道修复术
- Java开发技巧——并发控制中的乐观锁与悲观锁
- jquery页面加载ajax请求,jquery ajax 加载页面
- 黔南民族师范学院计算机与信息学院,黔南民族师范学院
- java system.out.read_一个java文件操作小程序 system.out.in buffer read
- Nginx + IIS实现负载均衡 Session多站点共享
- 关键字Restrict
- 分区表的误区:性能提升
- Linux统计代码行数
- 基于ADS仿真的465khz检波电路
- BugKuCTF中套路满满的题--------网站被黑了
- Widget Extention开发笔记
- 微信小程序模板信息【详】
- Java简单类、变量详解(概念和分类、声明、命名、初始化)
- 三轮全向底盘:运动学性能分析
- DataStream API【1】
- python一些运维模块熟悉
- vue加载图片失败处理
- VB6编程:DirectX 2D图形学习日志20伽玛校正
- 前端基础入门之css像素与视口和媒体查询