QUGaR 0.1.3
Loading...
Searching...
No Matches
qugar::impl::funcs::TransformedFunction< dim > Class Template Reference

Creates a new implicit function that is just a base function to which an affine transformation is applied. More...

#include <impl_funcs_lib.hpp>

Inheritance diagram for qugar::impl::funcs::TransformedFunction< dim >:
[legend]
Collaboration diagram for qugar::impl::funcs::TransformedFunction< dim >:
[legend]

Public Member Functions

 TransformedFunction (const std::shared_ptr< const ImplicitFunc< dim > > &base_func, const AffineTransf< dim > &transf)
 Constructs a new transformed function.
Public Member Functions inherited from qugar::impl::funcs::FuncWithAffineTransf< dim >
 FuncWithAffineTransf ()
 Default constructor. Creates and stores an identity transformation.
 FuncWithAffineTransf (const AffineTransf< dim > &transf)
 Constructs a new class storing the given transf.
Public Member Functions inherited from qugar::impl::DomainFunc< dim, 1 >
 DomainFunc ()=default
 Default constructor.
 DomainFunc (const DomainFunc &)=default
 Default copy constructor.
 DomainFunc (DomainFunc &&)=default
 Default move constructor.
DomainFuncoperator= (const DomainFunc &)=default
 Default copy assignment operator.
DomainFuncoperator= (DomainFunc &&)=default
 Default move assignment operator.
virtual ~DomainFunc ()=default
 Default virtual destructor.
virtual Value< realoperator() (const Point< dim > &point) const=0
 Evaluator operator.
virtual Value< Interval< dim > > operator() (const Point< dim, Interval< dim > > &point) const=0
 Evaluator operator.
virtual Gradient< realgrad (const Point< dim > &point) const=0
 Gradient evaluator operator.
virtual Gradient< Interval< dim > > grad (const Point< dim, Interval< dim > > &point) const=0
 Gradient evaluator operator.
virtual Hessian< realhessian (const Point< dim > &point) const=0
 Hessian evaluator operator.

Public Attributes

 declare_impl_func_virtual_interface

Private Attributes

std::shared_ptr< const ImplicitFunc< dim > > base_func_
 Base function to be transformed.

Additional Inherited Members

Public Types inherited from qugar::impl::DomainFunc< dim, 1 >
using Interval
 Algoim's interval alias.
using Value
 Value type.
using Gradient
 Gradient type.
using Hessian
 Hessian (symmetric type).
Static Public Attributes inherited from qugar::impl::DomainFunc< dim, 1 >
static const int num_hessian
 Number of Hessian (symmetric) components.
Protected Attributes inherited from qugar::impl::funcs::FuncWithAffineTransf< dim >
AffineTransf< dim > transf_
 Stored affine transformation.

Detailed Description

template<int dim>
class qugar::impl::funcs::TransformedFunction< dim >

Creates a new implicit function that is just a base function to which an affine transformation is applied.

Template Parameters
dimFunction's parametric direction.

Constructor & Destructor Documentation

◆ TransformedFunction()

template<int dim>
qugar::impl::funcs::TransformedFunction< dim >::TransformedFunction ( const std::shared_ptr< const ImplicitFunc< dim > > & base_func,
const AffineTransf< dim > & transf )

Constructs a new transformed function.

Parameters
base_funcBase function to be transformed.
transfAffine transformation to apply.

Member Data Documentation

◆ base_func_

template<int dim>
std::shared_ptr<const ImplicitFunc<dim> > qugar::impl::funcs::TransformedFunction< dim >::base_func_
private

Base function to be transformed.

◆ declare_impl_func_virtual_interface

template<int dim>
qugar::impl::funcs::TransformedFunction< dim >::declare_impl_func_virtual_interface

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