SABER
tools_stripack Module Reference

STRIPACK routines. More...

Functions/Subroutines

subroutine, public addnod (mpl, nst, k, x, y, z, list, lptr, lend, lnew, ier)
 
subroutine bdyadd (kk, i1, i2, list, lptr, lend, lnew)
 
subroutine, public bnodes (n, list, lptr, lend, nodes, nb, na, nt)
 
subroutine covsph (kk, n0, list, lptr, lend, lnew)
 
subroutine det (x1, y1, z1, x2, y2, z2, x0, y0, z0, output)
 
subroutine insert (k, lp, list, lptr, lnew)
 
logical function, public inside (p, lv, xv, yv, zv, nv, listv, ier)
 
subroutine intadd (kk, i1, i2, i3, list, lptr, lend, lnew)
 
subroutine intrsc (p1, p2, cn, p, ier)
 
subroutine jrand (n, ix, iy, iz, output)
 
subroutine left (x1, y1, z1, x2, y2, z2, x0, y0, z0, output)
 
subroutine lstptr (lpl, nb, list, lptr, output)
 
subroutine swap (in1, in2, io1, io2, list, lptr, lend, lp21)
 
subroutine swptst (n1, n2, n3, n4, x, y, z, output)
 
subroutine, public trfind (nst, p, n, x, y, z, list, lptr, lend, b1, b2, b3, i1, i2, i3)
 
subroutine, public trlist (n, list, lptr, lend, nrow, nt, ltri, ier)
 
subroutine, public trmesh (mpl, n, x, y, z, list, lptr, lend, lnew, near, next, dist, ier)
 

Detailed Description

STRIPACK routines.

Function/Subroutine Documentation

◆ addnod()

subroutine, public tools_stripack::addnod ( type(mpl_type), intent(inout)  mpl,
integer  nst,
integer  k,
real ( kind_real ), dimension(k)  x,
real ( kind_real ), dimension(k)  y,
real ( kind_real ), dimension(k)  z,
integer, dimension(*)  list,
integer, dimension(*)  lptr,
integer, dimension(k)  lend,
integer  lnew,
integer  ier 
)
Parameters
[in,out]mplAdd a node to a triangulation
[in,out]mplMPI data

Definition at line 24 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ bdyadd()

subroutine tools_stripack::bdyadd ( integer  kk,
integer  i1,
integer  i2,
integer, dimension(*)  list,
integer, dimension(*)  lptr,
integer, dimension(*)  lend,
integer  lnew 
)
private
Parameters
i1Add a boundary node to a triangulation

Definition at line 278 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ bnodes()

subroutine, public tools_stripack::bnodes ( integer  n,
integer, dimension(6*(n-2))  list,
integer, dimension(6*(n-2))  lptr,
integer, dimension(n)  lend,
integer, dimension(*)  nodes,
integer  nb,
integer  na,
integer  nt 
)
Parameters
nReturn the boundary nodes of a triangulation

Definition at line 420 of file tools_stripack.F90.

Here is the caller graph for this function:

◆ covsph()

subroutine tools_stripack::covsph ( integer  kk,
integer  n0,
integer, dimension(*)  list,
integer, dimension(*)  lptr,
integer, dimension(*)  lend,
integer  lnew 
)
private

Connect an exterior node to boundary nodes, covering the sphere

Definition at line 556 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ det()

subroutine tools_stripack::det ( real ( kind_real )  x1,
real ( kind_real )  y1,
real ( kind_real )  z1,
real ( kind_real )  x2,
real ( kind_real )  y2,
real ( kind_real )  z2,
real ( kind_real )  x0,
real ( kind_real )  y0,
real ( kind_real )  z0,
real ( kind_real )  output 
)
private
Parameters
x1Compute 3D determinant

Definition at line 669 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ insert()

subroutine tools_stripack::insert ( integer  k,
integer  lp,
integer, dimension(*)  list,
integer, dimension(*)  lptr,
integer  lnew 
)
private
Parameters
kInsert K as a neighbor of N1

Definition at line 704 of file tools_stripack.F90.

Here is the caller graph for this function:

◆ inside()

logical function, public tools_stripack::inside ( real ( kind_real ), dimension(3)  p,
integer  lv,
real ( kind_real ), dimension(lv)  xv,
real ( kind_real ), dimension(lv)  yv,
real ( kind_real ), dimension(lv)  zv,
integer  nv,
integer, dimension(nv)  listv,
integer  ier 
)
Parameters
lvDetermine if a point is inside a polygonal region

Definition at line 763 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ intadd()

subroutine tools_stripack::intadd ( integer  kk,
integer  i1,
integer  i2,
integer  i3,
integer, dimension(*)  list,
integer, dimension(*)  lptr,
integer, dimension(*)  lend,
integer  lnew 
)
private
Parameters
i1Add an interior node to a triangulation

Definition at line 1126 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ intrsc()

subroutine tools_stripack::intrsc ( real ( kind_real ), dimension(3)  p1,
real ( kind_real ), dimension(3)  p2,
real ( kind_real ), dimension(3)  cn,
real ( kind_real ), dimension(3)  p,
integer  ier 
)
private
Parameters
cnFind the intersection of two great circles

Definition at line 1228 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ jrand()

subroutine tools_stripack::jrand ( integer  n,
integer  ix,
integer  iy,
integer  iz,
integer  output 
)
private
Parameters
ixReturn a random integer between 1 and N

Definition at line 1336 of file tools_stripack.F90.

Here is the caller graph for this function:

◆ left()

subroutine tools_stripack::left ( real ( kind_real )  x1,
real ( kind_real )  y1,
real ( kind_real )  z1,
real ( kind_real )  x2,
real ( kind_real )  y2,
real ( kind_real )  z2,
real ( kind_real )  x0,
real ( kind_real )  y0,
real ( kind_real )  z0,
logical  output 
)
private
Parameters
outputDetermin whether a node is to the left of a plane through the origin

Definition at line 1402 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lstptr()

subroutine tools_stripack::lstptr ( integer  lpl,
integer  nb,
integer, dimension(*)  list,
integer, dimension(*)  lptr,
integer  output 
)
private
Parameters
listReturn the index of NB in the adjacency list

Definition at line 1465 of file tools_stripack.F90.

Here is the caller graph for this function:

◆ swap()

subroutine tools_stripack::swap ( integer  in1,
integer  in2,
integer  io1,
integer  io2,
integer, dimension(*)  list,
integer, dimension(*)  lptr,
integer, dimension(*)  lend,
integer  lp21 
)
private
Parameters
in1Replace the diagonal arc of a quadrilateral with the other diagonal

Definition at line 1546 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ swptst()

subroutine tools_stripack::swptst ( integer  n1,
integer  n2,
integer  n3,
integer  n4,
real ( kind_real ), dimension(*)  x,
real ( kind_real ), dimension(*)  y,
real ( kind_real ), dimension(*)  z,
logical  output 
)
private

Decide whether to replace a diagonal arc by the other

Definition at line 1663 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ trfind()

subroutine, public tools_stripack::trfind ( integer  nst,
real ( kind_real ), dimension(3)  p,
integer  n,
real ( kind_real ), dimension(n)  x,
real ( kind_real ), dimension(n)  y,
real ( kind_real ), dimension(n)  z,
integer, dimension(6*(n-2))  list,
integer, dimension(6*(n-2))  lptr,
integer, dimension(n)  lend,
real ( kind_real )  b1,
real ( kind_real )  b2,
real ( kind_real )  b3,
integer  i1,
integer  i2,
integer  i3 
)
Parameters
nLocate a point relative to a triangulation

Definition at line 1763 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ trlist()

subroutine, public tools_stripack::trlist ( integer  n,
integer, dimension(6*(n-2))  list,
integer, dimension(6*(n-2))  lptr,
integer, dimension(n)  lend,
integer  nrow,
integer  nt,
integer, dimension(nrow,*)  ltri,
integer  ier 
)
Parameters
nConvert a triangulation data structure to a triangle list

Definition at line 2278 of file tools_stripack.F90.

Here is the caller graph for this function:

◆ trmesh()

subroutine, public tools_stripack::trmesh ( type(mpl_type), intent(inout)  mpl,
integer  n,
real ( kind_real ), dimension(n)  x,
real ( kind_real ), dimension(n)  y,
real ( kind_real ), dimension(n)  z,
integer, dimension(6*(n-2))  list,
integer, dimension(6*(n-2))  lptr,
integer, dimension(n)  lend,
integer  lnew,
integer, dimension(n)  near,
integer, dimension(n)  next,
real ( kind_real ), dimension(n)  dist,
integer  ier 
)
Parameters
[in,out]mplCreate a Delaunay triangulation on the unit sphere
[in,out]mplMPI data

Definition at line 2578 of file tools_stripack.F90.

Here is the call graph for this function:
Here is the caller graph for this function: