雷达无线电系列(一)几种常见的幅度分布函数(matlab)
文件下载地址:
一,瑞利幅度分布模型
① 常规模型

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)的更多相关文章
- 雷达无线电系列(二)经典CFAR算法图文解析与实现(matlab)
一,CFAR基础知识介绍 简介 恒虚警检测技术是指雷达系统在保持虚警概率恒定条件下对接收机输出的信号与噪声作判别以确定目标信号是否存在的技术. 前提 由于接收机输出端中肯定存有噪声(包括大气噪声.人为 ...
- 雷达无线电系列(三)经典CFAR算法门限因子alpha计算(matlab)
前言 本文汇集CA.SO.GO.OS.杂波图等恒虚警算法的门限因子求解方法及其函数 1,CA-CFAR [非常简单,可以直接求解] %% 均值恒虚警_门限因子计算公式 %% 版本:v1 %% 时间:2 ...
- ElasticSearch 学习记录之ES几种常见的聚合操作
ES几种常见的聚合操作 普通聚合 POST /product/_search { "size": 0, "aggs": { "agg_city&quo ...
- 一文读懂四种常见的XML解析技术
之前的文章我们讲解了<XML系列教程之Schema技术_上海尚学堂java培训技术干货><XML的概念.特点与作用.XML申明_上海Java培训技术干货>,大家可以点击回顾一下 ...
- Spring RestTemplate中几种常见的请求方式
https://github.com/lenve/SimpleSpringCloud/tree/master/RestTemplate在Spring Cloud中服务的发现与消费一文中,当我们从服务消 ...
- Spring RestTemplate中几种常见的请求方式GET请求 POST请求 PUT请求 DELETE请求
Spring RestTemplate中几种常见的请求方式 原文地址: https://blog.csdn.net/u012702547/article/details/77917939 版权声明 ...
- 几种常见web攻击手段及其防御方式
XSS(跨站脚本攻击) CSRF(跨站请求伪造) SQL注入 DDOS web安全系列目录 总结几种常见web攻击手段极其防御方式 总结几种常见的安全算法 XSS 概念 全称是跨站脚本攻击(Cross ...
- 总结几种常见web攻击手段及其防御方式
本文简单介绍几种常见的攻击手段及其防御方式 XSS(跨站脚本攻击) CSRF(跨站请求伪造) SQL注入 DDOS web安全系列目录 总结几种常见web攻击手段极其防御方式 总结几种常见的安全算法 ...
- css3系列-2.css中常见的样式属性和值
css3系列-2.css中常见的样式属性和值 继续上一篇文章的继续了解css的基础知识,关注我微信公众号:全栈学习笔记 css中常见的样式属性和值 字体与颜色 背景属性 文本属性 边框属性 内外边距 ...
随机推荐
- Model类代码生成器
using Humanizer; using System; using System.Collections.Generic; using System.Data; using System.Dat ...
- js原型与原型链探究
原型有一个非常重要的属性叫 prototype 一.先写一个简单的例子,看看 A的原型和A的实例 分别是什么 function A() {} var a = new A() console.log(a ...
- CF1065F Up and Down the Tree
题解: 和正解方法不太一样 正解的大概意思就是先向下走可以走回来的 再走不能走回来的 能走回来的就是到这个儿子后最近的叶子可以返回的 然后这样可以O(n)计算 我自己做的时候以为这样不太能做.. 所以 ...
- swoole websocket服务推送
用过workerman, 两个字"好用",对于swoole最近有时间也研究研究 swoole的websocket 很好实现 如官网 https://wiki.swoole.com/ ...
- python第十五天
什么是模块? 一系列功能的集合 定义模块? 创建一个py文件就是一个模块,该py文件名就是模块名 怎么使用模块? 在要是用的模块文件中通过import 模块名 来导入模块 模块的四种方式? 1.编译执 ...
- linux - word frequency
linux 输出某个文件的单词出现频率 解决方式 cat words.txt |awk '{for(i=1;i<=NF;i++) print $i;}'|sort|uniq -c|sort - ...
- Echarts line折线图使用(vue)
实现 首先引入echarts工具 // vue文件中引入echarts工具 let echarts = require('echarts/lib/echarts') require('echarts/ ...
- 【redis】在dotnet core下的redis的使用
1.Install-Package Microsoft.Extensions.Caching.Redis -Version 2.2.0 2.注入 services.AddDistributedRedi ...
- ISP PIPLINE (十一) color correction
什么是color correction? 为什么要进行color correction? 转换后的色彩饱和度更加明显,更加符合人眼感官. 如何进行color correction? 下图是步骤: 第一 ...
- 计蒜客 等边三角形 dfs
题目: https://www.jisuanke.com/course/2291/182238 思路: 1.dfs(int a,int b,int c,int index)//a,b,c三条边的边长, ...