| 
    Neko 1.99.1
    
   A portable framework for high-order spectral element flow simulations 
   | 
 
Implements global interpolation for arbitrary points in the domain. More...


Public Member Functions | |
| procedure, pass(this) | init (this, x, y, z, nelv, xh, comm, n_boxes, padding) | 
| Initialize the global interpolation object on a set of coordinates.   | |
| procedure, pass(this) | free (this) | 
| Destructor.   | |
| procedure, pass(this) | find (this, my_point, pe_candidates) | 
| procedure, pass(this) | find_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.   | |
| integer(kind=i8) | glob_n_boxes | 
| global number of boxes   | |
| integer(kind=i8) | n_boxes | 
| integer | n_boxes_per_pe | 
| integer | nelv | 
| integer | offset_el | 
| real(kind=rp) | max_x_global | 
| real(kind=rp) | max_y_global | 
| real(kind=rp) | max_z_global | 
| real(kind=rp) | min_x_global | 
| real(kind=rp) | min_y_global | 
| real(kind=rp) | min_z_global | 
| real(kind=xp) | res_x | 
| real(kind=xp) | res_y | 
| real(kind=xp) | res_z | 
| type(i8_mpi_t), dimension(:), allocatable | recv_buf | 
| type(i8_mpi_t), dimension(:), allocatable | send_buf | 
| type(stack_i4_t), dimension(:), allocatable | pe_map | 
| integer | pe_size | 
| integer | pe_rank | 
| type(mpi_comm) | comm | 
Definition at line 74 of file cartesian_pe_finder.f90.
| procedure, pass(this) cartesian_pe_finder::cartesian_pe_finder_t::find | ( | class(cartesian_pe_finder_t), intent(inout) | this, | 
| type(point_t), intent(in) | my_point, | ||
| type(stack_i4_t), intent(inout) | pe_candidates | ||
| ) | 
Definition at line 97 of file cartesian_pe_finder.f90.
      
  | 
  pure virtualinherited | 
Definition at line 51 of file pe_finder.f90.
| procedure, pass(this) cartesian_pe_finder::cartesian_pe_finder_t::find_batch | ( | class(cartesian_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 98 of file cartesian_pe_finder.f90.
      
  | 
  pure virtualinherited | 
Definition at line 52 of file pe_finder.f90.
| procedure, pass(this) cartesian_pe_finder::cartesian_pe_finder_t::free | ( | class(cartesian_pe_finder_t), intent(inout) | this | ) | 
Definition at line 96 of file cartesian_pe_finder.f90.
      
  | 
  pure virtualinherited | 
Definition at line 50 of file pe_finder.f90.
| procedure, pass(this) cartesian_pe_finder::cartesian_pe_finder_t::init | ( | class(cartesian_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, | ||
| integer, intent(in) | n_boxes, | ||
| real(kind=dp), intent(in) | padding | ||
| ) | 
| x | x-coordinates. | 
| y | y-coordinates. | 
| z | z-coordinates. | 
| gdim | Geometric dimension. | 
| nelv | Number of elements of the mesh in which to search for the points. | 
| Xh | Space on which to interpolate. | 
| tol | Tolerance for Newton iterations. | 
Definition at line 95 of file cartesian_pe_finder.f90.
      
  | 
  inherited | 
Definition at line 48 of file pe_finder.f90.
Definition at line 78 of file cartesian_pe_finder.f90.
Definition at line 84 of file cartesian_pe_finder.f90.
Definition at line 84 of file cartesian_pe_finder.f90.
Definition at line 84 of file cartesian_pe_finder.f90.
Definition at line 85 of file cartesian_pe_finder.f90.
Definition at line 85 of file cartesian_pe_finder.f90.
Definition at line 85 of file cartesian_pe_finder.f90.
Definition at line 79 of file cartesian_pe_finder.f90.
| integer cartesian_pe_finder::cartesian_pe_finder_t::n_boxes_per_pe | 
Definition at line 81 of file cartesian_pe_finder.f90.
| integer cartesian_pe_finder::cartesian_pe_finder_t::nelv | 
Definition at line 82 of file cartesian_pe_finder.f90.
| integer cartesian_pe_finder::cartesian_pe_finder_t::offset_el | 
Definition at line 83 of file cartesian_pe_finder.f90.
Definition at line 76 of file cartesian_pe_finder.f90.
| type(stack_i4_t), dimension(:), allocatable cartesian_pe_finder::cartesian_pe_finder_t::pe_map | 
Definition at line 92 of file cartesian_pe_finder.f90.
      
  | 
  inherited | 
Definition at line 47 of file pe_finder.f90.
      
  | 
  inherited | 
Definition at line 46 of file pe_finder.f90.
| type(i8_mpi_t), dimension(:), allocatable cartesian_pe_finder::cartesian_pe_finder_t::recv_buf | 
Definition at line 90 of file cartesian_pe_finder.f90.
Definition at line 88 of file cartesian_pe_finder.f90.
Definition at line 88 of file cartesian_pe_finder.f90.
Definition at line 88 of file cartesian_pe_finder.f90.
| type(i8_mpi_t), dimension(:), allocatable cartesian_pe_finder::cartesian_pe_finder_t::send_buf | 
Definition at line 91 of file cartesian_pe_finder.f90.