26class MinPrecProblem :
public Problem<SC,LO,GO,NO> {
29 typedef Problem<SC,LO,GO,NO> Problem_Type;
30 typedef typename Problem_Type::Domain_Type Domain_Type;
31 typedef typename Problem_Type::DomainConstPtr_Type DomainConstPtr_Type;
32 typedef typename Problem_Type::DomainConstPtr_vec_Type DomainConstPtr_vec_Type;
34 typedef typename Problem_Type::BlockMatrix_Type BlockMatrix_Type;
35 typedef typename Problem_Type::BlockMatrixPtr_Type BlockMatrixPtr_Type;
37 typedef typename Problem_Type::Comm_Type Comm_Type;
38 typedef typename Problem_Type::CommConstPtr_Type CommConstPtr_Type;
40 typedef typename Problem_Type::LinSolverBuilderPtr_Type LinSolverBuilderPtr_Type;
43 MinPrecProblem(ParameterListPtr_Type pl, CommConstPtr_Type comm);
47 void initializeSystem(BlockMatrixPtr_Type system);
49 void initializeDomains(DomainConstPtr_vec_Type& domainPtr_vec);
51 void initializeLinSolverBuilder(LinSolverBuilderPtr_Type linearSolverBuilder);
54 if ( this->comm_->getRank() )
55 std::cout<<
"Minimal implementation of Problem. This object has sufficient information for the setup of FROSch." << std::endl;
58 virtual void assemble( std::string type=
"" )
const {};
60 virtual void getValuesOfInterest( vec_dbl_Type& values ){};
62 virtual void computeValuesOfInterestAndExport() {};