// @(#)root/mathmore:$Id: AllIntegrationTypes.h 24403 2008-06-20 08:31:10Z moneta $
// Author: Magdalena Slawinska 10/2007
/**********************************************************************
* *
* Copyright (c) 2007 ROOT Foundation, CERN/PH-SFT *
* *
* *
**********************************************************************/
// Integration types for
// one and multidimensional integration
// eith a common interface
#ifndef ROOT_Math_AllIntegrationTypes
#define ROOT_Math_AllIntegrationTypes
namespace ROOT {
namespace Math {
// type of integration
//for 1-dim integration
namespace IntegrationOneDim {
/**
enumeration specifying the integration types.
- kGAUSS: simple Gauss integration method with fixed rule
- kNONADAPTIVE : to be used for smooth functions
- kADAPTIVE : to be used for general functions without singularities.
- kADAPTIVESINGULAR: default adaptive integration type which can be used in the case of the presence of singularities.
@ingroup Integration
*/
enum Type { kGAUSS, kADAPTIVE, kADAPTIVESINGULAR, kNONADAPTIVE};
}
//for multi-dim integration
namespace IntegrationMultiDim {
/**
enumeration specifying the integration types.
- ADAPTIVE : adaptive multi-dimensional integration
- PLAIN MC integration
- MISER MC integration
- VEGAS MC integration
@ingroup MCIntegration
*/
enum Type {kADAPTIVE, kVEGAS, kMISER, kPLAIN};
}
} // namespace Math
} // namespace ROOT
#endif /* ROOT_Math_AllIntegrationTypes */