Ifpack2 SingletonFilter does not implement getGraph().
Created by: kddevin
@trilinos/ifpack2 @trilinos/muelu @trilinos/zoltan2
This issue blocks #244 (closed) , #547 (closed), #548.
Ifpack2 uses Zoltan2 for local ordering in Ifpack2_AdditiveSchwarz_def.hpp.
Zoltan2 works only with scalar_t={double, float, int}. To prevent compilation problems when scalar_t={std::complex, Sacado type} (issues #244 (closed), #547 (closed)), we would like to use the RowGraph, obtained from RowMatrix::getGraph(), for ordering in Ifpack2.
We have implemented the use of RowGraph in Ifpack2 and Zoltan2 (see #548), and the compilation is fine now. But some MueLu tests fail with the following thrown error:
Ifpack2::SingletonFilter: does not support getGraph.
The failing tests are
72:MueLu_Helmholtz2DParallel_MPI_4 73:MueLu_Helmholtz3DParallel_MPI_4 74:MueLu_HelmholtzFEM2DParallel_MPI_4 75:MueLu_HelmholtzFEM3DParallel_MPI_4
@mhoemmen says many of the Filters in Ifpack2 don't correctly implement getGraph().
I do not know the best way to resolve this problem, as I do not know the purpose of the SingletonFilter, nor how to implement RowGraph for it. I am open to suggestions from @trilinos/ifpack2 or @trilinos/muelu .
Thank you!