cdfemu | R Documentation |
This function computes the cumulative probability or nonexceedance probability of the Eta-Mu (\eta:\mu
) distribution given parameters (\eta
and \mu
) computed by parkmu
. The cumulative distribution function is complex and numerical integration of the probability density function pdfemu
is used or the Yacoub (2007) Y_\nu(a,b)
integral. The cumulative distribution function in terms of this integral is
F(x) = 1- Y_\nu\biggl( \frac{H}{h},\, x\sqrt{2h\mu} \biggr)\mbox{,}
where
Y_\nu(a,b) = \frac{2^{3/2 - \nu}\sqrt{\pi}(1-a^2)^\nu}{a^{\nu - 1/2} \Gamma(\nu)} \int_b^\infty x^{2\nu}\,\mathrm{exp}(-x^2)\,I_{\nu-1/2}(ax^2) \; \mathrm{d}x\mbox{,}
where I_{\nu}(a)
is the “\nu
th-order modified Bessel function of the first kind.”
cdfemu(x, para, paracheck=TRUE, yacoubsintegral=TRUE)
x |
A real value vector. |
para |
The parameters from |
paracheck |
A logical controlling whether the parameters and checked for validity. |
yacoubsintegral |
A logical controlling whether the integral by Yacoub (2007) is used instead of numerical integration of |
Nonexceedance probability (F
) for x
.
W.H. Asquith
Yacoub, M.D., 2007, The kappa-mu distribution and the eta-mu distribution: IEEE Antennas and Propagation Magazine, v. 49, no. 1, pp. 68–81
pdfemu
, quaemu
, lmomemu
, paremu
para <- vec2par(c(0.5, 1.4), type="emu")
cdfemu(1.2, para, yacoubsintegral=TRUE)
cdfemu(1.2, para, yacoubsintegral=FALSE)
## Not run:
delx <- 0.01; x <- seq(0,3, by=delx)
nx <- 20*log10(x)
plot(c(-30,10), 10^c(-3,0), log="y", xaxs="i", yaxs="i",
xlab="RHO", ylab="cdfemu(RHO)", type="n")
m <- 0.75
mus <- c(0.7425, 0.7125, 0.675, 0.6, 0.5, 0.45)
for(mu in mus) {
eta <- sqrt((m / (2*mu))^-1 - 1)
lines(nx, cdfemu(x, vec2par(c(eta, mu), type="emu")))
}
mtext("Yacoub (2007, figure 8)")
# Now add some last boundary lines
mu <- m; eta <- sqrt((m / (2*mu))^-1 - 1)
lines(nx, cdfemu(x, vec2par(c(eta, mu), type="emu")), col=8, lwd=4)
mu <- m/2; eta <- sqrt((m / (2*mu))^-1 - 1)
lines(nx, cdfemu(x, vec2par(c(eta, mu), type="emu")), col=4, lwd=2, lty=2)
delx <- 0.01; x <- seq(0,3, by=delx)
nx <- 20*log10(x)
m <- 0.75; col <- 4; lty <- 2
plot(c(-30,10), 10^c(-3,0), log="y", xaxs="i", yaxs="i",
xlab="RHO", ylab="cdfemu(RHO)", type="n")
for(mu in c(m/2,seq(m/2+0.01,m,by=0.01), m-0.001, m)) {
if(mu > 0.67) { col <- 2; lty <- 1 }
eta <- sqrt((m / (2*mu))^-1 - 1)
lines(nx, cdfemu(x, vec2par(c(eta, mu), type="emu")),
col=col, lwd=.75, lty=lty)
}
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.