#include <operatorinterpolation.hpp>
Global interpolation operator.
Inheritance diagram for Feel::OperatorInterpolation< DomainSpaceType, ImageSpaceType, IteratorRange, InterpType >: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 |
Public Member Functions inherited from Feel::OperatorLinear< DomainSpaceType, ImageSpaceType > | |
| 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) |
Public Member Functions inherited from Feel::Operator< DomainSpaceType, ImageSpaceType > | |
| 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 | |
Public Types inherited from Feel::OperatorLinear< DomainSpaceType, ImageSpaceType > | |
| 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 |
Public Types inherited from Feel::Operator< DomainSpaceType, ImageSpaceType > | |
|
typedef boost::shared_ptr < backend_type > | backend_ptrtype |
| typedef Backend< value_type > | backend_type |
|
typedef domain_space_type::element_type | domain_element_type |
|
typedef boost::shared_ptr < domain_space_type > | domain_space_ptrtype |
| typedef DomainSpaceType | domain_space_type |
|
typedef boost::shared_ptr < dual_image_space_type > | dual_image_space_ptrtype |
| typedef ImageSpaceType | dual_image_space_type |
|
typedef FsFunctionalLinear < dual_image_space_type > | image_element_type |
|
typedef domain_space_type::value_type | value_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 |
1.8.5