[Trilinos-Users] Epetra Vectors/Maps

John Mitchell jamitch at sandia.gov
Fri Jan 29 18:33:02 MST 2010


Obviously I'm no trilinos expert but the first sentence in your second 
paragraph is basically the question that I was asking and no --  
numGlobalElements is NOT equal to sum(numMyElements) -- at least that's 
what both Alan and Mike said.  The documentation is apparently wrong. 

Now concerning your second question -- I'll let the experts say.  I'm 
interested in hearing back on that:)


Littlewood, David John wrote:
> John,
>
> I was also confused when I read this documentation.  I'm only slightly 
> less confused now.
>
> The way I understand it is that numGlobalElements is equal to 
> sum(numMyElements), even in cases where there are shared IDs.  I'm 
> guessing that the argument numGlobalElements can be provided by the 
> user to avoid the vector having to compute numGlobalElements itself 
> (requiring parallel communication).
>
> Trilinos experts please correct me if I'm wrong here, but I believe 
> the assembly operation you're talking about requires two vectors, for 
> example vector A of length(owned+shared) and vector B of 
> length(owned).  If you have local data for owned and shared nodes in 
> vector A, and you want to do an assemble add, you could do an export 
> add from vector A to vector B, and then to an import insert from 
> vector B to vector A.  Then your local copies of A would be updated 
> with the summed values.
>
> Dave   
>
> On 1/29/10 4:55 PM, "John Mitchell" <jamitch at sandia.gov> wrote:
>
>     Thanks Alan and Mike.
>
>     The reason I was asking is because the documentation says:
>
>         \param In
>                 NumGlobalElements - Number of elements to distribute.
>      Must be
>          either -1 or equal to the computed sum of NumMyElements
>     across all
>          processors in the Epetra_Comm communicator.
>
>     This documentation must not be correct or I'm reading it the wrong
>     way?
>
>     Thanks,
>     John
>
>     Williams, Alan B wrote:
>     > Hi John,
>     >
>     > Yes you can have vectors/maps that overlap in the way that you
>     describe. We have finite-element codes that use epetra in exactly
>     that way.
>     >
>     > Alan
>     >
>     >
>     >  
>     >> -----Original Message-----
>     >> From: trilinos-users-bounces at software.sandia.gov [mailto:trilinos-
>     >> users-bounces at software.sandia.gov] On Behalf Of John Mitchell
>     >> Sent: Friday, January 29, 2010 4:38 PM
>     >> To: trilinos-users at software.sandia.gov
>     >> Subject: [Trilinos-Users] Epetra Vectors/Maps
>     >>
>     >> I am new to the use of Epetra and have a couple basic questions that
>     >> don't appear to be directly addressed in the tutorial.
>     >>
>     >> Is it possible to create an
>     >>
>     >> Epetra_Map(numGlobalElements,numMyElements,myElements,0,comm)
>     >>
>     >> where sum(numMyElements) over all processors != numGlobalElements?
>     >>
>     >> What I have, is a list of ids that I own, and then a list of ids
>     that I
>     >> share but don't own.  I need to do parallel calculations and
>     assemblies
>     >> on a vector that is of length numOwned+numShared.  Assembly
>     operations
>     >> for both owned and shared may require off-processor
>     communications.  I
>     >> have a vector f = {f_owned, f_shared}; If a point that is owned on
>     >> processor is shared on another processor, then the assembly of
>     f_owned
>     >> will require contributions f_shared from the sharing off processor
>     >>
>     >> I was planning on using the above Epetra_Map as a target map for
>     >> creating an Epetra_Import -- does that make sense?
>     >>
>     >> Thanks,
>     >> John
>     >>
>     >> _______________________________________________
>     >> Trilinos-Users mailing list
>     >> Trilinos-Users at software.sandia.gov
>     >> http://software.sandia.gov/mailman/listinfo/trilinos-users
>     >>    
>
>     _______________________________________________
>     Trilinos-Users mailing list
>     Trilinos-Users at software.sandia.gov
>     http://software.sandia.gov/mailman/listinfo/trilinos-users
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://software.sandia.gov/pipermail/trilinos-users/attachments/20100129/b94be95f/attachment-0001.html 


More information about the Trilinos-Users mailing list