[Trilinos-Users] Basic Epetra map usage

Dave Makhija makhijad at colorado.edu
Thu Mar 1 14:09:24 MST 2012


Hi all,

I am revising a finite element code and have a basic question on how to
properly use the Epetra_Map class in order to solve linear systems with
Amesos and Aztec. Do the map global elements have to span the index base to
the total number of elements?

Take this problem for example. Three degrees of freedom numbered 0, 1, and
2. I can fill the stiffness matrix and the force vector and solve the
system.
Now consider the same system if degree of freedom 1 is constrained. Instead
of trying to eliminate the row and column for degree of freedom 1 I am
making an Epetra_Map of two elements with global element IDs of 0 and 2. I
have verified that the assembly process works correctly by dumping the
matrix to a Matlab file. It does, however, pad the constrained degree of
freedom row/column with zeros. That is, it gives all zeros in the
row/column for degree of freedom 1 and the correct values in the remaining
matrix.

A linear solve will work with:
Amesos UMFPACK in serial
Aztec GMRES in serial
Aztec GMRES in parallel

A linear solve will give "terminate called after throwing an instance of
'int'" with:
Amesos UMFPACK, SUPERLU-DIST, and MUMPS in parallel

So, do I have to re-number my degrees of freedom such that the global
element IDs in this case becomes 0 and 1? Was I just lucky that Aztec and
serial Amesos was able to solve the linear system? Or is there no problem
with the 0, 2 numbering scheme and I have a bug somewhere else in the code?

Thank you,

Dave
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://software.sandia.gov/pipermail/trilinos-users/attachments/20120301/c9e23186/attachment.html 


More information about the Trilinos-Users mailing list