Neko
0.9.0
A portable framework for high-order spectral element flow simulations
|
Interpolation between two space::space_t. More...
Public Member Functions | |
procedure, pass(this) | init => interpolator_init |
Constructor. More... | |
procedure, pass(this) | free => interpolator_free |
Destructor. More... | |
procedure, pass(this) | map => interpolator_map |
Interpolate an array to one of Xh or Yh. More... | |
procedure, pass(this) | map_host => interpolator_map_host |
Interpolate an array to one of Xh or Yh on the host. More... | |
Public Attributes | |
type(space_t), pointer | xh |
First space. More... | |
type(space_t), pointer | yh |
Second space. More... | |
real(kind=rp), dimension(:,:), allocatable | xh_to_yh |
Interpolation weights from Xh to Yh. More... | |
real(kind=rp), dimension(:,:), allocatable | xh_to_yht |
real(kind=rp), dimension(:,:), allocatable | yh_to_xh |
Interpolation weights from Yh to Xh. More... | |
real(kind=rp), dimension(:,:), allocatable | yh_to_xht |
type(c_ptr) | xh_yh_d = C_NULL_PTR |
Device pointer for Xh_to_Yh. More... | |
type(c_ptr) | xh_yht_d = C_NULL_PTR |
Device pointer for Xh_to_YhT. More... | |
type(c_ptr) | yh_xh_d = C_NULL_PTR |
Device pointer for Yh_to_Xh. More... | |
type(c_ptr) | yh_xht_d = C_NULL_PTR |
Device pointer for Yh_to_XhT. More... | |
This type implements functionality to interpolate between a pair of spaces. Simply put, given some data of form (lx1, lx1, lx1, nelem) we can map it to (lx2, lx2, lx2, nelem), corresponding to a different polynomial order in each element.
Definition at line 51 of file interpolation.f90.
procedure, pass(this) interpolation::interpolator_t::free |
Definition at line 73 of file interpolation.f90.
procedure, pass(this) interpolation::interpolator_t::init |
Definition at line 71 of file interpolation.f90.
procedure, pass(this) interpolation::interpolator_t::map |
Definition at line 75 of file interpolation.f90.
procedure, pass(this) interpolation::interpolator_t::map_host |
Definition at line 77 of file interpolation.f90.
type(space_t), pointer interpolation::interpolator_t::xh |
Definition at line 53 of file interpolation.f90.
real(kind=rp), dimension(:,:), allocatable interpolation::interpolator_t::xh_to_yh |
Definition at line 57 of file interpolation.f90.
real(kind=rp), dimension(:,:), allocatable interpolation::interpolator_t::xh_to_yht |
Definition at line 57 of file interpolation.f90.
type(c_ptr) interpolation::interpolator_t::xh_yh_d = C_NULL_PTR |
Definition at line 61 of file interpolation.f90.
type(c_ptr) interpolation::interpolator_t::xh_yht_d = C_NULL_PTR |
Definition at line 63 of file interpolation.f90.
type(space_t), pointer interpolation::interpolator_t::yh |
Definition at line 55 of file interpolation.f90.
real(kind=rp), dimension(:,:), allocatable interpolation::interpolator_t::yh_to_xh |
Definition at line 59 of file interpolation.f90.
real(kind=rp), dimension(:,:), allocatable interpolation::interpolator_t::yh_to_xht |
Definition at line 59 of file interpolation.f90.
type(c_ptr) interpolation::interpolator_t::yh_xh_d = C_NULL_PTR |
Definition at line 65 of file interpolation.f90.
type(c_ptr) interpolation::interpolator_t::yh_xht_d = C_NULL_PTR |
Definition at line 67 of file interpolation.f90.