Machine Learning Library
Public Member Functions | Public Attributes | List of all members
CCartesianTopology< Type > Class Template Reference

Topology class for n dimensional cartesian grid. More...

#include <CSOM.h>

Inheritance diagram for CCartesianTopology< Type >:
CSomTopology< Type >

Public Member Functions

 CCartesianTopology (int iNodes, vector< int > &rviNbUnits)
 
virtual ~CCartesianTopology ()
 
void getInfo (vector< int > &viDims)
 
int translateGrid (float *pfTrans, float *pfTarget, int iMode=0)
 Translates grid structure. More...
 
void train (CDataset< Type > &rtTrainSet, CSOM< Type > *pSOM)
 Use topology specific training algorithm to build SOM. More...
 
void buildDomains ()
 
int getNumOutbounds (int iNode, int iK=0)
 
- Public Member Functions inherited from CSomTopology< Type >
 CSomTopology (int iNumNodes)
 
virtual ~CSomTopology ()
 
void setNodePosition (int i, CVector< double > &rtPos)
 
const CVector< double > & getNodePosition (int i)
 
const CVector< double > & getCenterPosition ()
 
void addLink (int iFrom, int iTo)
 
int getNumNeighbours (int i)
 
int getNumDomains ()
 
void addDomain (int iStart, int iEnd)
 
int getDomainStart (int iDomain)
 
int getDomainEnd (int iDomain)
 
int getDomainSize (int iDomain)
 
int getDomainOfNode (int iNode)
 
virtual void trainGrowing (CDataset< Type > &rtTrainSet, CSOM< Type > *pSOM, float fGrowParam)
 
int getNeighbour (int iNode, int iPos)
 
int getCenterNode (bool bVisibleNodes)
 
int getType ()
 Returns type of topology. More...
 
void setType (int iNewType)
 
virtual void setParameter (float *pfParam)
 Sets parameters. More...
 
int getGeometrySize ()
 
int getGeometryPoint (int iPoint)
 
virtual int getNumPolyLines ()
 
virtual bool getPolyLine (int iLine, int &riStart, int &riEnd)
 

Public Attributes

vector< int > viDimensions
 
- Public Attributes inherited from CSomTopology< Type >
vector< bool > vbExpand
 each node possible carries an expand attribute More...
 

Additional Inherited Members

- Protected Attributes inherited from CSomTopology< Type >
int iType
 type of lattice topology More...
 
vector< vector< int > > vvNeighbours
 each node has a list of neighbours More...
 
CDataset< double > tNodes
 dataset of node coordinates More...
 
CDenseVector< double > tCenter
 vector describing topology center More...
 
vector< int > viGeometry
 geometry data for VTK More...
 
vector< int > viVisibleNode
 list of currently visible nodes More...
 
vector< int > viVisiblePos
 each visible node points to its "real" node More...
 
int iCenterNode
 
int iOldCenterNode
 
int iVisibleNodesCenter
 
int iNumVisibleNodes
 
vector< pair< int, int > > vDomains
 SOM area might consist of several domains. More...
 

Detailed Description

template<class Type>
class CCartesianTopology< Type >

Topology class for n dimensional cartesian grid.

Constructor & Destructor Documentation

template<class Type >
CCartesianTopology< Type >::CCartesianTopology ( int  iNodes,
vector< int > &  rviNbUnits 
)
template<class Type >
virtual CCartesianTopology< Type >::~CCartesianTopology ( )
inlinevirtual

Member Function Documentation

template<class Type >
void CCartesianTopology< Type >::buildDomains ( )
virtual

Reimplemented from CSomTopology< Type >.

template<class Type >
void CCartesianTopology< Type >::getInfo ( vector< int > &  viDims)
virtual

Returns dimension information

Parameters
viDimsReference to vector. For a two dimensional lattice structure viDims should contain two vector elements. Each element denotes the number of nodes along that dimension.

Reimplemented from CSomTopology< Type >.

template<class Type >
int CCartesianTopology< Type >::getNumOutbounds ( int  iNode,
int  iK = 0 
)
inlinevirtual

Reimplemented from CSomTopology< Type >.

template<class Type >
void CCartesianTopology< Type >::train ( CDataset< Type > &  rtTrainSet,
CSOM< Type > *  pSOM 
)
inlinevirtual

Use topology specific training algorithm to build SOM.

Reimplemented from CSomTopology< Type >.

References CSOM< Type >::train().

template<class Type >
int CCartesianTopology< Type >::translateGrid ( float *  pfTrans,
float *  pfTarget,
int  iMode = 0 
)
virtual

Translates grid structure.

Reimplemented from CSomTopology< Type >.

Member Data Documentation

template<class Type >
vector<int> CCartesianTopology< Type >::viDimensions

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