CLHEP VERSION Reference Documentation
   
CLHEP Home Page     CLHEP Documentation     CLHEP Bug Reports

GenericFunctions/FunctionProduct.hh
Go to the documentation of this file.
1// -*- C++ -*-
2// $Id: FunctionProduct.hh,v 1.2 2003/09/06 14:04:13 boudreau Exp $
3//--------------------------FunctionProduct---------------------------------//
4// //
5// FunctionProduct, result of multiplication of two functions. //
6// Joe Boudreau, Petar Maksimovic, November 1999 //
7// //
8//--------------------------------------------------------------------------//
9
10#ifndef FunctionProduct_h
11#define FunctionProduct_h 1
13namespace Genfun {
14
20
22
23 public:
24
25 // Constructor
26 FunctionProduct(const AbsFunction *arg1, const AbsFunction *arg2);
27
28 // Copy constructor
30
31 // Destructor
33
34 // Retreive function value
35 virtual double operator ()(double argument) const;
36 virtual double operator ()(const Argument & a) const;
37
38 // Dimensionality
39 virtual unsigned int dimensionality() const;
40
41 // Derivative.
42 Derivative partial (unsigned int) const;
43
44 // Does this function have an analytic derivative?
45 virtual bool hasAnalyticDerivative() const {return true;}
46
47 private:
48
49 // It is illegal to assign a FunctionProduct
50 const FunctionProduct & operator=(const FunctionProduct &right);
51
52 const AbsFunction *_arg1;
53 const AbsFunction *_arg2;
54 };
55} // namespace Genfun
56
57#endif
#define FUNCTION_OBJECT_DEF(classname)
Derivative partial(unsigned int) const
virtual unsigned int dimensionality() const
FunctionProduct(const AbsFunction *arg1, const AbsFunction *arg2)
FunctionProduct(const FunctionProduct &right)
virtual double operator()(double argument) const