47:
public DistributedDirectSolverBase<Backend, DistributedSkylineLUDirectSolver<Backend>>
49 using Base = DistributedDirectSolverBase<Backend, DistributedSkylineLUDirectSolver<Backend>>;
53 typedef typename Backend::value_type value_type;
55 typedef typename Solver::params params;
56 typedef Backend::matrix build_matrix;
59 template <
class Matrix>
61 const params& prm = params{})
64 static_cast<Base*
>(
this)->init(comm, A);
67 static size_t coarse_enough()
69 return Solver::coarse_enough();
72 int comm_size(
int )
const
77 void init(mpi_communicator,
const build_matrix& A)
79 S = std::make_shared<Solver>(A, prm);
88 template <
class Vec1,
class Vec2>
89 void solve(
const Vec1& rhs, Vec2& x)
const
97 std::shared_ptr<Solver> S;