6 Eigen::VectorXi
const& outputSizes)
7 :
ModPiece(inputSizes, outputSizes) {}
14 unsigned int const inputDimWrt,
16 Eigen::VectorXd
const& sensitivity) {
21 unsigned int const inputDimWrt,
22 std::vector<Eigen::VectorXd>
const& input,
23 Eigen::VectorXd
const& sensitivity)
29 unsigned int const inputDimWrt,
35 unsigned int const inputDimWrt,
36 std::vector<Eigen::VectorXd>
const& input)
43 unsigned int const inputDimWrt,
45 Eigen::VectorXd
const& vec) {
50 unsigned int const inputDimWrt,
51 std::vector<Eigen::VectorXd>
const& input,
52 Eigen::VectorXd
const& vec)
58 unsigned int const inputDimWrt1,
59 unsigned int const inputDimWrt2,
61 Eigen::VectorXd
const& sens,
62 Eigen::VectorXd
const& vec)
68 unsigned int const inputDimWrt1,
69 unsigned int const inputDimWrt2,
70 std::vector<Eigen::VectorXd>
const& input,
71 Eigen::VectorXd
const& sens,
72 Eigen::VectorXd
const& vec)
Provides an abstract interface for defining vector-valued model components.
virtual Eigen::VectorXd GradientByFD(unsigned int const outputDimWrt, unsigned int const inputDimWrt, std::vector< Eigen::VectorXd > const &input, Eigen::VectorXd const &sensitivity)
virtual Eigen::VectorXd ApplyHessianByFD(unsigned int const outWrt, unsigned int const inWrt1, unsigned int const inWrt2, std::vector< Eigen::VectorXd > const &input, Eigen::VectorXd const &sens, Eigen::VectorXd const &vec)
Eigen::MatrixXd ApplyJacobianByFD(unsigned int outWrt, unsigned int inWrt, Args const &... args)
Eigen::MatrixXd JacobianByFD(unsigned int outWrt, unsigned int inWrt, Args const &... args)
std::vector< Eigen::VectorXd > ToStdVec(ref_vector< Eigen::VectorXd > const &input)
Eigen::VectorXd hessAction
Eigen::VectorXd jacobianAction
virtual void GradientImpl(unsigned int const outputDimWrt, unsigned int const inputDimWrt, ref_vector< Eigen::VectorXd > const &input, Eigen::VectorXd const &sensitivity) override
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 ...