#include <operatorinterpolation.hpp>
Global interpolation operator.
Public Member Functions | |
Constructors, destructor | |
OperatorInterpolation () | |
OperatorInterpolation (domain_space_ptrtype const &domainspace, dual_image_space_ptrtype const &imagespace, backend_ptrtype const &backend, InterpType const &interptype, bool ddmethod=false) | |
OperatorInterpolation (domain_space_ptrtype const &domainspace, dual_image_space_ptrtype const &imagespace, IteratorRange const &r, backend_ptrtype const &backend, InterpType const &interptype, bool ddmethod=false) | |
OperatorInterpolation (domain_space_ptrtype const &domainspace, dual_image_space_ptrtype const &imagespace, std::list< IteratorRange > const &r, backend_ptrtype const &backend, InterpType const &interptype, bool ddmethod=false) | |
OperatorInterpolation (OperatorInterpolation const &oi) | |
~OperatorInterpolation () | |
Accessors | |
WorldComm const & | worldCommFusion () const |
InterpType const & | interpolationType () const |
bool | isDomainMeshRelatedToImageMesh () const |
bool | isImageMeshRelatedToDomainMesh () const |
![]() | |
OperatorLinear & | add (T const &scalar, OperatorLinear const &ol) |
OperatorLinear & | add (T const &scalar, boost::shared_ptr< OperatorLinear > ol) |
void | apply (const domain_element< typename domain_element_type::value_type, Storage > &de, image_element_type &ie) const |
virtual void | apply (const domain_element_type &de, image_element_type &ie) const |
virtual void | apply (const typename domain_space_type::element_type &de, typename dual_image_space_type::element_type &ie) |
virtual void | apply (const domain_element_range_type &de, typename dual_image_space_type::element_type &ie) |
virtual void | apply (const typename domain_space_type::element_type &de, dual_image_element_range_type &ie) |
virtual void | apply (const domain_element_range_type &de, dual_image_element_range_type &ie) |
virtual void | apply (const domain_element_slice_type &de, typename dual_image_space_type::element_type &ie) |
virtual void | apply (const typename domain_space_type::element_type &de, dual_image_element_slice_type &ie) |
virtual void | apply (domain_element_slice_typede, dual_image_element_slice_typeie) |
virtual void | apply (const domain_element_range_type &de, dual_image_element_slice_type &ie) |
virtual void | apply (const domain_element_slice_type &de, dual_image_element_range_type &ie) |
virtual void | applyInverse (domain_element_type &de, const image_element_type &ie) |
apply the inverse of the operator: ![]() | |
backend_ptrtype & | backend () |
void | close () |
virtual double | energy (const typename domain_space_type::element_type &de, const typename dual_image_space_type::element_type &ie) const |
virtual void | init (domain_space_ptrtype domainSpace, dual_image_space_ptrtype dualImageSpace, backend_ptrtype backend, bool buildMatrix=true, size_type pattern=Pattern::COUPLED) |
domain_element_type | inv (RhsExpr const &rhs_expr) |
matrix_type & | mat () |
matrix_type const & | mat () const |
matrix_ptrtype const & | matPtr () const |
matrix_ptrtype & | matPtr () |
virtual void | matPtr (matrix_ptrtype &matrix) |
std::string | name () const |
T2 | operator() (T1 &de) |
T2 | operator() (boost::shared_ptr< T1 > de) |
OperatorLinear & | operator+ (boost::shared_ptr< OperatorLinear > ol) |
OperatorLinear & | operator+ (OperatorLinear const &ol) |
this_type & | operator+= (ExprT const &e) |
this_type & | operator= (ExprT const &e) |
this_type & | operator= (this_type const &m) |
OperatorLinear (OperatorLinear const &ol, bool deep_copy=false) | |
OperatorLinear (domain_space_ptrtype domainSpace, dual_image_space_ptrtype dualImageSpace, backend_ptrtype backend, bool buildMatrix=true, size_type pattern=Pattern::COUPLED) | |
size_type | pattern () |
void | setName (std::string name) |
![]() | |
domain_space_ptrtype | domainSpace () |
const domain_space_ptrtype | domainSpace () const |
dual_image_space_ptrtype | dualImageSpace () |
const dual_image_space_ptrtype | dualImageSpace () const |
Operator (domain_space_ptrtype domainSpace, dual_image_space_ptrtype dualImageSpace) | |
image_element_type | operator() (const domain_element_type &de) const |
void | setDomainSpace (domain_space_ptrtype const &domainspace) |
void | setDualImageSpace (dual_image_space_ptrtype const &dualImageSpace) |
Protected Member Functions | |
virtual void | update () |
Typedefs | |
typedef super::domain_space_type | domain_space_type |
typedef super::domain_space_ptrtype | domain_space_ptrtype |
typedef domain_space_type::mesh_type | domain_mesh_type |
typedef domain_mesh_type::element_type | domain_geoelement_type |
typedef domain_mesh_type::element_iterator | domain_mesh_element_iterator |
typedef super::backend_ptrtype | backend_ptrtype |
typedef super::dual_image_space_type | dual_image_space_type |
typedef super::dual_image_space_ptrtype | dual_image_space_ptrtype |
typedef dual_image_space_type::value_type | value_type |
typedef dual_image_space_type::mesh_type | image_mesh_type |
typedef image_mesh_type::element_type | image_geoelement_type |
typedef image_mesh_type::element_iterator | image_mesh_element_iterator |
typedef image_mesh_type::gm_type | image_gm_type |
typedef image_mesh_type::gm_ptrtype | image_gm_ptrtype |
typedef image_mesh_type::template gmc < vm::POINT >::type | image_gmc_type |
typedef image_mesh_type::template gmc < vm::POINT >::ptrtype | image_gmc_ptrtype |
typedef dual_image_space_type::dof_type | dof_type |
typedef dual_image_space_type::basis_type | image_basis_type |
typedef domain_space_type::basis_type | domain_basis_type |
typedef boost::tuples::template element< 0, IteratorRange > ::type | idim_type |
typedef boost::tuples::template element< 1, IteratorRange > ::type | iterator_type |
typedef IteratorRange | range_iterator |
typedef InterpType | interpolation_type |
typedef GraphCSR | graph_type |
typedef boost::shared_ptr < graph_type > | graph_ptrtype |
typedef matrix_node< typename image_mesh_type::value_type > ::type | matrix_node_type |
static const uint16_type | nLocalDofInDualImageElt |
Additional Inherited Members | |
![]() | |
typedef super::backend_ptrtype | backend_ptrtype |
typedef super::backend_type | backend_type |
typedef domain_space_type::template Element< typename domain_space_type::value_type, typename VectorUblas< typename domain_space_type::value_type > ::range::type > | domain_element_range_type |
typedef domain_space_type::template Element< typename domain_space_type::value_type, typename VectorUblas< typename domain_space_type::value_type > ::slice::type > | domain_element_slice_type |
typedef domain_space_type::element_type | domain_element_type |
typedef super::domain_space_ptrtype | domain_space_ptrtype |
typedef super::domain_space_type | domain_space_type |
typedef dual_image_space_type::template Element< typename dual_image_space_type::value_type, typename VectorUblas< typename dual_image_space_type::value_type > ::range::type > | dual_image_element_range_type |
typedef dual_image_space_type::template Element< typename dual_image_space_type::value_type, typename VectorUblas< typename dual_image_space_type::value_type > ::slice::type > | dual_image_element_slice_type |
typedef dual_image_space_type::element_type | dual_image_element_type |
typedef super::dual_image_space_ptrtype | dual_image_space_ptrtype |
typedef super::dual_image_space_type | dual_image_space_type |
typedef FsFunctionalLinear < ImageSpaceType > | image_element_type |
typedef boost::shared_ptr < matrix_type > | matrix_ptrtype |
typedef backend_type::sparse_matrix_type | matrix_type |
typedef Operator < DomainSpaceType, ImageSpaceType > | super_type |
typedef OperatorLinear < DomainSpaceType, ImageSpaceType > | this_type |
typedef backend_type::vector_ptrtype | vector_ptrtype |
typedef backend_type::vector_type | vector_type |
|
inline |
default constructor
Feel::OperatorInterpolation< DomainSpaceType, ImageSpaceType, IteratorRange, InterpType >::OperatorInterpolation | ( | domain_space_ptrtype const & | domainspace, |
dual_image_space_ptrtype const & | imagespace, | ||
backend_ptrtype const & | backend, | ||
InterpType const & | interptype, | ||
bool | ddmethod = false |
||
) |
Construction the global interpolation operator from domainspace
to imagespace
and represent it in matrix form using the backend backend
References Feel::elements().
|
inline |
copy constructor
|
static |