IedgePEbasic.tri {pcds.ugraph} | R Documentation |
The indicator for the presence of an edge from a point to another for the underlying or reflexivity graph of Proportional Edge Proximity Catch Digraphs (PE-PCDs) - standard basic triangle case
Description
Returns I(
p1p2
is an edge
in the underlying or reflexivity graph of PE-PCDs )
for points p1
and p2
in the standard basic triangle.
More specifically, when the argument ugraph="underlying"
, it returns
the edge indicator for the PE-PCD underlying graph,
that is, returns 1 if p2
is
in N_{PE}(p1,r)
**or** p1
is in N_{PE}(p2,r)
,
returns 0 otherwise.
On the other hand,
when ugraph="reflexivity"
, it returns
the edge indicator for the PE-PCD reflexivity graph,
that is, returns 1 if p2
is
in N_{PE}(p1,r)
**and** p1
is in N_{PE}(p2,r)
,
returns 0 otherwise.
In both cases 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 basic triangle T_b=T((0,0),(1,0),(c_1,c_2))
where c_1
is
in [0,1/2]
, c_2>0
and (1-c_1)^2+c_2^2 \le 1
.
Vertex regions are based on the center, M=(m_1,m_2)
in Cartesian coordinates
or M=(\alpha,\beta,\gamma)
in barycentric coordinates
in the interior of the standard basic triangle T_b
or based on circumcenter of T_b
;
default is M=(1,1,1)
i.e., the center of mass of T_b
.
If p1
and p2
are distinct
and either of them are outside T_b
, it returns 0,
but if they are identical,
then it returns 1 regardless of their locations (i.e., it allows loops).
Any given triangle can be mapped to the standard basic triangle by a combination of rigid body motions (i.e., translation, rotation and reflection) and scaling, preserving uniformity of the points in the original triangle. Hence, standard basic triangle is useful for simulation studies under the uniformity hypothesis.
See also (Ceyhan (2005, 2010)).
Usage
IedgePEbasic.tri(
p1,
p2,
r,
c1,
c2,
M = c(1, 1, 1),
ugraph = c("underlying", "reflexivity")
)
Arguments
p1 |
A 2D point whose PE proximity region is constructed. |
p2 |
A 2D point. The function determines
whether there is an edge from |
r |
A positive real number
which serves as the expansion parameter
in PE proximity region; must be |
c1 , c2 |
Positive real numbers
which constitute the vertex of the standard basic triangle
adjacent to the shorter edges;
|
M |
A 2D point in Cartesian coordinates
or a 3D point in barycentric coordinates
which serves as a center in the interior of the standard basic triangle
or circumcenter of |
ugraph |
The type of the graph based on PE-PCDs,
|
Value
Returns 1 if there is an edge between points p1
and p2
in the underlying or reflexivity graph of PE-PCDs
in the standard basic triangle, and 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.
Ceyhan E (2016).
“Edge Density of New Graph Types Based on a Random Digraph Family.”
Statistical Methodology, 33, 31-54.
See Also
IedgePEtri
, IedgeASbasic.tri
,
IedgeCSbasic.tri
and IarcPEbasic.tri
Examples
#\donttest{
c1<-.4; c2<-.6
A<-c(0,0); B<-c(1,0); C<-c(c1,c2);
Tb<-rbind(A,B,C);
M<-as.numeric(pcds::runif.basic.tri(1,c1,c2)$g)
r<-1.5
set.seed(4)
P1<-as.numeric(pcds::runif.basic.tri(1,c1,c2)$g)
P2<-as.numeric(pcds::runif.basic.tri(1,c1,c2)$g)
IedgePEbasic.tri(P1,P2,r,c1,c2,M)
IedgePEbasic.tri(P1,P2,r,c1,c2,M,ugraph = "reflexivity")
P1<-c(.4,.2)
P2<-c(.5,.26)
IedgePEbasic.tri(P1,P2,r,c1,c2,M)
IedgePEbasic.tri(P1,P2,r,c1,c2,M,ugraph = "reflexivity")
#}