Idom.num3PEstd.tetra {pcds} | R Documentation |
The indicator for three 3D points constituting a dominating set for Proportional Edge Proximity Catch Digraphs (PE-PCDs) - standard regular tetrahedron case
Description
Returns p1,p2,pt3
} is a dominating set of the PE-PCD where the vertices of the PE-PCD are the 3D data set
Xp
in the standard regular
tetrahedron , that is,
returns 1 if {
p1,p2,pt3
} is a dominating set of PE-PCD, returns 0 otherwise.
Point, p1
, is in the region of vertex rv1
(default is NULL
), point, p2
, is in the region of vertex rv2
(default is NULL
); point, pt3
), is in the region of vertex rv3
) (default is NULL
); vertices (and hence rv1, rv2
and
rv3
) are labeled as 1,2,3,4
in the order they are stacked row-wise in .
PE proximity region is constructed with
respect to the tetrahedron with expansion parameter
and vertex regions are based on center of mass
(equivalent to circumcenter in this case).
ch.data.pnts
is for checking whether points p1
, p2
and pt3
are all data points in Xp
or not (default is FALSE
),
so by default this function checks whether the points p1
, p2
and pt3
would constitute a dominating set
if they actually were all in the data set.
See also (Ceyhan (2005, 2010)).
Usage
Idom.num3PEstd.tetra(
p1,
p2,
pt3,
Xp,
r,
rv1 = NULL,
rv2 = NULL,
rv3 = NULL,
ch.data.pnts = FALSE
)
Arguments
p1 , p2 , pt3 |
Three 3D points to be tested for constituting a dominating set of the PE-PCD. |
Xp |
A set of 3D points which constitutes the vertices of the PE-PCD. |
r |
A positive real number which serves as the expansion parameter in PE proximity region;
must be |
rv1 , rv2 , rv3 |
The indices of the vertices whose regions contains |
ch.data.pnts |
A logical argument for checking whether points |
Value
p1,p2,pt3
} is a dominating set of the PE-PCD where the vertices of the PE-PCD are the 3D data set
Xp
),
that is, returns 1 if {p1,p2,pt3
} is a dominating set of PE-PCD, returns 0 otherwise
Author(s)
Elvan Ceyhan
References
Ceyhan E (2005).
An Investigation of Proximity Catch Digraphs in Delaunay Tessellations, also available as technical monograph titled Proximity Catch Digraphs: Auxiliary Tools, Properties, and Applications.
Ph.D. thesis, The Johns Hopkins University, Baltimore, MD, 21218.
Ceyhan E (2010).
“Extension of One-Dimensional Proximity Regions to Higher Dimensions.”
Computational Geometry: Theory and Applications, 43(9), 721-748.
See Also
Examples
set.seed(123)
A<-c(0,0,0); B<-c(1,0,0); C<-c(1/2,sqrt(3)/2,0); D<-c(1/2,sqrt(3)/6,sqrt(6)/3)
tetra<-rbind(A,B,C,D)
n<-5 #try 20, 40, 100 (larger n may take a long time)
Xp<-runif.std.tetra(n)$g #try also Xp<-cbind(runif(n),runif(n),runif(n))
r<-1.25
Idom.num3PEstd.tetra(Xp[1,],Xp[2,],Xp[3,],Xp,r)
ind.gam3<-vector()
for (i in 1:(n-2))
for (j in (i+1):(n-1))
for (k in (j+1):n)
{if (Idom.num3PEstd.tetra(Xp[i,],Xp[j,],Xp[k,],Xp,r)==1)
ind.gam3<-rbind(ind.gam3,c(i,j,k))}
ind.gam3
#or try
rv1<-rel.vert.tetraCC(Xp[1,],tetra)$rv; rv2<-rel.vert.tetraCC(Xp[2,],tetra)$rv;
rv3<-rel.vert.tetraCC(Xp[3,],tetra)$rv
Idom.num3PEstd.tetra(Xp[1,],Xp[2,],Xp[3,],Xp,r,rv1,rv2,rv3)
#or try
rv1<-rel.vert.tetraCC(Xp[1,],tetra)$rv;
Idom.num3PEstd.tetra(Xp[1,],Xp[2,],Xp[3,],Xp,r,rv1)
#or try
rv2<-rel.vert.tetraCC(Xp[2,],tetra)$rv
Idom.num3PEstd.tetra(Xp[1,],Xp[2,],Xp[3,],Xp,r,rv2=rv2)
P1<-c(.1,.1,.1)
P2<-c(.3,.3,.3)
P3<-c(.4,.1,.2)
Idom.num3PEstd.tetra(P1,P2,P3,Xp,r)
Idom.num3PEstd.tetra(Xp[1,],c(1,1,1),Xp[3,],Xp,r,ch.data.pnts = FALSE)
#gives an error message if ch.data.pnts = TRUE since not all points are data points in Xp