typedefs.h

Go to the documentation of this file.
00001 /////////////////////////////////////////////////////////////////////////////
00002 ///
00003 /// @file typedefs.h
00004 ///
00005 /// Customizable data types for the Conley-Morse graphs computation program.
00006 /// This file contains the definitions of various types
00007 /// used in the program "cmgraphs.cpp".
00008 /// The experienced end user is supposed to edit this file if he or she
00009 /// finds it necessary to tweak the program settings or to use the code
00010 /// for customized computations.
00011 ///
00012 /// @author Pawel Pilarczyk
00013 ///
00014 /////////////////////////////////////////////////////////////////////////////
00015 
00016 // Copyright (C) 1997-2008 by Pawel Pilarczyk.
00017 //
00018 // This file is part of my research software package.  This is free software;
00019 // you can redistribute it and/or modify it under the terms of the GNU
00020 // General Public License as published by the Free Software Foundation;
00021 // either version 2 of the License, or (at your option) any later version.
00022 //
00023 // This software is distributed in the hope that it will be useful,
00024 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00025 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00026 // GNU General Public License for more details.
00027 //
00028 // You should have received a copy of the GNU General Public License along
00029 // with this software; see the file "license.txt".  If not, write to the
00030 // Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
00031 // MA 02111-1307, USA.
00032 
00033 // Started on February 11, 2008. Last revision: April 8, 2008.
00034 
00035 
00036 #ifndef _CMGRAPHS_TYPEDEFS_H_
00037 #define _CMGRAPHS_TYPEDEFS_H_
00038 
00039 
00040 // include selected header files from the CHomP library
00041 #include "chomp/cubes/pointset.h"
00042 #include "chomp/cubes/cube.h"
00043 #include "chomp/struct/hashsets.h"
00044 
00045 // include local header files
00046 #include "config.h"
00047 #include "conindex.h"
00048 #include "morsedec.h"
00049 
00050 
00051 // --------------------------------------------------
00052 // ---------- phase space grid structures -----------
00053 // --------------------------------------------------
00054 
00055 /// The type of coordinates of cubes in the phase space.
00056 typedef short int spcCoord;
00057 
00058 /// The type of a cube in the phase space.
00059 /// Note: This type must be different from the type of a cube
00060 /// in the set of parameters.
00061 typedef chomp::homology::tCubeBase<spcCoord> spcCube;
00062 
00063 /// The type of a set of cubes in the phase space.
00064 typedef chomp::homology::hashedset<spcCube> spcCubes;
00065 
00066 /// The type of a combinatorial cubical multivalued map.
00067 typedef chomp::homology::mvmap<spcCube,spcCube> spcMap;
00068 
00069 /// The type of a rectangle used to iterate sets of cubes in the phase space.
00070 typedef chomp::homology::tRectangle<spcCoord> spcRect;
00071 
00072 /// The base of points for cubes in the phase space.
00073 typedef chomp::homology::tPointBase<spcCoord> spcBase;
00074 
00075 
00076 // --------------------------------------------------
00077 // ----------- parameter grid structures ------------
00078 // --------------------------------------------------
00079 
00080 /// The type of coordinates of cubes in the set of parameters.
00081 typedef short int parCoord;
00082 
00083 /// The type of a cube in the set of parameters.
00084 /// Note: This type must be different from the type of a cube
00085 /// in the phase space.
00086 typedef chomp::homology::tCubeFix<paramDim,parCoord> parCube;
00087 
00088 /// The type of a set of cubes in the set of parameters.
00089 typedef chomp::homology::hashedset<parCube> parCubes;
00090 
00091 /// The type of a rectangle used to iterate sets of cubes of parameters.
00092 typedef chomp::homology::tRectangle<parCoord> parRect;
00093 
00094 
00095 // --------------------------------------------------
00096 // ----------- dynamical data structures ------------
00097 // --------------------------------------------------
00098 
00099 /// The type of a map for the computation of the Conley index.
00100 typedef MapComputation<theMapType,spcCube,spcCubes> theCubMapType;
00101 
00102 /// The type of the index pair for the computation of the Conley index.
00103 typedef IndexPair<theCubMapType,spcCube,spcCubes> theIndexPairType;
00104 
00105 /// The type of the Conley index.
00106 typedef ConleyIndex<theIndexPairType> theConleyIndexType;
00107 
00108 /// The type of the Morse decomposition.
00109 typedef MorseDecomposition<theCubMapType,spcCube,spcCubes>
00110         theMorseDecompositionType;
00111 
00112 
00113 #endif // _CMGRAPHS_TYPEDEFS_H_
00114 

Generated on Sun Mar 28 17:47:58 2010 for The Conley-Morse Graphs Software by  doxygen 1.5.3