7#ifndef __ASSENSSTEPCALC_HPP__
8#define __ASSENSSTEPCALC_HPP__
33 const std::string& prefix
36 options.
GetBoolValue(
"sens_boundcheck", do_boundcheck_, prefix);
42 return do_boundcheck_;
52 if(
IsValid(driver_->pcalc_nonconst()) )
54 driver_->pcalc_nonconst()->reset_data_A();
This is the base class for all algorithm strategy objects.
Dense Vector Implementation.
Specialized CompoundVector class specifically for the algorithm iterates.
This class stores a list of user set options.
virtual bool GetBoolValue(const std::string &tag, bool &value, const std::string &prefix) const
This is the interface for the classes that perform the actual step.
void SetSchurDriver(SmartPtr< SchurDriver > driver)
virtual ~SensitivityStepCalculator()
SmartPtr< SchurDriver > Driver()
bool Do_Boundcheck() const
virtual bool Step(DenseVector &delta_u, IteratesVector &sol)=0
This is the main algorithmic function of this class.
SensitivityStepCalculator()
virtual bool InitializeImpl(const OptionsList &options, const std::string &prefix)
Implementation of the initialization method that has to be overloaded by for each derived class.
SmartPtr< SchurDriver > driver_
virtual SmartPtr< IteratesVector > GetSensitivityVector()=0
return the sensitivity vector
Template class for Smart Pointers.
This file contains a base class for all exceptions and a set of macros to help with exceptions.
bool IsValid(const SmartPtr< U > &smart_ptr)