Block-Structured AMR Software Framework
amrex::tri_geom_ops Namespace Reference

Functions

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real Distance2 (const Real P1[3], const Real P2[3])
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real DotProd (const Real v1[3], const Real v2[3])
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real side_op (const Real L1[6], const Real L2[6])
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void getvec (const Real P1[3], const Real P2[3], Real v[3])
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void getunitvec (const Real v[3], Real vu[3])
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void CrossProd (const Real v1[3], const Real v2[3], Real v[3])
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void get_plucker_coords (const Real v1[3], const Real v2[3], Real L[6])
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void side_op3 (Real v1[3], Real v2[3], Real t1[3], Real t2[3], Real t3[3], Real &S1, Real &S2, Real &S3)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void tri_n (Real P1[3], Real P2[3], Real P3[3], Real testp[3], Real n[3])
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real triangle_area (Real P1[3], Real P2[3], Real P3[3])
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE bool find_intersection_point (const Real v1[3], const Real v2[3], Real t1[3], Real t2[3], Real t3[3], Real ip[3], int bisect_iters=20, Real tol=1e-6)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int lineseg_tri_intersect (Real v1[3], Real v2[3], Real t1[3], Real t2[3], Real t3[3])
 

Function Documentation

◆ CrossProd()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::tri_geom_ops::CrossProd ( const Real  v1[3],
const Real  v2[3],
Real  v[3] 
)

◆ Distance2()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::tri_geom_ops::Distance2 ( const Real  P1[3],
const Real  P2[3] 
)

◆ DotProd()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::tri_geom_ops::DotProd ( const Real  v1[3],
const Real  v2[3] 
)

◆ find_intersection_point()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE bool amrex::tri_geom_ops::find_intersection_point ( const Real  v1[3],
const Real  v2[3],
Real  t1[3],
Real  t2[3],
Real  t3[3],
Real  ip[3],
int  bisect_iters = 20,
Real  tol = 1e-6 
)

◆ get_plucker_coords()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::tri_geom_ops::get_plucker_coords ( const Real  v1[3],
const Real  v2[3],
Real  L[6] 
)

◆ getunitvec()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::tri_geom_ops::getunitvec ( const Real  v[3],
Real  vu[3] 
)

◆ getvec()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::tri_geom_ops::getvec ( const Real  P1[3],
const Real  P2[3],
Real  v[3] 
)

◆ lineseg_tri_intersect()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::tri_geom_ops::lineseg_tri_intersect ( Real  v1[3],
Real  v2[3],
Real  t1[3],
Real  t2[3],
Real  t3[3] 
)

◆ side_op()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::tri_geom_ops::side_op ( const Real  L1[6],
const Real  L2[6] 
)

◆ side_op3()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::tri_geom_ops::side_op3 ( Real  v1[3],
Real  v2[3],
Real  t1[3],
Real  t2[3],
Real  t3[3],
Real &  S1,
Real &  S2,
Real &  S3 
)

◆ tri_n()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::tri_geom_ops::tri_n ( Real  P1[3],
Real  P2[3],
Real  P3[3],
Real  testp[3],
Real  n[3] 
)

◆ triangle_area()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::tri_geom_ops::triangle_area ( Real  P1[3],
Real  P2[3],
Real  P3[3] 
)