On Mon, Oct 13, 2008 at 9:04 AM, Gong Ding <[EMAIL PROTECTED]> wrote:
> In function
>
> template <typename T>
>
>  inline void gather(const unsigned int root_id,
>
>                   std::vector<std::complex<T> > &r)
>
> line 1454 to 1457 should be
> // now resize r to hold the global data
>
> // on the receiving processor
>
>  if (root_id == libMesh::processor_id())
>
>    r.resize(globalsize/2);
>
>
>
> since mysize is doubled at line 1430

Hmm...

I'm not sure I see how this function works.  r and r_src are
vector<complex<T>> but we are MPI gathering them as datatype<T>, where
T=Real.  Surely the layouts of an array of T and a vector<complex<T>>
are not the same in memory.  Don't we need a "repacking step" after
the gather, or (1) am I missing something (2) it just works.  I lean
towards (1)...

-- 
John

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to