24 #include "Vector/vector_dist.hpp"
28 int main(
int argc,
char* argv[])
52 openfpm_init(&argc,&argv);
58 size_t bc[2]={PERIODIC,PERIODIC};
108 auto it = vd.getDomainIterator();
116 vd.getPos(p)[0] = (float)rand() / RAND_MAX;
119 vd.getPos(p)[1] = (float)rand() / RAND_MAX;
122 vd.template getProp<scalar>(p) = vd.getPos(p)[0];
125 vd.template getProp<vector>(p)[0] = 1.0;
126 vd.template getProp<vector>(p)[1] = 2.0;
127 vd.template getProp<vector>(p)[2] = 3.0;
130 vd.template getProp<tensor>(p)[0][0] = 1.0;
131 vd.template getProp<tensor>(p)[0][1] = 2.0;
132 vd.template getProp<tensor>(p)[0][2] = 3.0;
133 vd.template getProp<tensor>(p)[1][0] = 4.0;
134 vd.template getProp<tensor>(p)[1][1] = 5.0;
135 vd.template getProp<tensor>(p)[1][2] = 6.0;
136 vd.template getProp<tensor>(p)[2][0] = 7.0;
137 vd.template getProp<tensor>(p)[2][1] = 8.0;
138 vd.template getProp<tensor>(p)[2][2] = 9.0;
196 vd.write(
"before_ghost_get");
199 vd.ghost_get<scalar,tensor>();
202 vd.write(
"after_ghost_get");
253 vd.ghost_get<vector>(KEEP_PROPERTIES);
256 vd.write(
"after_ghost_get_kp");
296 it = vd.getGhostIterator();
304 vd.getPos(p)[0] -= 1.0;
307 vd.getPos(p)[1] -= 1.0;
310 vd.template getProp<vector>(p)[0] = -1.0;
311 vd.template getProp<vector>(p)[1] = -2.0;
312 vd.template getProp<vector>(p)[2] = -3.0;
318 vd.ghost_get<vector>(KEEP_PROPERTIES | NO_POSITION);
321 vd.write(
"after_ghost_get_kp_no_pos");
323 vd.ghost_get<vector>(KEEP_PROPERTIES);
325 vd.write(
"after_ghost_get_kp_no_pos_restore");
365 vd.ghost_put<
add_,vector>();
368 vd.write(
"after_ghost_put");
This structure define the operation add to use with copy general.
This class represent an N-dimensional box.