#include <itkFEMLoadBCMFC.h>
Inheritance diagram for itk::fem::LoadBCMFC:
Public Types | |
typedef LoadBCMFC | Self |
typedef Load | Superclass |
typedef Self * | Pointer |
typedef const Self * | ConstPointer |
typedef std::vector< MFCTerm > | LhsType |
Public Member Functions | |
virtual Baseclass::Pointer | Clone () const |
virtual int | ClassID () const |
LoadBCMFC () | |
LoadBCMFC (Element::ConstPointer element, int dof, vnl_vector< Element::Float > val) | |
virtual void | Read (std::istream &f, void *info) |
virtual void | Write (std::ostream &f) const |
Static Public Member Functions | |
Self::Pointer | New () |
Public Attributes | |
LhsType | lhs |
vnl_vector< Element::Float > | rhs |
int | Index |
Static Public Attributes | |
const int | CLID |
Friends | |
class | Solver |
These constraints are implemented using the Lagrange multiplier method. We treat displacement constraints (or essential boundary conditions, which are exactly the same but with less functionality) as a special kind of load on the system.
How to store data in a LoadBCMFC object... Suppose you want to impose the following constraint to the system:
0.5*u1x + 2.1*u5y = 10.0
u1x is the first DOF in the element with global number 1, and u5y is the second DOF in an element with GN=5.
... then use the following lines of code itk::LoadBCMFC m; m.lhs.push_back( LoadBCMFC::MFCTerm( elements.Find(1), 0, 0.5 ) ); m.lhs.push_back( LoadBCMFC::MFCTerm( elements.Find(5), 1, 2.1 ) ); m.rhs=10.0;
Definition at line 55 of file itkFEMLoadBCMFC.h.
|
Const pointer or SmartPointer to an object. Reimplemented from itk::fem::Load. Definition at line 57 of file itkFEMLoadBCMFC.h. |
|
Left hand side of the MFC constraint equation Definition at line 93 of file itkFEMLoadBCMFC.h. |
|
Pointer or SmartPointer to an object. Reimplemented from itk::fem::Load. Definition at line 57 of file itkFEMLoadBCMFC.h. |
|
Standard Self typedef. Reimplemented from itk::fem::Load. Definition at line 57 of file itkFEMLoadBCMFC.h. |
|
Standard Superclass typedef. Reimplemented from itk::fem::Load. Definition at line 57 of file itkFEMLoadBCMFC.h. |
|
Default constructor Definition at line 105 of file itkFEMLoadBCMFC.h. |
|
With this constructor, we can easy fix the global displacement dof given by node to a value val.
|
|
Virtual function to access the class ID Implements itk::fem::FEMLightObject. Definition at line 57 of file itkFEMLoadBCMFC.h. |
|
Create a new object from the existing one Implements itk::fem::FEMLightObject. |
|
Object creation in an itk compatible way Definition at line 57 of file itkFEMLoadBCMFC.h. |
|
read a LoadBCMFC object from input stream. Reimplemented from itk::fem::FEMLightObject. |
|
write a LoadBCMFC object to the output stream Reimplemented from itk::fem::FEMLightObject. |
|
Definition at line 127 of file itkFEMLoadBCMFC.h. |
|
Class ID for FEM object factory Definition at line 57 of file itkFEMLoadBCMFC.h. |
|
used internally by the Solver class Definition at line 126 of file itkFEMLoadBCMFC.h. |
|
Definition at line 94 of file itkFEMLoadBCMFC.h. |
|
Right hand side of the linear equation that defines the constraints. It is a vector so that implementation of BC on isotropic elements is easy. Which value is applied to the master force vector is defined by optional dim parameter (defaults to 0) in AssembleF function in solver. Definition at line 102 of file itkFEMLoadBCMFC.h. |