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"
42template<
class Scalar>
class BasicDiscreteAdjointStepperTester;
45namespace BasicDiscreteAdjointStepperTesterUtils {
47const std::string ErrorTol_name =
"Error Tol";
48const double ErrorTol_default = 1e-6;
58RCP<BasicDiscreteAdjointStepperTester<Scalar> >
67RCP<BasicDiscreteAdjointStepperTester<Scalar> >
139template<
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<>();
199#ifndef TEMPLATE_FRIENDS_NOT_SUPPORTED
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.
void setParameterList(RCP< ParameterList > const ¶mList)
RCP< BasicDiscreteAdjointStepperTester< Scalar > > basicDiscreteAdjointStepperTester(const RCP< ParameterList > ¶mList)
Nonmember constructor.
RCP< BasicDiscreteAdjointStepperTester< Scalar > > basicDiscreteAdjointStepperTester()
Nonmember constructor.
RCP< const ParameterList > getValidParameters() const
Abstract interface for time integrators.