(17)MATLAB使用伽马(gamma)分布生成Nakagami-m分布的方法1

文章目录


前言

MATLAB在R2013a版本中引入Nakagami分布对象,可以用来生成Nakagami随机变量。但是在更早的MATLAB版本中,并没有可以直接生成 Nakagami分布的随机变量的内置的函数。另外,为了深入理解Nakagami分布,有必要研究Nakagami分布的随机变量的生成方法。本文和下一篇文章将给出使用伽马分布生成Nakagami分布随机变量的两种方法。


一、使用伽马分布生成Nakagami分布随机变量的方法一

可以通过以下方式从伽马分布转换得到Nakagami分布随机变量:

其中G是形状参数为m和尺度参数为0.5的伽马分布随机变量,m是Nakagami分布的形状参数。

下面给出使用方法一生成Nakagami 分布随机变量的MATLAB代码。

二、MATLAB仿真代码

使用伽马分布生成Nakagami分布随机变量的MATLAB代码如下:

c 复制代码
clc
clear all
close all
%% 方法一:使用伽马分布转换成Nakagami分布的随机变量
m = 1;                                 % Nakagami分布的形状参数
Omega = 2;                             % Nakagami分布的尺度参数
N = 10000;                             % 随机变量的个数

% 生成伽马分布的随机变量
% B = 0.5;                               % gamma分布的尺度参数
gamma_scale = 0.5;                     % gamma分布的尺度参数
% G = gamrnd(m, B, 1, N);              % 生成1xN的服从伽马分布的随机变量G
G = gamrnd(m, gamma_scale, 1, N);      % 生成1xN的服从伽马分布的随机变量G

% 转换为Nakagami分布的随机变量
X = sqrt(G/m) .* sqrt(2*Omega);


% 绘制生成的随机数的直方图,以概率密度形式
nbins = 50;                           % bin数量
figure()
histogram(X,nbins,'Normalization','pdf','DisplayStyle','bar');
hold on

%% nakagami分布的概率密度的理论值
% Nakagami分布的参数
m = 1;
Omega = 2;

% nakagami分布的概率密度的理论表达式
x = 0.01:0.01:3;
f = (2*m.^m./(gamma(m).*Omega^m)) .* x.^(2*m-1) .* exp(-m*x.^2./Omega);

% figure()
plot(x,f,'LineWidth',1.5)
title('Nakagami分布的概率密度')
legend('概率密度函数的估计值','概率密度函数的理论值')

后续

下一篇给出第二种方法:(18)MATLAB使用伽马(gamma)分布生成Nakagami-m分布的方法2


相关推荐
山烛13 分钟前
KNN 算法中的各种距离:从原理到应用
人工智能·python·算法·机器学习·knn·k近邻算法·距离公式
guozhetao26 分钟前
【ST表、倍增】P7167 [eJOI 2020] Fountain (Day1)
java·c++·python·算法·leetcode·深度优先·图论
吃着火锅x唱着歌28 分钟前
LeetCode 611.有效三角形的个数
算法·leetcode·职场和发展
枫叶丹41 小时前
【Qt开发】信号与槽(二)-> 信号和槽的使用
开发语言·qt
Vertira1 小时前
python 阿里云 安装 dashscope的简介、安装
开发语言·python
CHANG_THE_WORLD3 小时前
金字塔降低采样
算法·金字塔采样
hqxstudying3 小时前
Java异常处理
java·开发语言·安全·异常
青春不败 177-3266-05204 小时前
MATLAB近红外光谱分析技术及实践技术应用
随机森林·机器学习·支持向量机·matlab·卷积神经网络·遗传算法·近红外光谱
不知天地为何吴女士5 小时前
Day32| 509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
算法
小坏坏的大世界5 小时前
C++ STL常用容器总结(vector, deque, list, map, set)
c++·算法