MueLu: fixed problems in statistics
MueLu: CoalesceDropFactory: missing part from the patch e1a9e27accd2f2
Revert "MueLu: AmalgamationFactory: making the hack for indexBase != 0 less of a hack"

This reverts commit e1a9e27accd2f2f6e8a18989fdaeceb70962bd4e.

Somehow, that small change broke lots of tests, which I totally missed.
Merge branch 'master' of software.sandia.gov:/space/git/Trilinos
MueLu: CoalesceDropFactory: cleanup
Trilinos: adding proxy to driver

The nightly results from my SRN workstation aren't being uploaded.
make ExperimentalSubmit from TDD_BUILD seems to work, so maybe it's a proxy issue?
Zoltan2 AlgPQJagged added Zoltan Comm
Merge branch 'master' of software.sandia.gov:/space/git/Trilinos
Galeri: Fixing 1D and 2D Poisson for indexBase=1

Unit testing in MueLu showed Galeri was assuming indexBase=0.
Note that this commit only patches the matrix generators that MueLu uses!
All others likely only work for indexBase=0.
MueLu: disabling PDE test.

This test is failing.  Until we understand better amalgamation for systems,
I'm disabling it.  Plus it's getting in the way of the checkin.

Build/Test Cases Summary
Enabled Packages: Galeri, MueLu
Disabled Packages: MOOCHO
Enabled all Forward Packages
0) MPI_DEBUG => passed: passed=390,notpassed=0 (5.04 min)
1) SERIAL_RELEASE => passed: passed=364,notpassed=0 (2.66 min)
2) MPI_SS_DEBUG => passed: passed=202,notpassed=0 (11.43 min)
Other local commits for this build/test group: 45794ea
MueLu: CoalesceDropFactory: fixing the construction of the amalgamated graph

In the process of construction, we need to translate LIDs of the
original column map into LIDs of the amalgamated column map. The
algorithm we used had some implicit assumption built into it, such as
original column map GIDs are sorted and that GIDs in each block are all
present and consecutive.

This commit removes both of these assumption. Now we should be able to
work with any column map.
MueLu: CoalesceDropFactory: removing column map checks

After some thought, we came to the conclusion that we should be able to
work with any column map. The previous patch fixes some of the problems.
There are still some lurking in the AmalgamationFactory.
MueLu: CoalesceDropFactory: added a sanity check

We really really want nonUniqueMap to act as a column map when uniqueMap
acts as a row map. From this perspective, we want uniqueMap GIDs be a
subset of those in nonUniqueMap, and they should be in the beginning of
it.
MueLu: AmalgamationFactory: fixed to work with missing DOFs in column map

It might happen that we have only {1,2} of the full block {1,2,3} in the
column map, i.e. some logical blocks have gaps. This fix changes our
behaviour so that we don't automatically fill in the gap in our maps.
MueLu: AmalgamationFactory: minor cleanup
Tpetra: Matrix Market I/O: Added a test for values indep of structure.

I added to the CrsMatrix Matrix Market Reader / Writer test an extra
test for equality of the values in the matrix, independent of the graph
structure of the matrix.  It's not fully general, because it still
expects the column Maps to be the same, but if this becomes important,
it could be fixed via an Import.
Tpetra: Matrix Market I/O: Improved output for CrsMatrix file test.
Tpetra: CrsGraph: Simplified mergeRowIndicesAndValues().

This method is only called by CrsMatrix, and only when the matrix owns
the graph, not when the matrix was constructed with a const graph.
The method used to take two template parameters: an iterator type Iter
(the type of the iterator over the matrix's values in that row) and a
binary function type BinaryFunction (over the type of the matrix's
values).  These template parameters were confusing and redundant for
the following reasons:

  - Neither Iter nor BinaryFunction actually specified the type of the
    matrix's values (Scalar).  This made it hard to understand what
    the method was doing and how it was relevant to CrsMatrix.

  - CrsMatrix was only ever calling the method with Iter = typename
    ArrayRCP<Scalar>::iterator, and BinaryFunction =
    std::plus<Scalar>, where Scalar is the type of entries in the
    matrix.  Thus, the only relevant template parameter is Scalar.

  - The method does not need to accept an ArrayRCP, since it does not
    retain a reference to the row's values.  An ArrayView is perfectly
    sufficient, and equally safe (a debug build will still test for
    out-of-bounds array accesses).

Thus, I simplified the method to take only one template parameter: the
Scalar type (of entries in the matrix).  It also now accepts an
ArrayView<Scalar> for the row's values, instead of an iterator to the
beginning of the row.  This may improve compilation time as well as
performance of the method (since there are no unnecessary ArrayRCPs),
but mainly it makes the method easier to understand.
Tpetra: MultiVector: Optimized single-vector case of packAndPrepare.

I added a special case to packAndPrepare for a MultiVector with a
single column, in order to optimize that common case.  We could
optimize it further by using raw pointers, if compilers are bad at
inlining ArrayView and Array operator[].
Tpetra: Matrix Market I/O: Got test to cooperate w/ unit test framework.

The unit test now fails when it is supposed to fail.  It apparently
has to set the 'success' variable (silently created by the unit test
macro) to false in order for the test to fail.  This came up because
my unit test was calling a separate function, in which the 'success'
variable was not defined.

Build/Test Cases Summary
Enabled Packages: Tpetra, Belos, Ifpack2, Xpetra
0) MPI_DEBUG => Test case MPI_DEBUG was not run! => Does not affect push readiness! (-1.00 min)
1) SERIAL_RELEASE => Test case SERIAL_RELEASE was not run! => Does not affect push readiness! (-1.00 min)
2) MPI_DEBUG_SS => passed: passed=172,notpassed=0 (9.24 min)
3) SERIAL_RELEASE_SS => passed: passed=156,notpassed=0 (0.49 min)
4) MPI_RELEASE_SS => passed: passed=172,notpassed=0 (13.37 min)
Other local commits for this build/test group: 7b46c70, 8c90b9e, 935bec7, a29f2f4