29 #ifndef Rythmos_BASIC_DISCRETE_ADJOINT_STEPPER_TESTER_DECL_H
30 #define Rythmos_BASIC_DISCRETE_ADJOINT_STEPPER_TESTER_DECL_H
33 #include "Rythmos_AdjointModelEvaluator.hpp"
34 #include "Rythmos_IntegratorBase.hpp"
35 #include "Teuchos_VerboseObject.hpp"
36 #include "Teuchos_ParameterListAcceptorDefaultBase.hpp"
45 namespace BasicDiscreteAdjointStepperTesterUtils {
47 const std::string ErrorTol_name =
"Error Tol";
48 const double ErrorTol_default = 1e-6;
57 template<
class Scalar>
58 RCP<BasicDiscreteAdjointStepperTester<Scalar> >
59 basicDiscreteAdjointStepperTester();
66 template<
class Scalar>
67 RCP<BasicDiscreteAdjointStepperTester<Scalar> >
68 basicDiscreteAdjointStepperTester(
const RCP<ParameterList> ¶mList);
139 template<
class Scalar>
141 :
virtual public Teuchos::VerboseObject<BasicDiscreteAdjointStepperTester<Scalar> >,
142 virtual public Teuchos::ParameterListAcceptorDefaultBase
146 typedef typename ScalarTraits<Scalar>::magnitudeType ScalarMag;
179 Thyra::ModelEvaluator<Scalar>& adjointModel,
185 #ifndef TEMPLATE_FRIENDS_NOT_SUPPORTED
191 friend RCP< BasicDiscreteAdjointStepperTester<Scalar> >
192 basicDiscreteAdjointStepperTester<>();
196 #endif // TEMPLATE_FRIENDS_NOT_SUPPORTED
199 #ifndef TEMPLATE_FRIENDS_NOT_SUPPORTED
201 #endif // TEMPLATE_FRIENDS_NOT_SUPPORTED
215 #endif //Rythmos_BASIC_DISCRETE_ADJOINT_STEPPER_TESTER_DECL_H
Abstract interface for time integrators.
void setParameterList(RCP< ParameterList > const ¶mList)
Concrete testing class for basic adjoint calculation.
bool testAdjointStepper(Thyra::ModelEvaluator< Scalar > &adjointModel, const Ptr< IntegratorBase< Scalar > > &forwardIntegrator)
Test the the AdjointStepper object for a given forward simulation.
RCP< const ParameterList > getValidParameters() const