34 typedef memory::shared_ptr< gsGeometryTransform >
Ptr;
37 typedef memory::unique_ptr< gsGeometryTransform >
uPtr;
50 : m_geo(geo), m_af(mat,trans) { }
66 virtual void eval_into(
const gsMatrix<T>& u, gsMatrix<T>& result)
const;
68 virtual void deriv_into(
const gsMatrix<T>& u, gsMatrix<T>& result)
const;
78 result = ( m_af.matrix() * result ).colwise() + m_af.translation();
85 auto Jt = result.reshaped( u.rows(), result.size()/u.rows() );
88 for(
index_t i = 0; i!=u.cols(); ++i)
90 tmp = Jt.middleCols(n*i,n);
91 Jt.middleCols(n*i,n).noalias() = tmp * m_af.matrix().transpose();
Representation of an affine function.
Definition gsAffineFunction.h:30
A function from a n-dimensional domain to an m-dimensional image.
Definition gsFunction.h:60
Abstract base class representing a geometry map.
Definition gsGeometry.h:93
short_t targetDim() const
Dimension of the ambient physical space (overriding gsFunction::targetDim())
Definition gsGeometry.h:286
void eval_into(const gsMatrix< T > &u, gsMatrix< T > &result) const
Evaluate the function at points u into result.
Definition gsGeometry.hpp:166
virtual short_t domainDim() const
Dimension d of the parameter domain (overriding gsFunction::domainDim()).
Definition gsGeometry.hpp:184
virtual void deriv_into(const gsMatrix< T > &u, gsMatrix< T > &result) const
Evaluate derivatives of the function at points u into result.
Definition gsGeometry.hpp:170
gsMatrix< T > support() const
Returns the range of parameters (same as parameterRange())
Definition gsGeometry.hpp:193
A matrix with arbitrary coefficient type and fixed or dynamic size.
Definition gsMatrix.h:41
A vector with arbitrary coefficient type and fixed or dynamic size.
Definition gsVector.h:37
Implements an affine function.
#define short_t
Definition gsConfig.h:35
#define index_t
Definition gsConfig.h:32
#define GISMO_NO_IMPLEMENTATION
Definition gsDebug.h:129
The G+Smo namespace, containing all definitions for the library.