Learn R Programming

pcds (version 0.1.2)

NumArcsPEMT: Number of arcs of Proportional Edge Proximity Catch Digraphs (PE-PCDs) - multiple triangle case

Description

Returns the number of arcs of Proportional Edge Proximity Catch Digraph (PE-PCD) whose vertices are the data points in Xp in the multiple triangle case.

PE proximity regions are defined with respect to the Delaunay triangles based on Yp points with expansion parameter \(r \ge 1\) and vertex regions in each triangle is based on the center \(M=(\alpha,\beta,\gamma)\) in barycentric coordinates in the interior of each Delaunay triangle or based on circumcenter of each Delaunay triangle (default for \(M=(1,1,1)\) which is the center of mass of the triangle). Each Delaunay triangle is first converted to an (unscaled) basic triangle so that M will be the same type of center for each Delaunay triangle (this conversion is not necessary when M is \(CM\)).

Convex hull of Yp is partitioned by the Delaunay triangles based on Yp points (i.e., multiple triangles are the set of these Delaunay triangles whose union constitutes the convex hull of Yp points). For the number of arcs, loops are not allowed so arcs are only possible for points inside the convex hull of Yp points.

See (ceyhan:Phd-thesis,ceyhan:arc-density-PE;textualpcds) for more on PE-PCDs. Also see (okabe:2000,ceyhan:comp-geo-2010,sinclair:2016;textualpcds) for more on Delaunay triangulation and the corresponding algorithm.

Usage

NumArcsPEMT(Xp, Yp, r, M = c(1, 1, 1))

Arguments

Xp

A set of 2D points which constitute the vertices of the PE-PCD.

Yp

A set of 2D points which constitute the vertices of the Delaunay triangles.

r

A positive real number which serves as the expansion parameter in PE proximity region; must be \(\ge 1\).

M

A 3D point in barycentric coordinates which serves as a center in the interior of each Delaunay triangle or circumcenter of each Delaunay triangle (for this argument should be set as M="CC"), default for \(M=(1,1,1)\) which is the center of mass of each triangle.

Value

A list with the elements

num.arcs

Total number of arcs in all triangles

num.in.conhull

Number of Xp points in the convex hull of Yp points

weight.vec

The vector of the areas of Delaunay triangles based on Yp points

References

See Also

NumArcsPEtri, NumArcsPETe, NumArcsCSMT, and NumArcsASMT

Examples

Run this code
# NOT RUN {
#nx is number of X points (target) and ny is number of Y points (nontarget)
nx<-20; ny<-4;  #try also nx<-40; ny<-10 or nx<-1000; ny<-10;

set.seed(1)
Xp<-cbind(runif(nx),runif(nx))
Yp<-cbind(runif(ny),runif(ny))

oldpar <- par(no.readonly = TRUE)
plotDeltri(Xp,Yp,xlab="",ylab="")
par(oldpar)

M<-c(1,1,1)  #try also M<-c(1,2,3)

NumArcsPEMT(Xp,Yp,r=1.25,M)
NumArcsPEMT(Xp,Yp,r=1.5,M)
NumArcsPEMT(Xp,Yp,r=2,M)

NumArcsPEMT(c(.4,.2),Yp,r=1.25)

r<-2
NumArcsPEMT(Xp,Yp,r)
NumArcsPEMT(Xp,Yp[1:3,],r)

NumArcsPEMT(Xp,rbind(Yp,Yp),r)

dat.fr<-data.frame(a=Xp)
NumArcsPEMT(dat.fr,Yp,r)

dat.fr<-data.frame(a=Yp)
NumArcsPEMT(Xp,dat.fr,r)

# }

Run the code above in your browser using DataLab