Learn R Programming

pcds.ugraph (version 0.1.1)

IedgePEtri: 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) - one triangle case

Description

Returns \(I(\)p1p2 is an edge in the underlying or reflexivity graph of PE-PCDs \()\) for points p1 and p2 in a given 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 PE proximity region is constructed with respect to the triangle tri and 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 tri or based on the circumcenter of tri; default is \(M=(1,1,1)\), i.e., the center of mass of tri.

If p1 and p2 are distinct and either of them are outside tri, it returns 0, but if they are identical, then it returns 1 regardless of their locations (i.e., it allows loops).

See also (ceyhan:Phd-thesis,ceyhan:stamet2016;textualpcds.ugraph).

Usage

IedgePEtri(
  p1,
  p2,
  tri,
  r,
  M = c(1, 1, 1),
  ugraph = c("underlying", "reflexivity")
)

Value

Returns 1 if there is an edge between points p1 and p2

in the underlying or reflexivity graph of PE-PCDs in a given triangle tri, and 0 otherwise.

Arguments

p1

A 2D point whose PE proximity region is constructed.

p2

A 2D point. The function determines whether there is an edge from p1 to p2 or not in the underlying or reflexivity graph of PE-PCDs.

tri

A \(3 \times 2\) matrix with each row representing a vertex of the triangle.

r

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

M

A 2D point in Cartesian coordinates or a 3D point in barycentric coordinates which serves as a center in the interior of the triangle tri or the circumcenter of tri which may be entered as "CC" as well; default is \(M=(1,1,1)\), i.e., the center of mass of tri.

ugraph

The type of the graph based on PE-PCDs, "underlying" is for the underlying graph, and "reflexivity" is for the reflexivity graph (default is "underlying").

Author

Elvan Ceyhan

References

See Also

IedgePEbasic.tri, IedgeAStri, IedgeCStri and IarcPEtri

Examples

Run this code
#\donttest{
A<-c(1,1); B<-c(2,0); C<-c(1.5,2);
Tr<-rbind(A,B,C);
M<-as.numeric(pcds::runif.tri(1,Tr)$g)

r<-1.5
n<-3
set.seed(1)
Xp<-pcds::runif.tri(n,Tr)$g

IedgePEtri(Xp[1,],Xp[2,],Tr,r,M)
IedgePEtri(Xp[1,],Xp[2,],Tr,r,M,ugraph = "reflexivity")

P1<-as.numeric(pcds::runif.tri(1,Tr)$g)
P2<-as.numeric(pcds::runif.tri(1,Tr)$g)
IedgePEtri(P1,P2,Tr,r,M)
IedgePEtri(P1,P2,Tr,r,M,ugraph="r")
#}

Run the code above in your browser using DataLab