文件下载地址:

https://github.com/mufasa007/myblog/tree/master/%E9%9B%B7%E8%BE%BE%E6%97%A0%E7%BA%BF%E7%94%B5%E7%B3%BB%E5%88%97%EF%BC%88%E4%B8%80%EF%BC%89%E5%87%A0%E7%A7%8D%E5%B8%B8%E8%A7%81%E7%9A%84%E5%B9%85%E5%BA%A6%E5%88%86%E5%B8%83%E5%87%BD%E6%95%B0%EF%BC%88matlab%EF%BC%89

一,瑞利幅度分布模型

  ① 常规模型

  

function [fx, Fx, Exn, Ex] = pdf_rayleigh(x, sigma, n)
fx = x./(sigma.^2).*exp(-1.*x.^2./(2.*sigma.^2));
Fx = 1 - exp(-x.^2/(2.*sigma.^2));
Exn = 2.^(n./2).*sigma.^2.*gamma(1+n./2);
Ex = sqrt(pi/(2.*sigma));
end

  

  ②AB模型

  

function [fA] = pdf_ABrayleigh(A, B)
fA = 1/B.*exp(-1.*(A/B));
end

  

二,对数正态分布模型

   

function [fx, Fx, Exn, Ex, Dx] = pdf_lognormal(x, sigma, v, n)
fx = 1./(sqrt(2.*pi).*sigma.*x).*exp(-1.*(log(x)-v).^2./(2.*sigma.^2));
Fx = 1 - exp(-((log(x)-v)/sigma).^2/(2.*sigma.^2));
Exn = exp(1/2.*(n.*sigma).^2+n.*v);
Ex = v.*exp((sigma.^2)/2);
Dx = v.^2.*exp(sigma.^2).*(exp(sigma.^2)-1);
end

三,韦布尔幅度分布模型

 

function [fx, Fx, Exn, Ex, Dx] = pdf_weibull(x, alpha, beta, n)
fx = alpha./beta.*(x./beta).^(alpha-1).*exp(-(x./beta).^alpha);
Fx = 1 - exp(-(x./beta).^alpha);
Exn = beta.^n.*gamma(n./alpha+1);
Ex = beta.*gamma(1./alpha+1);
Dx = beta.^2.*(gamma(2./alpha + 1) - gamma(1./alpha + 1).^2);
end

 

四,k分布

  

function [fx, Fx, Exn] = pdf_k(x, c, v, n)
fx = (2.*c./gamma(v)).*(c.*x./2).^v.*besselk(v-1,c.*x);
Fx = 1 - 2./gamma(v).*(c.*x./2).^v.*besselk(v,c.*x);
Exn = gamma(n./2+1).*gamma(n./2+v)./gamma(v).*(2./c).^n;
end

  

五,Gamma分布

   

function [fx, Ex, Dx] = pdf_gamma(x, v, alpha)
fx = alpha.^v/gamma(v).*x.^(v-1).*exp(-alpha.*x);
Ex = v/alpha;
Dx = v/alpha^2;
end

  

六,测试运行程序

clc;
%% 测试k分布v参数
% x = 0:0.01:15;
% c=1;
% n=1;
% figure;
% [fx0, Fx, Exn] = pdf_k(x, c, 1, n);
% [fx1, Fx, Exn] = pdf_k(x, c, 2, n);
% [fx2, Fx, Exn] = pdf_k(x, c, 3, n);
% [fx3, Fx, Exn] = pdf_k(x, c, 4, n);
% [fx4, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 2.5, v, n);
% plot(x,fx0, x,fx1, x,fx2, x,fx3); %% 测试k分布c参数
% x = 0:0.01:30;
% v=2;
% n=1;
% figure;
% [fx0, Fx, Exn] = pdf_k(x, 0.2, v, n);
% [fx1, Fx, Exn] = pdf_k(x, 0.25, v, n);
% [fx2, Fx, Exn] = pdf_k(x, 0.5, v, n);
% [fx3, Fx, Exn] = pdf_k(x, 1, v, n);
% % [fx4, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 2.5, v, n);
% plot(x,fx0, x,fx1, x,fx2, x,fx3); %% 测试韦布尔分布beta参数
% x = 0:0.01:8;
% alpha=3;
% n=1;
% figure;
% [fx0, Fx, Exn, Ex, Dx] = pdf_weibull(x, alpha, 1, n);
% [fx1, Fx, Exn, Ex, Dx] = pdf_weibull(x, alpha, 2, n);
% [fx2, Fx, Exn, Ex, Dx] = pdf_weibull(x, alpha, 3, n);
% [fx3, Fx, Exn, Ex, Dx] = pdf_weibull(x, alpha, 4, n);
% % [fx4, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 2.5, v, n);
% plot(x,fx0, x,fx1, x,fx2, x,fx3); %% 测试韦布尔分布alpha参数
% x = 0:0.01:3;
% beta=1;
% n=1;
% figure;
% [fx0, Fx, Exn, Ex, Dx] = pdf_weibull(x, 0.5, beta, n);
% [fx1, Fx, Exn, Ex, Dx] = pdf_weibull(x, 1, beta, n);
% [fx2, Fx, Exn, Ex, Dx] = pdf_weibull(x, 2, beta, n);
% [fx3, Fx, Exn, Ex, Dx] = pdf_weibull(x, 3, beta, n);
% % [fx4, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 2.5, v, n);
% plot(x,fx0, x,fx1, x,fx2, x,fx3); %% 测试对数正态v参数
% x = 0:0.1:20;
% sigma=1;
% n=1;
% figure;
% [fx0, Fx, Exn, Ex, Dx] = pdf_lognormal(x, sigma, 0.5, n);
% [fx1, Fx, Exn, Ex, Dx] = pdf_lognormal(x, sigma, 1, n);
% [fx2, Fx, Exn, Ex, Dx] = pdf_lognormal(x, sigma, 2, n);
% [fx3, Fx, Exn, Ex, Dx] = pdf_lognormal(x, sigma, 3, n);
% % [fx4, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 2.5, v, n);
% plot(x,fx0, x,fx1, x,fx2, x,fx3); %% 测试对数正态sigma参数
% x = 0:0.1:5;
% v=0;
% n=1;
% figure;
% [fx0, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 0.3, v, n);
% [fx1, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 0.5, v, n);
% [fx2, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 1, v, n);
% [fx3, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 2, v, n);
% % [fx4, Fx, Exn, Ex, Dx] = pdf_lognormal(x, 2.5, v, n);
% plot(x,fx0, x,fx1, x,fx2, x,fx3); %% 测试rayleigh_AB分布函数
% figure;
% x=0:0.1:8;
% [fx0] = pdf_ABrayleigh(x, 0.5);
% [fx1] = pdf_ABrayleigh(x, 1);
% [fx2] = pdf_ABrayleigh(x, 2);
% [fx3] = pdf_ABrayleigh(x, 3);
% [fx4] = pdf_ABrayleigh(x, 4);
% plot(x,fx0, x,fx1, x,fx2, x,fx3, x,fx4); %% 测试rayleigh分布函数
% n = 1;
% figure;
% [fx0, Ex0, Dx0] = pdf_rayleigh(x, 0.5, n);
% [fx1, Ex1, Dx1] = pdf_rayleigh(x, 1, n);
% [fx2, Ex2, Dx2] = pdf_rayleigh(x, 1.5, n);
% [fx3, Ex3, Dx3] = pdf_rayleigh(x, 2, n);
% [fx4, Ex4, Dx4] = pdf_rayleigh(x, 2.5, n);
% plot(x,fx0, x,fx1, x,fx2, x,fx3, x,fx4); %% 测试gamma分布v参数
% x = 0:0.1:10;
% alpha = 1;
% figure;
% [fx0, Ex0, Dx0] = pdf_gamma(x, 0.5, alpha);
% [fx1, Ex1, Dx1] = pdf_gamma(x, 1, alpha);
% [fx2, Ex2, Dx2] = pdf_gamma(x, 2, alpha);
% [fx3, Ex3, Dx3] = pdf_gamma(x, 3, alpha);
% plot(x,fx0, x,fx1, x,fx2, x,fx3); %% 测试gamma分布alpha参数
% x = 0:0.1:10;
% alpha = 1;
% figure;
% [fx0, Ex0, Dx0] = pdf_gamma(x, v, 0.5);
% [fx1, Ex1, Dx1] = pdf_gamma(x, v, 1);
% [fx2, Ex2, Dx2] = pdf_gamma(x, v, 2);
% [fx3, Ex3, Dx3] = pdf_gamma(x, v, 3);
% plot(x,fx0, x,fx1, x,fx2, x,fx3);

  

雷达无线电系列(一)几种常见的幅度分布函数(matlab)的更多相关文章

  1. 雷达无线电系列(二)经典CFAR算法图文解析与实现(matlab)

    一,CFAR基础知识介绍 简介 恒虚警检测技术是指雷达系统在保持虚警概率恒定条件下对接收机输出的信号与噪声作判别以确定目标信号是否存在的技术. 前提 由于接收机输出端中肯定存有噪声(包括大气噪声.人为 ...

  2. 雷达无线电系列(三)经典CFAR算法门限因子alpha计算(matlab)

    前言 本文汇集CA.SO.GO.OS.杂波图等恒虚警算法的门限因子求解方法及其函数 1,CA-CFAR [非常简单,可以直接求解] %% 均值恒虚警_门限因子计算公式 %% 版本:v1 %% 时间:2 ...

  3. ElasticSearch 学习记录之ES几种常见的聚合操作

    ES几种常见的聚合操作 普通聚合 POST /product/_search { "size": 0, "aggs": { "agg_city&quo ...

  4. 一文读懂四种常见的XML解析技术

    之前的文章我们讲解了<XML系列教程之Schema技术_上海尚学堂java培训技术干货><XML的概念.特点与作用.XML申明_上海Java培训技术干货>,大家可以点击回顾一下 ...

  5. Spring RestTemplate中几种常见的请求方式

    https://github.com/lenve/SimpleSpringCloud/tree/master/RestTemplate在Spring Cloud中服务的发现与消费一文中,当我们从服务消 ...

  6. Spring RestTemplate中几种常见的请求方式GET请求 POST请求 PUT请求 DELETE请求

    Spring RestTemplate中几种常见的请求方式 原文地址: https://blog.csdn.net/u012702547/article/details/77917939   版权声明 ...

  7. 几种常见web攻击手段及其防御方式

    XSS(跨站脚本攻击) CSRF(跨站请求伪造) SQL注入 DDOS web安全系列目录 总结几种常见web攻击手段极其防御方式 总结几种常见的安全算法 XSS 概念 全称是跨站脚本攻击(Cross ...

  8. 总结几种常见web攻击手段及其防御方式

    本文简单介绍几种常见的攻击手段及其防御方式 XSS(跨站脚本攻击) CSRF(跨站请求伪造) SQL注入 DDOS web安全系列目录 总结几种常见web攻击手段极其防御方式 总结几种常见的安全算法 ...

  9. css3系列-2.css中常见的样式属性和值

    css3系列-2.css中常见的样式属性和值 继续上一篇文章的继续了解css的基础知识,关注我微信公众号:全栈学习笔记 css中常见的样式属性和值 字体与颜色 背景属性 文本属性 边框属性 内外边距 ...

随机推荐

  1. 2018-2019 20165235 网络对抗技术 Exp0:kali的安装

    2018-2019 20165235 网络对抗技术 Exp0:kali的安装 安装kali 在官网上https://www.kali.org/下载kali 下载之后进行解压 打开VMware-> ...

  2. Windows phone 8.1之数据绑定(Data Binding)

    学习Winphone8.1的时候经常需要对Slider进行数据绑定后使之视觉化,方便调节Slider的值. 数据绑定分为源(Source)和目标(Target),Source一般分为两种,其他控件的数 ...

  3. 业务线B/C端业务组件总结

    /** * 业务线组件总结 * */ /* B端组件的总结 1.组件cssBase的总结 1像素底部边框 */ @mixin border - 1px - b($background: $gray - ...

  4. 升级android studio 3.4需要注意n事项

    1.在AS版本升级前建议关闭AS代理,以及关闭本地的一些代理工具,不然点击更新的时候会提示Connection failed (Read timed out). Please check networ ...

  5. c++ 积累

    class MyClass { public: MyClass()=default; MyClass(const MyClass& )=delete; ...... 有些时候我们希望限制默认函 ...

  6. look back to 2018

    只写展望怎么行,还是缺一篇总结.2018年几乎没有怎么发朋友圈,需要一些文字记录一下这一年发生的事. 去年的现在,2018年的开端,结束了研一上学期充实的生活,下学期一项艰巨的任务就是完成大项目,一个 ...

  7. user-agent | what is the "user-agent" ?

    User Agent(用户代理) UA是一个特殊字符串头,使得服务器能够识别客户使用的操作系统及版本.CPU 类型.浏览器及版本.浏览器渲染引擎.浏览器语言.浏览器插件等 通过抓包可以得到 下面是几个 ...

  8. HttpWebRequest的Timeout和ReadWriteTimeout

    HttpWebRequest.Timeout在发起请求开始,如果未从远程请求的URL得到任何数据的情况下,超过Timeout后,触发超时异常 HttpWebRequest.ReadWriteTimeo ...

  9. java常用数据类型使用Day008

    1,java常用数据类型使用 package cn.edu.fhj.day008; import java.util.ArrayList; import java.util.HashMap; impo ...

  10. Anaconda虚拟环境

    创建虚拟环境:conda create -n env_name packages 例:创建名为env1的虚拟环境,并在其中安装numpy,conda create -n env1 numpy. 指定特 ...