当前位置: 首页 > news >正文

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

文章目录

  • 前言
  • 一、使用伽马分布生成Nakagami分布随机变量的方法一
  • 二、MATLAB仿真代码
  • 后续


前言

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


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

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

在这里插入图片描述

其中G是形状参数为m和尺度参数为0.5的伽马分布随机变量,m是Nakagami分布的形状参数。
下面给出使用方法一生成Nakagami 分布随机变量的MATLAB代码。

二、MATLAB仿真代码

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

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。


http://www.lryc.cn/news/453221.html

相关文章:

  • NFT 是什么?
  • mysql的学习
  • 微服务之间的相互调用的几种常见实现方式对比
  • FPGA时序分析和约束学习笔记-(1、FPGA基本原理)
  • 华为仓颉语言入门(9):for-in表达式
  • Vue3中使用axios
  • 国创——VR虚拟陪伴
  • 【Android 源码分析】Activity生命周期之onPause
  • ​IAR全面支持国科环宇AS32X系列RISC-V车规MCU
  • Java题集(从入门到精通)04
  • 《西北师范大学学报 (自然科学版)》
  • Oracle SQL语句没有过滤条件,究竟是否会走索引??
  • Java中参数传递:按值还是按引用?
  • Linux忘记root用户密码怎么重设密码
  • 【Web】复现n00bzCTF2024 web题解(全)
  • 仿RabbitMQ实现消息队列客户端
  • CSS | 面试题:你知道几种移动端适配方案?
  • 【web安全】——XSS漏洞
  • JAVA基础语法 Day11
  • 知识图谱入门——7:阶段案例:使用 Protégé、Jupyter Notebook 中的 spaCy 和 Neo4j Desktop 搭建知识图谱
  • 【AIGC】VoiceControl for ChatGPT指南:轻松开启ChatGPT语音对话模式
  • 基于SpringCloud的微服务架构下安全开发运维准则
  • vue的图片显示
  • 深度学习06:线性回归模型
  • Angular ng-state script 元素的生成机制介绍
  • 小程序-全局数据共享
  • vSAN01:vSAN简介、安装、磁盘组、内部架构与调用关系
  • Apache NiFi最全面试题及参考答案
  • 基于Docker部署最新版本SkyWalking【10.1.0版本】
  • 如何在 Ubuntu 18.04 上使用 LEMP 安装 WordPress