25 static std::vector<std::shared_ptr<Parametrization>>
build(
const json ¶ms,
const int full_size);
33 int size(
const int x_size)
const override {
return x_size; }
34 Eigen::VectorXd
inverse_eval(
const Eigen::VectorXd &
y)
override;
35 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
36 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
45 Scaling(
const double scale,
const int from = -1,
const int to = -1);
47 int size(
const int x_size)
const override {
return x_size; }
48 Eigen::VectorXd
inverse_eval(
const Eigen::VectorXd &
y)
override;
49 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
50 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
66 int size(
const int x_size)
const override {
return x_size; }
67 Eigen::VectorXd
inverse_eval(
const Eigen::VectorXd &
y)
override;
68 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
69 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
81 int size(
const int x_size)
const override {
return x_size; }
83 Eigen::VectorXd
inverse_eval(
const Eigen::VectorXd &
y)
override;
84 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
85 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
96 int size(
const int x_size)
const override;
97 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
98 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
102 const std::vector<basis::ElementBases> &
bases_;
113 int size(
const int x_size)
const override;
114 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
115 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
127 SliceMap(
const int from = -1,
const int to = -1,
const int total = -1);
131 Eigen::VectorXd
inverse_eval(
const Eigen::VectorXd &
y)
override;
132 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
133 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
145 int size(
const int x_size)
const override;
146 Eigen::VectorXd
inverse_eval(
const Eigen::VectorXd &
y)
override;
147 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
148 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
162 int size(
const int x_size)
const override {
return x_size; }
163 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
164 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
176 int size(
const int x_size)
const override {
return x_size; }
177 Eigen::VectorXd
inverse_eval(
const Eigen::VectorXd &
y)
override;
178 Eigen::VectorXd
eval(
const Eigen::VectorXd &
x)
const override;
179 Eigen::VectorXd
apply_jacobian(
const Eigen::VectorXd &grad,
const Eigen::VectorXd &
x)
const override;
Abstract mesh class to capture 2d/3d conforming and non-conforming meshes.
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
int size(const int x_size) const override
Eigen::VectorXd inverse_eval(const Eigen::VectorXd &y) override
int size(const int x_size) const override
Eigen::VectorXd inverse_eval(const Eigen::VectorXd &y) override
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
int size(const int x_size) const override
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
Eigen::VectorXd inverse_eval(const Eigen::VectorXd &y) override
Eigen::SparseMatrix< double > tt_radius_adjacency
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
Eigen::VectorXd tt_radius_adjacency_row_sum
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
int size(const int x_size) const override
static std::vector< std::shared_ptr< Parametrization > > build(const json ¶ms, const int full_size)
This parameterize a function f : x -> y and provides the chain rule with respect to previous gradient...
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
int size(const int x_size) const override
std::map< int, std::array< int, 2 > > body_id_map_
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
int size(const int x_size) const override
Eigen::VectorXi node_id_to_body_id_
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
const std::vector< basis::ElementBases > & bases_
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
int size(const int x_size) const override
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
PowerMap(const double power=1, const int from=-1, const int to=-1)
Eigen::VectorXd inverse_eval(const Eigen::VectorXd &y) override
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
ScalarVelocityParametrization(const double start_val, const double dt)
int size(const int x_size) const override
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
Eigen::VectorXd inverse_eval(const Eigen::VectorXd &y) override
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
int size(const int x_size) const override
Eigen::VectorXd inverse_eval(const Eigen::VectorXd &y) override
Eigen::VectorXd apply_jacobian(const Eigen::VectorXd &grad, const Eigen::VectorXd &x) const override
Eigen::VectorXd inverse_eval(const Eigen::VectorXd &y) override
int size(const int x_size) const override
Eigen::VectorXd eval(const Eigen::VectorXd &x) const override