Stratimikos: add adapter for Amesos2
Created by: ibaned
Okay, here is the big patch I mentioned in #1083. This PR adds support for using Amesos2 through Stratimikos. The motivation for this is to allow Albany to use direct solvers through the Tpetra stack. A rundown of key points:
- The interface is instantiated for the Teuchos scalar types, but so far just uses the default ordinal and node types
- There is a test added, modeled after the Belos adapter test, which can exercise any of Amesos2's underlying solvers
- Invocations of this test were added to CMake for the TPLs I had enabled, namely KLU2 and SuperLU_DIST. Others can be added, but I didn't want to add tests without confidence they would pass once enabled.
- The KLU2 test passes.
- The SuperLU_DIST test is failing right now. I'm not sure if it is me coding the adapter wrong, or if Amesos2's SuperLU_DIST interface is wrong. Since no automated testing happens with SuperLU_DIST, this shouldn't impact many people, and I prefer to get the rest of this reviewed before looking into that.
@trilinos/stratimikos @trilinos/amesos2