18 virtual void EvaluateImpl(std::vector<Eigen::VectorXd>
const& input) = 0;
20 virtual void GradientImpl(
unsigned int const outputDimWrt,
21 unsigned int const inputDimWrt,
23 Eigen::VectorXd
const& sensitivity)
override;
25 virtual void GradientImpl(
unsigned int const outputDimWrt,
26 unsigned int const inputDimWrt,
27 std::vector<Eigen::VectorXd>
const& input,
28 Eigen::VectorXd
const& sensitivity);
30 virtual void JacobianImpl(
unsigned int const outputDimWrt,
31 unsigned int const inputDimWrt,
34 virtual void JacobianImpl(
unsigned int const outputDimWrt,
35 unsigned int const inputDimWrt,
36 std::vector<Eigen::VectorXd>
const& input);
39 unsigned int const inputDimWrt,
41 Eigen::VectorXd
const& vec)
override;
44 unsigned int const inputDimWrt,
45 std::vector<Eigen::VectorXd>
const& input,
46 Eigen::VectorXd
const& vec);
49 unsigned int const inputDimWrt1,
50 unsigned int const inputDimWrt2,
51 std::vector<Eigen::VectorXd>
const& input,
52 Eigen::VectorXd
const& sens,
53 Eigen::VectorXd
const& vec);
56 unsigned int const inputDimWrt1,
57 unsigned int const inputDimWrt2,
59 Eigen::VectorXd
const& sens,
60 Eigen::VectorXd
const& vec)
override;
Provides an abstract interface for defining vector-valued model components.
const Eigen::VectorXi inputSizes
const Eigen::VectorXi outputSizes
virtual void GradientImpl(unsigned int const outputDimWrt, unsigned int const inputDimWrt, ref_vector< Eigen::VectorXd > const &input, Eigen::VectorXd const &sensitivity) override
virtual void EvaluateImpl(std::vector< Eigen::VectorXd > const &input)=0
virtual void ApplyJacobianImpl(unsigned int const outputDimWrt, unsigned int const inputDimWrt, ref_vector< Eigen::VectorXd > const &input, Eigen::VectorXd const &vec) override
virtual void EvaluateImpl(ref_vector< Eigen::VectorXd > const &input) override
virtual void ApplyHessianImpl(unsigned int const outputDimWrt, unsigned int const inputDimWrt1, unsigned int const inputDimWrt2, std::vector< Eigen::VectorXd > const &input, Eigen::VectorXd const &sens, Eigen::VectorXd const &vec)
virtual void JacobianImpl(unsigned int const outputDimWrt, unsigned int const inputDimWrt, ref_vector< Eigen::VectorXd > const &input) override
PyModPiece(Eigen::VectorXi const &inputSizes, Eigen::VectorXi const &outputSizes)
std::vector< std::reference_wrapper< const T > > ref_vector
A vector of references to something ...