33 #ifndef __H__UG__LIB_DISC__OPERATOR__LINEAR_OPERATOR__STD_INJECTION__
34 #define __H__UG__LIB_DISC__OPERATOR__LINEAR_OPERATOR__STD_INJECTION__
58 template <
typename TDomain,
typename TAlgebra>
97 template <
typename TElem>
Definition: smart_pointer.h:108
base class for approximation spaces without type of algebra or dof distribution
Definition: approximation_space.h:279
Definition: dof_distribution.h:51
Definition: grid_level.h:42
interface for transfer routines
Definition: transfer_interface.h:50
Wrapper for sequential matrices to handle them in parallel.
Definition: parallel_matrix.h:65
Definition: std_injection.h:61
virtual SmartPtr< ITransferOperator< TDomain, TAlgebra > > clone()
clones the operator
Definition: std_injection_impl.h:342
void set_identity_on_pure_surface(matrix_type &mat, const DoFDistribution &coarseDD, const DoFDistribution &fineDD)
Definition: std_injection_impl.h:169
SmartPtr< ApproximationSpace< TDomain > > m_spApproxSpace
the underlying approximation space
Definition: std_injection.h:122
TDomain domain_type
Type of Domain.
Definition: std_injection.h:76
matrix_type m_matrix
matrix used for projection
Definition: std_injection.h:119
virtual void prolongate(vector_type &uFine, const vector_type &uCoarse)
Project uFine to uCoarse; uCoarse = P(uFine);.
Definition: std_injection_impl.h:292
StdInjection()
Constructor.
Definition: std_injection.h:80
virtual void init()
Init operator.
Definition: std_injection_impl.h:246
bool m_bInit
init flag
Definition: std_injection.h:131
ITransferOperator< TDomain, TAlgebra > base_type
Type of base class.
Definition: std_injection.h:64
virtual void do_restrict(vector_type &uCoarse, const vector_type &uFine)
Apply Transposed Operator u = L^T*f.
Definition: std_injection_impl.h:315
GridLevel m_fineLevel
fine level of approximation space
Definition: std_injection.h:125
StdInjection(SmartPtr< ApproximationSpace< TDomain > > approxSpace)
Constructor.
Definition: std_injection.h:83
TAlgebra algebra_type
Type of algebra.
Definition: std_injection.h:67
virtual ~StdInjection()
virtual Destructor
Definition: std_injection.h:91
TAlgebra::vector_type vector_type
Type of Vector.
Definition: std_injection.h:70
GridLevel m_coarseLevel
coarse level of approximation space
Definition: std_injection.h:128
void set_approximation_space(SmartPtr< ApproximationSpace< TDomain > > approxSpace)
Set Approximation Space.
Definition: std_injection_impl.h:228
TAlgebra::matrix_type matrix_type
Type of Vector.
Definition: std_injection.h:73
void set_levels(GridLevel coarseLevel, GridLevel fineLevel)
Set approximation level.
Definition: std_injection_impl.h:235
CPUAlgebra::vector_type vector_type