98 template <
typename TDomain,
typename TAlgebra>
133 m_spObs = obs; m_bObs =
true;
141 {m_spLagMultDisc = lagMultDisc;};
143 void prepare(function_type& u);
148 template <
typename TElem,
typename TIterator>
149 void active_index_elem(TIterator iterBegin,
150 TIterator iterEnd, function_type& u,
151 function_type& rhs, function_type& lagrangeMult);
154 bool active_index(function_type& u, function_type& rhs, function_type& lagrangeMult,
160 void lagrange_multiplier(function_type& lagrangeMult,
const function_type& u);
167 template <
typename TElem,
typename TIterator>
168 bool check_conv_elem(TIterator iterBegin,
169 TIterator iterEnd, function_type& u,
const function_type& lambda);
172 bool check_conv(function_type& u,
const function_type& lambda,
const size_t step);
178 template <
typename TElem,
typename TIterator>
179 void lagrange_mat_inv_elem(TIterator iterBegin,
182 void lagrange_mat_inv(
matrix_type& lagrangeMatInv);
Definition: smart_pointer.h:296
Definition: smart_pointer.h:108
Active Set method.
Definition: active_set.h:100
vector_type::value_type value_type
Type of algebra value.
Definition: active_set.h:112
ActiveSet()
constructor
Definition: active_set.h:125
void set_obstacle(ConstSmartPtr< function_type > obs)
sets obstacle gridfunction, which limits the solution u
Definition: active_set.h:132
GridFunction< TDomain, TAlgebra > function_type
Type of grid function.
Definition: active_set.h:115
vector< DoFIndex > m_vActiveSetGlobOld
vector remembering the active set of global DoFIndices
Definition: active_set.h:211
SmartPtr< DoFDistribution > m_spDD
pointer to the DofDistribution on the whole domain
Definition: active_set.h:186
algebra_type::matrix_type matrix_type
Type of algebra matrix.
Definition: active_set.h:106
void set_lagrange_multiplier_disc(SmartPtr< ILagrangeMultiplierDisc< TDomain, function_type > > lagMultDisc)
sets a discretization in order to compute the lagrange multiplier
Definition: active_set.h:139
TAlgebra algebra_type
Type of algebra.
Definition: active_set.h:103
SmartPtr< TDomain > m_spDom
Definition: active_set.h:187
domain_traits< TDomain::dim >::grid_base_object TBaseElem
base element type of associated domain
Definition: active_set.h:118
vector< DoFIndex > m_vActiveSetGlob
vector of the current active set of global DoFIndices
Definition: active_set.h:209
algebra_type::vector_type vector_type
Type of algebra vector.
Definition: active_set.h:109
bool m_bObs
Definition: active_set.h:194
SmartPtr< ILagrangeMultiplierDisc< TDomain, function_type > > m_spLagMultDisc
pointer to a lagrangeMultiplier-Disc
Definition: active_set.h:197
ConstSmartPtr< function_type > m_spObs
number of functions
Definition: active_set.h:193
vector< int > m_vActiveSubsets
vector of possible active subsets
Definition: active_set.h:200
represents numerical solutions on a grid using an algebraic vector
Definition: grid_function.h:121
Definition: lagrange_multiplier_disc_interface.h:46
Definition: smart_pointer.h:814
CPUAlgebra::matrix_type matrix_type
CPUAlgebra::vector_type vector_type
T value_type
Definition: sparsematrix_interface.h:2
Definition: domain_traits.h:53