File indexing completed on 2025-01-18 09:54:35
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #ifndef FunctionDirectProduct_h
0014 #define FunctionDirectProduct_h 1
0015 #include "CLHEP/GenericFunctions/AbsFunction.hh"
0016
0017 namespace Genfun {
0018
0019
0020
0021
0022
0023 class FunctionDirectProduct : public AbsFunction {
0024
0025 FUNCTION_OBJECT_DEF(FunctionDirectProduct)
0026
0027 public:
0028
0029
0030 FunctionDirectProduct(const AbsFunction *arg1, const AbsFunction *arg2);
0031
0032
0033 FunctionDirectProduct(const FunctionDirectProduct &right);
0034
0035
0036 virtual ~FunctionDirectProduct();
0037
0038
0039 virtual double operator ()(double argument) const override;
0040 virtual double operator ()(const Argument & argument) const override;
0041
0042
0043 virtual unsigned int dimensionality() const override;
0044
0045
0046 Derivative partial (unsigned int) const override;
0047
0048
0049 virtual bool hasAnalyticDerivative() const override {return true;}
0050
0051 private:
0052
0053
0054 const FunctionDirectProduct & operator=(const FunctionDirectProduct &right);
0055
0056 AbsFunction *_arg1;
0057 AbsFunction *_arg2;
0058 unsigned int _m;
0059 unsigned int _n;
0060
0061 };
0062 }
0063 #endif