#include <internalconstraintdefinition.hpp>

Public Types | |
| typedef size_t | count_type |
| typedef unsigned int | index_type |
| typedef double | real_type |
|
typedef Eigen::SparseMatrix < double, Eigen::ColMajor > | TSparseMatrix |
|
typedef Eigen::DynamicSparseMatrix < double, Eigen::ColMajor > | TSparseMatrixRandom |
|
typedef Eigen::SparseVector < double > | TSparseVector |
| typedef Eigen::VectorXd | TVector |
|
typedef Eigen::Matrix< int, Eigen::Dynamic, 1 > | TVectorUint |
| typedef Eigen::Map< TVector > | TVectorView |
|
typedef std::pair< index_type, real_type > | TypeCoeffPair |
| typedef std::list< TypeCoeffPair > | TypeCoeffPairList |
|
typedef std::vector < TypeCoeffPairList > | TypeCoeffPairListVector |
| typedef std::vector< real_type > | TypeRealVector |
| typedef unsigned int | uint |
| typedef unsigned short | ushort |
Public Member Functions | |
| void | addConstraint (const TypeCoeffPairList &thecoeffs, const real_type &therhs) |
| adds a single constraint equation given by a list of pairs(coefficient,global dof id) and the right hand side | |
| void | addRestraint (const index_type &thedof, const real_type &value=0) |
| restraints the DOF given by its global idx to be zero | |
| void | addRestraintMechanicalDof (const index_type &part_index, const index_type &thenode, const index_type &localdof, const real_type &value=0) |
| restraints the DOF given by its node idx (and part) and its nodal idx to be zero | |
| void | clear () |
| deletes all constraint definitions | |
| void | createConstraintMatrix (const InternalConstraintDefinition &additional_constraints, TSparseMatrix &conre_matrix, TSparseVector &offset_slave_dofs) const |
| const TypeCoeffPairListVector & | getConstraintCoeffs () const |
| a getter for constraint_coeffs | |
| const TypeRealVector & | getConstraintRhs () const |
| a getter for constraint_rhs | |
| InternalConstraintDefinition (const DofHandler &thedofs) | |
Protected Member Functions | |
| TypeCoeffPairListVector & | setConstraintCoeffs () |
| a setter for constraint_coeffs | |
| TypeRealVector & | setConstraintRhs () |
| a setter for constraint_rhs | |
Protected Attributes | |
| TypeCoeffPairListVector | constraint_coeffs |
| TypeRealVector | constraint_rhs |
| the right hand sides of the constraint equations | |
| const DofHandler & | dofhandler |
| a reference to the refering dofhandler | |
| void sfem::mesh::InternalConstraintDefinition::createConstraintMatrix | ( | const InternalConstraintDefinition & | additional_constraints, | |
| TSparseMatrix & | conre_matrix, | |||
| TSparseVector & | offset_slave_dofs | |||
| ) | const |
creates the constraint relations in algebraic form, i.e. u_global = D*u_master+b The number of rows corresponds to the number of available (global) dofs, the number of columns is the number of active (master) dofs.
| additional_constraints | may be empty. It may contain additional consraint definitions to be added to conre-relations | |
| conre_matrix | will contain the matrix D | |
| offset_slave_dofs | will contain teh vector b |
TypeCoeffPairListVector sfem::mesh::InternalConstraintDefinition::constraint_coeffs [protected] |
the coefficients of the constraint matrix (each row is one constraint; indices refer to the global DOF id) one reads: sum_i coefficient_i*dof_i = rhs
1.5.6