[Trilinos-Users] [EXTERNAL] Basic Epetra map usage
makhijad at colorado.edu
Fri Mar 2 02:12:59 MST 2012
This worked for KLU. A quick search of the source code turned up this in
//! If true, the Amesos class should reindex the matrix to standard
indexing (i.e. 0-n-1)
//! at present, only Amesos_Klu supports this option.
bool Reindex_ ;
Is adding this functionality to MUMPS or SuperLU-Dist on your radar? It
would be nice for debugging purposes. If not, we mainly use Aztec for large
Thanks for the help,
On Thu, Mar 1, 2012 at 10:49 PM, Heroux, Michael A <maherou at sandia.gov>wrote:
> Although it is not well documented, the underlying solvers that Amesos
> supports require contiguous indexing. Amesos helps with this by providing
> a Reindex parameter. You should be able to fix your problem with something
> similar to this:
> Where amesosList is your list of parameters used to select solver
> parameters in the Amesos factory:
> Teuchos::ParameterList amesosList;
> All native Trilinos solvers work with noncontiguous maps, so it is only
> Amesos that has this issue. Also, my guess is that there is an error code
> being returned in the symbolic factorization phase that complains about the
> map not being contiguous.
> Please see if this helps.
> From: Dave Makhija <makhijad at colorado.edu>
> Date: Thu, 1 Mar 2012 14:09:24 -0700
> To: <trilinos-users at software.sandia.gov>
> Subject: [EXTERNAL] [Trilinos-Users] Basic Epetra map usage
> 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
> 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
> 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,
> _______________________________________________ Trilinos-Users mailing
> list Trilinos-Users at software.sandia.gov
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Trilinos-Users