Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::fem::LoadBCMFC Class Reference

Generic linear multi freedom displacement constraint in global coordinate system. More...

#include <itkFEMLoadBCMFC.h>

Inheritance diagram for itk::fem::LoadBCMFC:

Inheritance graph
[legend]
Collaboration diagram for itk::fem::LoadBCMFC:

Collaboration graph
[legend]
List of all members.

Public Types

typedef LoadBCMFC Self
typedef Load Superclass
typedef SelfPointer
typedef const SelfConstPointer
typedef std::vector< MFCTermLhsType

Public Methods

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 Methods

Self::Pointer New ()

Public Attributes

LhsType lhs
vnl_vector< Element::Floatrhs
int Index

Static Public Attributes

const int CLID

Friends

class Solver

Detailed Description

Generic linear multi freedom displacement constraint in global coordinate system.

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.


Member Typedef Documentation

typedef const Self* itk::fem::LoadBCMFC::ConstPointer
 

Const pointer or SmartPointer to an object.

Reimplemented from itk::fem::Load.

Definition at line 57 of file itkFEMLoadBCMFC.h.

typedef std::vector<MFCTerm> itk::fem::LoadBCMFC::LhsType
 

Left hand side of the MFC constraint equation

Definition at line 93 of file itkFEMLoadBCMFC.h.

typedef Self* itk::fem::LoadBCMFC::Pointer
 

Pointer or SmartPointer to an object.

Reimplemented from itk::fem::Load.

Definition at line 57 of file itkFEMLoadBCMFC.h.

typedef LoadBCMFC itk::fem::LoadBCMFC::Self
 

Standard Self typedef.

Reimplemented from itk::fem::Load.

Definition at line 57 of file itkFEMLoadBCMFC.h.

typedef Load itk::fem::LoadBCMFC::Superclass
 

Standard Superclass typedef.

Reimplemented from itk::fem::Load.

Definition at line 57 of file itkFEMLoadBCMFC.h.


Constructor & Destructor Documentation

itk::fem::LoadBCMFC::LoadBCMFC   [inline]
 

Default constructor

Definition at line 105 of file itkFEMLoadBCMFC.h.

itk::fem::LoadBCMFC::LoadBCMFC Element::ConstPointer    element,
int    dof,
vnl_vector< Element::Float   val
 

With this constructor, we can easy fix the global displacement dof given by node to a value val.

Parameters:
element  Pointer to an element, which holds a displacements that needs to be fixed.
dof  Local DOF number in an element.
val  The fixed value of a DOF.


Member Function Documentation

virtual int itk::fem::LoadBCMFC::ClassID   const [inline, virtual]
 

Virtual function to access the class ID

Implements itk::fem::FEMLightObject.

Definition at line 57 of file itkFEMLoadBCMFC.h.

virtual Baseclass::Pointer itk::fem::LoadBCMFC::Clone   const [virtual]
 

Create a new object from the existing one

Implements itk::fem::FEMLightObject.

Self::Pointer itk::fem::LoadBCMFC::New void    [inline, static]
 

Object creation in an itk compatible way

Definition at line 57 of file itkFEMLoadBCMFC.h.

virtual void itk::fem::LoadBCMFC::Read std::istream &    f,
void *    info
[virtual]
 

read a LoadBCMFC object from input stream.

Reimplemented from itk::fem::FEMLightObject.

virtual void itk::fem::LoadBCMFC::Write std::ostream &    f const [virtual]
 

write a LoadBCMFC object to the output stream

Reimplemented from itk::fem::FEMLightObject.


Friends And Related Function Documentation

friend class Solver [friend]
 

Definition at line 127 of file itkFEMLoadBCMFC.h.


Member Data Documentation

const int itk::fem::LoadBCMFC::CLID [static]
 

Class ID for FEM object factory

Definition at line 57 of file itkFEMLoadBCMFC.h.

int itk::fem::LoadBCMFC::Index
 

used internally by the Solver class

Definition at line 126 of file itkFEMLoadBCMFC.h.

LhsType itk::fem::LoadBCMFC::lhs
 

Definition at line 94 of file itkFEMLoadBCMFC.h.

vnl_vector<Element::Float> itk::fem::LoadBCMFC::rhs
 

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.


The documentation for this class was generated from the following file:
Generated at Fri May 21 01:51:22 2004 for ITK by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2000