IarcPEstd.tetra {pcds} | R Documentation |
The indicator for the presence of an arc from a point to another for Proportional Edge Proximity Catch Digraphs (PE-PCDs) - standard regular tetrahedron case
Description
Returns I(
p2
is in N_{PE}(p1,r))
for points p1
and p2
, that is, returns 1 if p2
is in N_{PE}(p1,r)
,
returns 0 otherwise, where N_{PE}(x,r)
is the PE proximity region for point x
with expansion parameter r \ge 1
.
PE proximity region is defined with respect to the standard regular tetrahedron
T_h=T(v=1,v=2,v=3,v=4)=T((0,0,0),(1,0,0),(1/2,\sqrt{3}/2,0),(1/2,\sqrt{3}/6,\sqrt{6}/3))
and vertex regions
are based on the circumcenter (which is equivalent to the center of mass for standard regular tetrahedron)
of T_h
. rv
is the index of the vertex region p1
resides, with default=NULL
.
If p1
and p2
are distinct and either of them are outside T_h
, it returns 0,
but if they are identical, then it returns 1 regardless of their locations (i.e., it allows loops).
See also (Ceyhan (2005, 2010)).
Usage
IarcPEstd.tetra(p1, p2, r, rv = NULL)
Arguments
p1 |
A 3D point whose PE proximity region is constructed. |
p2 |
A 3D point. The function determines whether |
r |
A positive real number which serves as the expansion parameter in PE proximity region;
must be |
rv |
Index of the vertex region containing the point, either |
Value
I(
p2
is in N_{PE}(p1,r))
for points p1
and p2
, that is, returns 1 if p2
is in N_{PE}(p1,r)
,
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
IarcPEtetra
, IarcPEtri
and IarcPEint
Examples
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<-3 #try also n<-20
Xp<-runif.std.tetra(n)$g
r<-1.5
IarcPEstd.tetra(Xp[1,],Xp[3,],r)
IarcPEstd.tetra(c(.4,.4,.4),c(.5,.5,.5),r)
#or try
RV<-rel.vert.tetraCC(Xp[1,],tetra)$rv
IarcPEstd.tetra(Xp[1,],Xp[3,],r,rv=RV)
P1<-c(.1,.1,.1)
P2<-c(.5,.5,.5)
IarcPEstd.tetra(P1,P2,r)