31 virtual Eigen::VectorXd
inverse_eval(
const Eigen::VectorXd &
y)
const = 0;
36 virtual int size(
const int x_size)
const = 0;
41 virtual Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const = 0;
51 virtual Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad_full,
const Eigen::VectorXd &
x)
const = 0;
61 Eigen::VectorXd
inverse_eval(
const Eigen::VectorXd &
y)
const override;
62 int size(
const int x_size)
const override;
63 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
64 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad_full,
const Eigen::VectorXd &
x)
const override;
int size(const int x_size) const override
Compute DOF of y given DOF of x.
CompositeParametrization()=default
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad_full, const Eigen::VectorXd &x) const override
Apply jacobian for chain rule.
Eigen::VectorXd inverse_eval(const Eigen::VectorXd &y) const override
Eval x = f^-1 (y).
CompositeParametrization(std::vector< std::shared_ptr< Parametrization > > parametrizations)
const std::vector< std::shared_ptr< Parametrization > > parametrizations_
int inverse_size(int y_size) const override
Compute DOF of x given DOF of y.
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
Eval y = f(x).
virtual int size(const int x_size) const =0
Compute DOF of y given DOF of x.
virtual Eigen::VectorXd eval(const Eigen::VectorXd &x) const =0
Eval y = f(x).
virtual Eigen::VectorXd inverse_eval(const Eigen::VectorXd &y) const =0
Eval x = f^-1 (y).
virtual Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad_full, const Eigen::VectorXd &x) const =0
Apply jacobian for chain rule.
virtual ~Parametrization()=default
virtual int inverse_size(int y_size) const =0
Compute DOF of x given DOF of y.