CMS 3D CMS Logo

funct::ConvolutionStruct< A, B, Integrator > Class Template Reference

#include <PhysicsTools/Utilities/interface/Convolution.h>

List of all members.

Public Member Functions

 ConvolutionStruct (const A &a, const B &b, double min, double max, const Integrator &integrator)
double operator() (double x) const

Private Attributes

double delta_
function f_
Integrator integrator_
double max_
double min_

Classes

struct  function


Detailed Description

template<typename A, typename B, typename Integrator>
class funct::ConvolutionStruct< A, B, Integrator >

Definition at line 8 of file Convolution.h.


Constructor & Destructor Documentation

template<typename A, typename B, typename Integrator>
funct::ConvolutionStruct< A, B, Integrator >::ConvolutionStruct ( const A a,
const B b,
double  min,
double  max,
const Integrator &  integrator 
) [inline]

Definition at line 11 of file Convolution.h.

References edm::errors::Configuration.

00012                                                                              : 
00013       f_(a, b), min_(min), max_(max), integrator_(integrator) { 
00014       if(max < min)
00015         throw edm::Exception(edm::errors::Configuration)
00016           << "Convolution: min must be smaller than max\n"; 
00017     }


Member Function Documentation

template<typename A, typename B, typename Integrator>
double funct::ConvolutionStruct< A, B, Integrator >::operator() ( double  x  )  const [inline]

Definition at line 18 of file Convolution.h.

References funct::ConvolutionStruct< A, B, Integrator >::f_, funct::ConvolutionStruct< A, B, Integrator >::integrator_, funct::ConvolutionStruct< A, B, Integrator >::max_, funct::ConvolutionStruct< A, B, Integrator >::min_, and funct::ConvolutionStruct< A, B, Integrator >::function::setX().

00018                                       {
00019       f_.setX(x);
00020       return integrator_(f_, x - max_, x - min_);
00021     }


Member Data Documentation

template<typename A, typename B, typename Integrator>
double funct::ConvolutionStruct< A, B, Integrator >::delta_ [private]

Definition at line 35 of file Convolution.h.

template<typename A, typename B, typename Integrator>
function funct::ConvolutionStruct< A, B, Integrator >::f_ [private]

Definition at line 34 of file Convolution.h.

Referenced by funct::ConvolutionStruct< A, B, Integrator >::operator()().

template<typename A, typename B, typename Integrator>
Integrator funct::ConvolutionStruct< A, B, Integrator >::integrator_ [private]

Definition at line 36 of file Convolution.h.

Referenced by funct::ConvolutionStruct< A, B, Integrator >::operator()().

template<typename A, typename B, typename Integrator>
double funct::ConvolutionStruct< A, B, Integrator >::max_ [private]

Definition at line 35 of file Convolution.h.

Referenced by funct::ConvolutionStruct< A, B, Integrator >::operator()().

template<typename A, typename B, typename Integrator>
double funct::ConvolutionStruct< A, B, Integrator >::min_ [private]

Definition at line 35 of file Convolution.h.

Referenced by funct::ConvolutionStruct< A, B, Integrator >::operator()().


The documentation for this class was generated from the following file:
Generated on Tue Jun 9 18:47:01 2009 for CMSSW by  doxygen 1.5.4