IedgeCSbasic.tri {pcds.ugraph} | R Documentation |
The indicator for the presence of an edge from a point to another for the underlying or reflexivity graphs of Central Similarity Proximity Catch Digraphs (CS-PCDs) - standard basic triangle case
Description
Returns I(
p1p2
is an edge
in the underlying or reflexivity graph of CS-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 CS-PCD underlying graph,
that is, returns 1 if p2
is
in N_{CS}(p1,t)
or p1
is in N_{CS}(p2,t)
,
returns 0 otherwise.
On the other hand,
when ugraph="reflexivity"
, it returns
the edge indicator for the CS-PCD reflexivity graph,
that is, returns 1 if p2
is
in N_{CS}(p1,t)
and p1
is in N_{CS}(p2,t)
,
returns 0 otherwise.
In both cases N_{CS}(x,t)
is the CS proximity region for point x
with expansion parameter t > 0
.
CS 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
.
Edge 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
;
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
IedgeCSbasic.tri(
p1,
p2,
t,
c1,
c2,
M = c(1, 1, 1),
ugraph = c("underlying", "reflexivity")
)
Arguments
p1 |
A 2D point whose CS proximity region is constructed. |
p2 |
A 2D point. The function determines
whether there is an edge from |
t |
A positive real number
which serves as the expansion parameter
in CS 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;
default is |
ugraph |
The type of the graph based on CS-PCDs,
|
Value
Returns 1 if there is an edge between points p1
and p2
in the underlying or reflexivity graph of CS-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
IedgeCStri
, IedgeASbasic.tri
,
IedgePEbasic.tri
and IarcCSbasic.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)
t<-1.5
P1<-as.numeric(pcds::runif.basic.tri(1,c1,c2)$g)
P2<-as.numeric(pcds::runif.basic.tri(1,c1,c2)$g)
IedgeCSbasic.tri(P1,P2,t,c1,c2,M)
IedgeCSbasic.tri(P1,P2,t,c1,c2,M,ugraph = "reflexivity")
P1<-c(.4,.2)
P2<-c(.5,.26)
IedgeCSbasic.tri(P1,P2,t=2,c1,c2,M)
IedgeCSbasic.tri(P1,P2,t=2,c1,c2,M,ugraph="ref")
#}