PottsElement< DIM > Class Template Reference

#include <PottsElement.hpp>

Inherits MutableElement< DIM, DIM >.

Collaboration diagram for PottsElement< DIM >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 PottsElement (unsigned index, const std::vector< Node< DIM > * > &rNodes)
 ~PottsElement ()
void AddNode (Node< DIM > *pNode, const unsigned &rIndex=UINT_MAX)
double GetAspectRatio ()

Private Member Functions

template<class Archive >
void serialize (Archive &archive, const unsigned int version)

Friends

class boost::serialization::access

Detailed Description

template<unsigned DIM>
class PottsElement< DIM >

An element class for use in the PottsMesh class.

The main difference between this and the Element class is that a PottsElement can have a variable number of nodes associated with it and these represent the lattice sites contained in the element. As they are just a collection of sites there is no concept of Element Dimension.

Definition at line 55 of file PottsElement.hpp.


Constructor & Destructor Documentation

template<unsigned DIM>
PottsElement< DIM >::PottsElement ( unsigned  index,
const std::vector< Node< DIM > * > &  rNodes 
) [inline]

Constructor.

Parameters:
index global index of the element
rNodes vector of Nodes associated with the element

Definition at line 45 of file PottsElement.cpp.

References MutableElement< DIM, DIM >::RegisterWithNodes().

template<unsigned DIM>
PottsElement< DIM >::~PottsElement (  )  [inline]

Destructor.

Definition at line 52 of file PottsElement.cpp.


Member Function Documentation

template<unsigned DIM>
void PottsElement< DIM >::AddNode ( Node< DIM > *  pNode,
const unsigned rIndex = UINT_MAX 
) [inline]

Add node to element. Note that we don't care about ordering in a potts element so just add it to the end of the mNodes vector.

Parameters:
pNode is a pointer to the new node
rIndex the location in this->mNodes to place node. Defaults to the end.

Definition at line 57 of file PottsElement.cpp.

References Node< SPACE_DIM >::AddElement(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::mIndex, and AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes.

template<unsigned DIM>
double PottsElement< DIM >::GetAspectRatio (  )  [inline]

Method to calculate the aspect ratio of the element. Currently only works on 2D

Returns:
the aspect ratio

Definition at line 67 of file PottsElement.cpp.

References EXCEPTION, AbstractElement< ELEMENT_DIM, SPACE_DIM >::GetNumNodes(), AbstractElement< ELEMENT_DIM, SPACE_DIM >::mNodes, and NEVER_REACHED.

template<unsigned DIM>
template<class Archive >
void PottsElement< DIM >::serialize ( Archive &  archive,
const unsigned int  version 
) [inline, private]

Serialize the object and its member variables.

Note that serialization of the mesh and cells is handled by load/save_construct_data.

Note also that member data related to writers is not saved - output must be set up again by the caller after a restart.

Parameters:
archive the archive
version the current version of this class

Reimplemented from MutableElement< DIM, DIM >.

Definition at line 73 of file PottsElement.hpp.


Friends And Related Function Documentation

template<unsigned DIM>
friend class boost::serialization::access [friend]

Needed for serialization.

Reimplemented from MutableElement< DIM, DIM >.

Definition at line 60 of file PottsElement.hpp.


The documentation for this class was generated from the following files:

Generated by  doxygen 1.6.2