#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