Closed sslattery closed 11 years ago
So it turns out there is a bigger difference between the interface and capability of Tpetra and Epetra for the CrsMatrix class than I thought. It may not be worth it to abstract this and just stick with the more general Tpetra library.
For now I'm going with the Tpetra library due to its generality and modern development practices. In addition, research is being done to expand its applicability to other node types in the future. Using a concrete library will also facilitate initial algorithm development. In the future, this algorithm development will let us know what pieces of the interface we need. We can then abstract those pieces as necessary.
The initial Monte Carlo implementations leveraged the Epetra library in Trilinos. At a minimum I would like the new implementation to leverage Tpetra. If possible however, I would prefer an implementation that is agnostic towards either. I'll look to design an operator and vector interface that captures both. This also means that the solver package we generate can be leveraged by those outside of Trilinos (although we will offer Trilinos specific implementations).