9 #ifndef Tempus_Stepper_Optimization_Interface_hpp
10 #define Tempus_Stepper_Optimization_Interface_hpp
13 #include "Teuchos_Array.hpp"
14 #include "Teuchos_RCP.hpp"
17 #include "Thyra_VectorBase.hpp"
18 #include "Thyra_LinearOpBase.hpp"
19 #include "Thyra_LinearOpWithSolveBase.hpp"
38 template<
class Scalar>
52 Thyra::VectorBase<Scalar>& residual,
53 const Teuchos::Array< Teuchos::RCP<
const Thyra::VectorBase<Scalar> > >& x,
54 const Teuchos::Array<Scalar>& t,
55 const Thyra::VectorBase<Scalar>& p,
56 const int param_index)
const = 0;
64 Thyra::LinearOpBase<Scalar>& jacobian,
65 const Teuchos::Array< Teuchos::RCP<
const Thyra::VectorBase<Scalar> > >& x,
66 const Teuchos::Array<Scalar>& t,
67 const Thyra::VectorBase<Scalar>& p,
68 const int param_index,
69 const int deriv_index)
const = 0;
73 Thyra::LinearOpBase<Scalar>& deriv,
74 const Teuchos::Array< Teuchos::RCP<
const Thyra::VectorBase<Scalar> > >& x,
75 const Teuchos::Array<Scalar>& t,
76 const Thyra::VectorBase<Scalar>& p,
77 const int param_index)
const = 0;
84 Thyra::LinearOpWithSolveBase<Scalar>& jacobian_solver,
85 const Teuchos::Array< Teuchos::RCP<
const Thyra::VectorBase<Scalar> > >& x,
86 const Teuchos::Array<Scalar>& t,
87 const Thyra::VectorBase<Scalar>& p,
88 const int param_index)
const = 0;
93 #endif // Tempus_Stepper_hpp