Classes | Typedefs | Functions

unifexp Namespace Reference
[Unifexp]

This namespace contains all the classes and functions defined in the Uniform Expansion project files. More...

Classes

class  bitVector
 This class defines a bit vector of fixed length. More...
class  Coordinator
 An object of this class coordinates a series of computations for the Uniform Expansion program. More...
class  mapCubic
 This class defines the cubic map -x^3 + 3x - a on [-4,4] without using interval arithmetic. More...
class  mapCubicIntv
 This class defines the cubic map -x^3 + 3x - a on [-4,4] with the usage of interval arithmetic. More...
class  mapQuadr
 This class defines the quadratic map f(x)=x^2-a without using interval arithmetic. More...
class  mapQuadrIntv
 This class defines the quadratic map with the use of interval arithmetic. More...
class  mapType
 This is an abstract map type. More...
class  mapTypes
 This class gathers all the available map types and allows to select a map class object by its name. More...
class  mapUnimodal
 This class defines the unimodal map "2 |x|^gamma - a" on [-1,1] without using interval arithmetic. More...
class  mapUnimodalIntv
 This class defines the unimodal map "2 |x|^gamma - a" on [-1,1] with the usage of interval arithmetic. More...
class  partCritical
 A critical orbit based partition type. More...
class  partDerivative
 A derivative-based partition type. More...
class  partSegmented
 A segmented partition type. More...
class  partType
 An abstract partition type. More...
class  partTypes
 This class gathers all the available partition types and allows to select a partition class object by its name. More...
class  partUniform
 A uniform partition type. More...
class  tRounding
 A class for rounding operations which uses the BOOST library. More...
class  Worker
 The worker class that processes single chunks of data. More...

Typedefs

typedef capd::DInterval IntervalType
 The type of an interval (from the CAPD library 2.9/3.0 beta).

Functions

template<class wType , class numType >
void createGraph (chomp::homology::diGraph< wType > &g, const mapType< numType > &theMap, const partType< numType > &thePart, int partCount, std::vector< int > &critImages)
 Computes the images of intervals in the partition and fills in the corresponding weighted graph.
template<class numType >
void findLambdaC (const numType &delta, const mapType< numType > &theMap, partType< numType > &thePart, int partCount, numType *lambda, numType *logC, numType *lambda0, int rigorous, int sparseGraph)
 Computes lambda, C, and lambda0 with the given partition and for the given map.
template<class numType >
void findDeltaBisection (numType lambdaMin, numType resolution, const mapType< numType > &theMap, partType< numType > &thePart, int partCount, numType &deltaBad, numType &deltaGood, bool considerPaths, int rigorous, int sparseGraph)
 Finds a possibly small value of delta using the bisection method.
void resetRounding ()
 Resets the rounding switches of the processor and sets rounding mode to the default one (to the nearest).

Detailed Description

This namespace contains all the classes and functions defined in the Uniform Expansion project files.


Typedef Documentation

typedef capd::DInterval unifexp::IntervalType

The type of an interval (from the CAPD library 2.9/3.0 beta).

Definition at line 53 of file intvcapd.h.


Function Documentation

template<class wType , class numType >
void unifexp::createGraph ( chomp::homology::diGraph< wType > &  g,
const mapType< numType > &  theMap,
const partType< numType > &  thePart,
int  partCount,
std::vector< int > &  critImages 
) [inline]

Computes the images of intervals in the partition and fills in the corresponding weighted graph.

Fills out the table of images of critical neighborhoods.

Definition at line 55 of file graphs.h.

Referenced by findLambdaC().

template<class numType >
void unifexp::findDeltaBisection ( numType  lambdaMin,
numType  resolution,
const mapType< numType > &  theMap,
partType< numType > &  thePart,
int  partCount,
numType &  deltaBad,
numType &  deltaGood,
bool  considerPaths,
int  rigorous,
int  sparseGraph 
) [inline]

Finds a possibly small value of delta using the bisection method.

The initial values of the arguments of this function are ignored. The actual computations are done for log(1/delta), and the accuracy is applied to these rescaled numbers. The bisection method is used until the requested accuracy has been reached, and the two returned values contain delta that is too small, and delta that is still good.

Definition at line 298 of file graphs.h.

References findLambdaC().

Referenced by unifexp::Worker::Process().

template<class numType >
void unifexp::findLambdaC ( const numType &  delta,
const mapType< numType > &  theMap,
partType< numType > &  thePart,
int  partCount,
numType *  lambda,
numType *  logC,
numType *  lambda0,
int  rigorous,
int  sparseGraph 
) [inline]

Computes lambda, C, and lambda0 with the given partition and for the given map.

Does not compute those values whose pointers are set to 0.

Definition at line 123 of file graphs.h.

References createGraph().

Referenced by findDeltaBisection(), and unifexp::Worker::Process().

void unifexp::resetRounding (  ) [inline]

Resets the rounding switches of the processor and sets rounding mode to the default one (to the nearest).

It is necessary in some cases, e.g., if the CAPD leaves incorrect rounding mode after doing some interval operations. If the "filib" interval library is used then this function does nothing.

Definition at line 60 of file intvcapd.h.

Referenced by unifexp::mapUnimodalIntv< numType >::image(), unifexp::mapQuadrIntv< numType >::image(), unifexp::mapCubicIntv< numType >::image(), unifexp::mapUnimodalIntv< numType >::minLogDerivative(), unifexp::mapQuadrIntv< numType >::minLogDerivative(), and unifexp::mapCubicIntv< numType >::minLogDerivative().