7 #ifndef __ASSCHURDRIVER_HPP__
8 #define __ASSCHURDRIVER_HPP__
45 const std::string& prefix)
63 return pcalc_->data_A_nonconst();
This is the base class for all algorithm strategy objects.
SchurDriver()
Performs a backsolve on S and K; calls the latter with sol=K^(-1)*r_s=0 virtual bool SchurSolve(Smar...
virtual SmartPtr< const SchurData > data_B() const
virtual SmartPtr< SchurData > data_A_nonconst()
virtual SmartPtr< SchurData > data_B_nonconst()
virtual bool SchurFactorize()=0
Calls the factorization routine for the SchurMatrix.
SchurDriver(SmartPtr< PCalculator > pcalc, SmartPtr< SchurData > data_B)
This class is the interface for any class that deals with the Schur matrix from the point when it is ...
Template class for Smart Pointers.
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Overloaded from AlgorithmStrategyObject.
This class stores a list of user set options.
virtual bool SchurSolve(SmartPtr< IteratesVector > lhs, SmartPtr< const IteratesVector > rhs, SmartPtr< Vector > delta_u, SmartPtr< IteratesVector > sol=NULL)=0
Performs a backsolve on S and K.
virtual bool SchurBuild()=0
Sets the Data for which this SchurMatrix will be built.
virtual SmartPtr< const SchurData > data_A() const
Const accessor methods to the SchurData for for the derived classes.
virtual SmartPtr< const PCalculator > pcalc() const
SmartPtr< SchurData > data_B_
SmartPtr< const U > ConstPtr(const SmartPtr< U > &smart_ptr)
SmartPtr< PCalculator > pcalc_
virtual SmartPtr< PCalculator > pcalc_nonconst()