|
Plugins
|
Contact conditions for small strain mechanical applications. More...
#include <contact.h>
Inheritance diagram for ug::SmallStrainMechanics::ContactSmallStrainMechanics< TDomain, TGridFunction >:Public Types | |
| typedef base_type::domain_type | domain_type |
| Domain type. | |
Public Types inherited from ug::ILagrangeMultiplierDisc< TDomain, TGridFunction > | |
| typedef TDomain | domain_type |
Public Member Functions | |
| template<typename TSideElem , typename TIterator > | |
| void | contact_forces_elem (TIterator iterBegin, TIterator iterEnd, const TGridFunction &u, TGridFunction &contactForce, vector< DoFIndex > vActiveSetGlob) |
| ContactSmallStrainMechanics (SmartPtr< SmallStrainMechanicsElemDisc< TDomain > > spLinElastPlast) | |
| virtual void | lagrange_multiplier (TGridFunction &lagMult, const TGridFunction &u, vector< DoFIndex > vActiveSet, vector< int > vActiveSubsets) |
| virtual | ~ContactSmallStrainMechanics () |
| Virtual destructor. | |
Public Member Functions inherited from ug::ILagrangeMultiplierDisc< TDomain, TGridFunction > | |
| ILagrangeMultiplierDisc () | |
| virtual void | lagrange_multiplier (TGridFunction &lagMult, const TGridFunction &u, std::vector< DoFIndex > vActiveSet, std::vector< int > vActiveSubsets)=0 |
| virtual | ~ILagrangeMultiplierDisc () |
Static Public Attributes | |
| static const int | dim = base_type::dim |
| World dimension. | |
Static Public Attributes inherited from ug::ILagrangeMultiplierDisc< TDomain, TGridFunction > | |
| static const int | dim |
Private Types | |
| typedef ILagrangeMultiplierDisc< TDomain, TGridFunction > | base_type |
| Base class type. | |
| typedef ContactSmallStrainMechanics< TDomain, TGridFunction > | this_type |
| own type | |
Private Attributes | |
| SmartPtr< SmallStrainMechanicsElemDisc< TDomain > > | m_spMechElemDisc |
| pointer to the element discretization | |
Contact conditions for small strain mechanical applications.
Begin of the considering contact conditions in a structural mechanical model for small strains. This implementation is based on active sets.
Still work in progress. A first introductive work for active sets and Lagrange multiplier can be found in:
References:
|
private |
Base class type.
| typedef base_type::domain_type ug::SmallStrainMechanics::ContactSmallStrainMechanics< TDomain, TGridFunction >::domain_type |
Domain type.
|
private |
own type
| ug::SmallStrainMechanics::ContactSmallStrainMechanics< TDomain, TGridFunction >::ContactSmallStrainMechanics | ( | SmartPtr< SmallStrainMechanicsElemDisc< TDomain > > | spLinElastPlast | ) |
|
inlinevirtual |
Virtual destructor.
| void ug::SmallStrainMechanics::ContactSmallStrainMechanics< TDomain, TGridFunction >::contact_forces_elem | ( | TIterator | iterBegin, |
| TIterator | iterEnd, | ||
| const TGridFunction & | u, | ||
| TGridFunction & | contactForce, | ||
| vector< DoFIndex > | vActiveSetGlob | ||
| ) |
References ug::AddLocalVector(), ug::CollectCornerCoordinates(), ug::LocalIndices::comp(), element_type(), ug::ReferenceElementProvider::get(), ug::GetLocalVector(), grid(), ug::LocalIndices::index(), ug::LocalVector::num_all_dof(), ug::LocalVector::num_all_fct(), ug::LocalVector::resize(), UG_LOG, and UG_THROW.
|
virtual |
References ug::DimensionOfSubset(), UG_LOG, and UG_THROW.
|
static |
World dimension.
|
private |
pointer to the element discretization