Neko 1.99.1
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
aabb_pe_finder::aabb_pe_finder_t Type Referenceabstract

Implements global interpolation for arbitrary points in the domain. More...

Inheritance diagram for aabb_pe_finder::aabb_pe_finder_t:
Collaboration diagram for aabb_pe_finder::aabb_pe_finder_t:

Public Member Functions

procedure, pass(thisinit (this, x, y, z, nelv, xh, comm, padding)
 Initialize the global interpolation object on a set of coordinates.
 
procedure, pass(thisfree (this)
 Destructor.
 
procedure, pass(thisfind (this, my_point, pe_candidates)
 Find pe candidates.
 
procedure, pass(thisfind_batch (this, points, n_points, points_at_pe, n_points_pe)
 
procedure(pe_finder_free), deferred, pass free (this)
 
procedure(pe_finder_find), deferred, pass find (this, my_point, pe_candidates)
 
procedure(pe_finder_find_batch), deferred, pass find_batch (this, points, n_points, points_at_pe, n_points_pe)
 

Public Attributes

real(kind=dp) padding
 Which communicator to find things on.
 
type(aabb_t), dimension(:), allocatable global_aabb
 Structure to find rank candidates.
 
type(aabb_tree_tglobal_aabb_tree
 
integer pe_box_num
 Number of boxes per rank.
 
integer glob_map_size
 Number of boxes in total.
 
integer pe_size
 
integer pe_rank
 
type(mpi_comm) comm
 

Detailed Description

Definition at line 62 of file aabb_pe_finder.f90.

Member Function/Subroutine Documentation

◆ find() [1/2]

procedure, pass(this) aabb_pe_finder::aabb_pe_finder_t::find ( class(aabb_pe_finder_t), intent(inout this,
type(point_t), intent(in my_point,
type(stack_i4_t), intent(inout pe_candidates 
)
Parameters
my_pointPoint to find candidates for.
pe_candidatesCandidates for the point.

Definition at line 76 of file aabb_pe_finder.f90.

◆ find() [2/2]

procedure(pe_finder_find), deferred, pass pe_finder::pe_finder_t::find ( class(pe_finder_t), intent(inout this,
type(point_t), intent(in my_point,
type(stack_i4_t), intent(inout pe_candidates 
)
pure virtualinherited

Definition at line 51 of file pe_finder.f90.

◆ find_batch() [1/2]

procedure, pass(this) aabb_pe_finder::aabb_pe_finder_t::find_batch ( class(aabb_pe_finder_t), intent(inout this,
real(kind=rp), dimension(3,n_points), intent(in points,
integer, intent(in n_points,
type(stack_i4_t), dimension(0:(this%pe_size-1)), intent(inout points_at_pe,
integer, dimension(0:(this%pe_size-1)), intent(inout n_points_pe 
)

Definition at line 77 of file aabb_pe_finder.f90.

◆ find_batch() [2/2]

procedure(pe_finder_find_batch), deferred, pass pe_finder::pe_finder_t::find_batch ( class(pe_finder_t), intent(inout this,
real(kind=rp), dimension(3,n_points), intent(in points,
integer, intent(in n_points,
type(stack_i4_t), dimension(0:(this%pe_size-1)), intent(inout points_at_pe,
integer, dimension(0:(this%pe_size-1)), intent(inout n_points_pe 
)
pure virtualinherited

Definition at line 52 of file pe_finder.f90.

◆ free() [1/2]

procedure, pass(this) aabb_pe_finder::aabb_pe_finder_t::free ( class(aabb_pe_finder_t), intent(inout this)

Definition at line 75 of file aabb_pe_finder.f90.

◆ free() [2/2]

procedure(pe_finder_free), deferred, pass pe_finder::pe_finder_t::free ( class(pe_finder_t), intent(inout this)
pure virtualinherited

Definition at line 50 of file pe_finder.f90.

◆ init()

procedure, pass(this) aabb_pe_finder::aabb_pe_finder_t::init ( class(aabb_pe_finder_t), intent(inout this,
real(kind=rp), dimension(:), intent(in), target  x,
real(kind=rp), dimension(:), intent(in), target  y,
real(kind=rp), dimension(:), intent(in), target  z,
integer, intent(in nelv,
type(space_t), intent(in), target  xh,
type(mpi_comm), intent(in), optional  comm,
real(kind=dp), intent(in padding 
)
Parameters
xx-coordinates.
yy-coordinates.
zz-coordinates.
gdimGeometric dimension.
nelvNumber of elements of the mesh in which to search for the points.
XhSpace on which to interpolate.
tolTolerance for Newton iterations.

Definition at line 74 of file aabb_pe_finder.f90.

Member Data Documentation

◆ comm

type(mpi_comm) pe_finder::pe_finder_t::comm
inherited

Definition at line 48 of file pe_finder.f90.

◆ glob_map_size

integer aabb_pe_finder::aabb_pe_finder_t::glob_map_size

Definition at line 71 of file aabb_pe_finder.f90.

◆ global_aabb

type(aabb_t), dimension(:), allocatable aabb_pe_finder::aabb_pe_finder_t::global_aabb

Definition at line 66 of file aabb_pe_finder.f90.

◆ global_aabb_tree

type(aabb_tree_t) aabb_pe_finder::aabb_pe_finder_t::global_aabb_tree

Definition at line 67 of file aabb_pe_finder.f90.

◆ padding

real(kind=dp) aabb_pe_finder::aabb_pe_finder_t::padding

Definition at line 64 of file aabb_pe_finder.f90.

◆ pe_box_num

integer aabb_pe_finder::aabb_pe_finder_t::pe_box_num

Definition at line 69 of file aabb_pe_finder.f90.

◆ pe_rank

integer pe_finder::pe_finder_t::pe_rank
inherited

Definition at line 47 of file pe_finder.f90.

◆ pe_size

integer pe_finder::pe_finder_t::pe_size
inherited

Definition at line 46 of file pe_finder.f90.


The documentation for this type was generated from the following file: