Ifpack2: coordinates passed to the block relaxation line partitioner need to be `double`
*Created by: lucbv*
@trilinos/ifpack2
@mhoemmen @csiefer2
## Expectations
It seems a reasonable assumption that coordinates will be passed as `double` for line detection. We should be able to use that algorithm when `Scalar=std::complex<double>`
## Current Behavior
Currently the coordinates are templated on `Scalar` which leads to a type mismatch when the multivector of coordinates coming from an app/MueLu is templated on `double`
## Motivation and Context
The line detection algorithm is useful for problem exhibiting strong mesh anisotropy which happens often for cfd problem where a mesh is closely fitted and extruded in the normal direction to a solid surface. For instance this can happen when modelling the fluid flow around a wind turbine blade or an aircraft wing.
## Definition of Done
There is a test in MueLu that uses the line detection algorithm and that test is failing when `Scalar=std::compled<double>` this should actually run correctly with proper templates.
## Possible Solution
Switch `MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>` to `MultiVector<double, LocalOrdinal, GlobalOrdinal, Node>` where appropriate so that the coordinates can go through Ifpack2 without problems.
## Steps to Reproduce
Compile Trilinos with complex on and run the MueLu tests.
## Related Issues
* Follows #2528
* Related to #2520
issue