PolyFEM
Loading...
Searching...
No Matches
polyfem::solver::Parametrization Class Referenceabstract

A function f : x -> y. More...

#include <Parametrization.hpp>

Inheritance diagram for polyfem::solver::Parametrization:
[legend]

Public Member Functions

virtual ~Parametrization ()=default
 
virtual Eigen::VectorXd inverse_eval (const Eigen::VectorXd &y)
 Eval x = f^-1 (y).
 
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 apply_jacobian (const Eigen::VectorXd &grad_full, const Eigen::VectorXd &x) const =0
 Apply jacobian for chain rule.
 

Detailed Description

A function f : x -> y.

Definition at line 12 of file Parametrization.hpp.

Constructor & Destructor Documentation

◆ ~Parametrization()

virtual polyfem::solver::Parametrization::~Parametrization ( )
virtualdefault

Member Function Documentation

◆ apply_jacobian()

virtual Eigen::VectorXd polyfem::solver::Parametrization::apply_jacobian ( const Eigen::VectorXd &  grad_full,
const Eigen::VectorXd &  x 
) const
pure virtual

◆ eval()

◆ inverse_eval()

Eigen::VectorXd polyfem::solver::Parametrization::inverse_eval ( const Eigen::VectorXd &  y)
virtual

Eval x = f^-1 (y).

This is not a strict inverse in mathematical sense, one may choose "reasonable" x even if f is not one-to-one.

Parameters
[in]yy.
Returns
x.
Exceptions
std::runtime_errorThrow if not implemented.

Reimplemented in polyfem::solver::CompositeParametrization, polyfem::solver::ExponentialMap, polyfem::solver::Scaling, polyfem::solver::PowerMap, polyfem::solver::ENu2LambdaMu, polyfem::solver::SliceMap, polyfem::solver::InsertConstantMap, polyfem::solver::ScalarVelocityParametrization, polyfem::solver::PeriodicMeshToMesh, polyfem::solver::BSplineParametrization1DTo2D, polyfem::solver::BSplineParametrization2DTo3D, and polyfem::solver::BoundedBiharmonicWeights2Dto3D.

Definition at line 6 of file Parametrization.cpp.

References polyfem::log_and_throw_adjoint_error().

Here is the call graph for this function:

◆ size()


The documentation for this class was generated from the following files: