calculate the interpolation for one point
More...
template<typename vector, typename kernel>
struct inte_calc_impl< vector, kernel >
calculate the interpolation for one point
- Template Parameters
-
vector | of particles |
kernel | type |
Definition at line 381 of file interpolation.hpp.
#include <interpolation.hpp>
|
typedef vector::stype | arr_type |
| Type of the calculations.
|
|
|
template<unsigned int prp_g, unsigned int prp_v, unsigned int m2p_or_p2m, unsigned int np_a_int, typename grid > |
static void | inte_calc (const vect_dist_key_dx &key_p, vector &vd, const Box< vector::dims, typename vector::stype > &domain, int(&ip)[vector::dims][kernel::np], grid &gd, const typename vector::stype(&dx)[vector::dims], typename vector::stype(&xp)[vector::dims], typename vector::stype(&a_int)[np_a_int], typename vector::stype(&a)[vector::dims][kernel::np], typename vector::stype(&x)[vector::dims][kernel::np], size_t(&sz)[vector::dims], const CellList< vector::dims, typename vector::stype, Mem_fast<>, shift< vector::dims, typename vector::stype >> &geo_cell, openfpm::vector< agg_arr< openfpm::math::pow(kernel::np, vector::dims)>> &offsets) |
| M2P or P2M for one particle. More...
|
|
template<typename vector, typename kernel>
template<unsigned int prp_g, unsigned int prp_v, unsigned int m2p_or_p2m, unsigned int np_a_int, typename grid >
static void inte_calc_impl< vector, kernel >::inte_calc |
( |
const vect_dist_key_dx & |
key_p, |
|
|
vector & |
vd, |
|
|
const Box< vector::dims, typename vector::stype > & |
domain, |
|
|
int(&) |
ip[vector::dims][kernel::np], |
|
|
grid & |
gd, |
|
|
const typename vector::stype(&) |
dx[vector::dims], |
|
|
typename vector::stype(&) |
xp[vector::dims], |
|
|
typename vector::stype(&) |
a_int[np_a_int], |
|
|
typename vector::stype(&) |
a[vector::dims][kernel::np], |
|
|
typename vector::stype(&) |
x[vector::dims][kernel::np], |
|
|
size_t(&) |
sz[vector::dims], |
|
|
const CellList< vector::dims, typename vector::stype, Mem_fast<>, shift< vector::dims, typename vector::stype >> & |
geo_cell, |
|
|
openfpm::vector< agg_arr< openfpm::math::pow(kernel::np, vector::dims)>> & |
offsets |
|
) |
| |
|
inlinestatic |
M2P or P2M for one particle.
- Template Parameters
-
prp_g | property to interpolate from(M2P) or to(P2M) for grid |
prp_v | property to interpolate to(M2P) or from(P2M) for vector |
m2p_or_p2m | mesh to particle or mesh to particle interpolation |
- Parameters
-
it | iterator used to retrieve the particle p for interpolation |
vd | vector of particles |
domain | simulation domain |
ip | index of the grid on each direction (1D) used for interpolation |
gd | interpolation grid |
dx | spacing on each direction |
xp | Point that store the position of xp |
a_int | coefficients on the stencil points |
a | coefficients of the kernel for each direction, consider that for 3 dimensions the kernel is the multiplication the 1D kernel on each direction. The "a" array store the calculated coefficient of the 1D kernel on each direction |
x | position of |
sz | grid size |
geo_cell | cell list to convert particle position into sub-domain id |
offsets | array where are stored the linearized offset of the kernel stencil for each local grid (sub-domain) |
Definition at line 412 of file interpolation.hpp.
The documentation for this struct was generated from the following file: