Commit c4743c03 authored by Pietro Incardona's avatar Pietro Incardona
Browse files

lid driven cavity 3d

parent 494ac1a4
openfpm_data @ 9804ca9a
Subproject commit dc5e8ac1ad2768f591b8fe79eda98720e979acdc
Subproject commit 9804ca9a401bebee77567a135448faac396f32b1
openfpm_devices @ 52aa2cff
Subproject commit 919638297d5c92749400c69c4a271a2d742cf594
Subproject commit 52aa2cffd29ad7e4fc306e4f58fd2be2e596fd81
openfpm_io @ ffeaddc8
Subproject commit 7988298e26138d0470851e9053e6640511793363
Subproject commit ffeaddc8646f25c2fcd664af3596a8d9b81fdd6a
openfpm_numerics @ 90e8aaa8
Subproject commit 7be6531420de26986cd584e3bec0f5ee51afdef1
Subproject commit 90e8aaa87e5626d888ff78918e3161ddffd5a2a0
openfpm_vcluster @ 24fb89ec
Subproject commit 2840e1b55c52b5006bd54250f7a87ef4b5e6eb9e
Subproject commit 24fb89ec03a51ac994152ad39a28bf3bb780c129
......@@ -196,6 +196,11 @@ public:
//! Construct cartesian graph
static Graph construct(const size_t ( & sz)[dim], Box<dim,T> dom)
{
size_t bc[dim];
for (size_t i = 0 ; i < dim ; i++)
bc[i] = NON_PERIODIC;
// Calculate the size of the hyper-cubes on each dimension
T szd[dim];
......@@ -272,7 +277,7 @@ public:
// Calculate the start point id
size_t start_v = g.LinId(key);
size_t end_v = g.template LinId<CheckExistence>(key,c[j].getComb());
size_t end_v = g.template LinId<CheckExistence>(key,c[j].getComb(),bc);
// Add an edge and set the the edge property to the size of the face (communication weight)
gp.template addEdge<CheckExistence>(start_v,end_v);
......
......@@ -667,6 +667,9 @@ public:
grid_dist_id(const size_t (& g_sz)[dim],const Box<dim,St> & domain, const Ghost<dim,St> & g)
:domain(domain),ghost(g),dec(*global_v_cluster),v_cl(*global_v_cluster),ginfo(g_sz),ginfo_v(g_sz)
{
#ifdef SE_CLASS2
check_new(this,8,GRID_DIST_EVENT,4);
#endif
// Increment the reference counter of the decomposition
this->dec.incRef();
......
......@@ -48,9 +48,6 @@ class grid_dist_iterator_sub
//! stop key
grid_key_dx<dim> stop;
//! margin of the grid iterator
size_t m;
/*! \brief compute the subset where it has to iterate
*
* \param g_c Actual grid
......@@ -119,8 +116,9 @@ class grid_dist_iterator_sub
g_c = tmp.g_c;
gList = tmp.gList;
gdb_ext = tmp.gdb_ext;
start = tmp.start;
stop = tmp.stop;
a_it.reinitialize(tmp.a_it);
m = tmp.m;
return *this;
}
......@@ -131,7 +129,7 @@ class grid_dist_iterator_sub
*
*/
grid_dist_iterator_sub(const grid_dist_iterator_sub<dim,device_grid> & tmp)
:g_c(tmp.g_c),gList(tmp.gList),gdb_ext(gdb_ext),m(tmp.m)
:g_c(tmp.g_c),gList(tmp.gList),gdb_ext(gdb_ext),start(tmp.start),stop(tmp.stop)
{
a_it.reinitialize(tmp.a_it);
}
......@@ -145,7 +143,7 @@ class grid_dist_iterator_sub
*
*/
grid_dist_iterator_sub(const grid_key_dx<dim> & start, const grid_key_dx<dim> & stop ,const Vcluster_object_array<device_grid> & gk, const openfpm::vector<GBoxes<device_grid::dims>> & gdb_ext)
:g_c(0),gList(gk),gdb_ext(gdb_ext),start(start),stop(stop),m(0)
:g_c(0),gList(gk),gdb_ext(gdb_ext),start(start),stop(stop)
{
// Initialize the current iterator
// with the first grid
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment