WilsonTemplate< T > Class Template Reference

A template class for the Wilson coefficients. More...

#include <WilsonTemplate.h>

Inheritance diagram for WilsonTemplate< T >:
[legend]
Collaboration diagram for WilsonTemplate< T >:
[legend]

Detailed Description

template<class T>
class WilsonTemplate< T >

A template class for the Wilson coefficients.

Author
HEPfit Collaboration

Definition at line 23 of file WilsonTemplate.h.

Public Member Functions

double getMu () const
 
orders getOrder () const
 
orders_ew getOrder_ew () const
 
schemes getScheme () const
 
unsigned int getSize () const
 
virtual void resetCoefficient ()
 
virtual void setMu (double mu)
 
void setScheme (schemes scheme)
 
 WilsonTemplate (const WilsonTemplate< T > &orig)
 
 WilsonTemplate (unsigned int dim, schemes scheme_i, orders order_i, orders_ew order_ew_i=NULL_ew)
 
virtual ~WilsonTemplate ()
 

Protected Member Functions

T * Elem (orders order) const
 
T * Elem (orders_ew order_ew) const
 
void setElem (const T &v, orders order_i)
 
void setElem (const T &v, orders_ew order_ew_i)
 

Protected Attributes

T * elem [MAXORDER_EW+1]
 
double mu
 
orders order
 
orders_ew order_ew
 
schemes scheme
 
unsigned int size
 

Constructor & Destructor Documentation

template<class T>
WilsonTemplate< T >::WilsonTemplate ( unsigned int  dim,
schemes  scheme_i,
orders  order_i,
orders_ew  order_ew_i = NULL_ew 
)
inline

Definition at line 25 of file WilsonTemplate.h.

27  {
28  size = dim;
29  scheme = scheme_i;
30  order = order_i;
31  order_ew = order_ew_i;
32  mu = -1.;
33 
34  for (int i = LO; i <= MAXORDER; i++)
35  if (i <= order)
36  elem[i] = new T(size, 0.);
37  else
38  elem[i] = NULL;
39  elem[orders_ew(NULL_ew)] = NULL;
40  //for (int i = LO_ew; i <= NLO_ew; i++){
41  for (int i = LO_ew; i <= MAXORDER_EW; i++){
42  if (i <= order_ew)
43  elem[i] = new T(size, 0.);
44  else
45  elem[i] = NULL;
46  }
47  };
orders_ew
An enum type for orders in electroweak.
Definition: OrderScheme.h:45
orders_ew order_ew
Definition: OrderScheme.h:33
unsigned int size
T * elem[MAXORDER_EW+1]
#define MAXORDER_EW
Definition: OrderScheme.h:12
#define MAXORDER
Definition: OrderScheme.h:11
template<class T>
WilsonTemplate< T >::WilsonTemplate ( const WilsonTemplate< T > &  orig)
inline

Definition at line 49 of file WilsonTemplate.h.

50  {
51  size = orig.size;
52  scheme = orig.scheme;
53  order = orig.order;
54  order_ew = orig.order_ew;
55  mu = orig.mu;
56  for (int i = LO; i <= MAXORDER_EW; i++)
57  if (orig.elem[i]!= NULL)
58  elem[i] = new T(*(orig.elem[i]));
59  else
60  elem[i] = NULL;
61  }
orders_ew order_ew
Definition: OrderScheme.h:33
unsigned int size
T * elem[MAXORDER_EW+1]
#define MAXORDER_EW
Definition: OrderScheme.h:12
template<class T>
virtual WilsonTemplate< T >::~WilsonTemplate ( )
inlinevirtual

Definition at line 63 of file WilsonTemplate.h.

64  {
65  for (int i = LO; i <= MAXORDER_EW; i++)
66  if (elem[i] != NULL)
67  delete elem[i];
68  };
Definition: OrderScheme.h:33
T * elem[MAXORDER_EW+1]
#define MAXORDER_EW
Definition: OrderScheme.h:12

Member Function Documentation

template<class T>
T* WilsonTemplate< T >::Elem ( orders  order) const
inlineprotected

Definition at line 126 of file WilsonTemplate.h.

127  {
128  if (order > this->order) {
129  std::stringstream out;
130  out << order;
131  throw std::runtime_error("WilsonTemplate::getElem(): requested order " + out.str() +
132  " not present in the object");
133  }
134  return elem[order];
135  };
T * elem[MAXORDER_EW+1]
template<class T>
T* WilsonTemplate< T >::Elem ( orders_ew  order_ew) const
inlineprotected

Definition at line 137 of file WilsonTemplate.h.

138  {
139  if ((order_ew > this->order_ew)) {
140  std::stringstream out;
141  out << order_ew;
142  throw std::runtime_error("WilsonTemplate::getElem(): requested order_ew " + out.str() +
143  "not present in the object");
144  }
145  return elem[order_ew];
146  };
orders_ew order_ew
T * elem[MAXORDER_EW+1]
template<class T>
double WilsonTemplate< T >::getMu ( ) const
inline

Definition at line 80 of file WilsonTemplate.h.

81  {
82  return mu;
83  }
template<class T>
orders WilsonTemplate< T >::getOrder ( ) const
inline

Definition at line 70 of file WilsonTemplate.h.

71  {
72  return order;
73  }
template<class T>
orders_ew WilsonTemplate< T >::getOrder_ew ( ) const
inline

Definition at line 75 of file WilsonTemplate.h.

76  {
77  return order_ew;
78  }
orders_ew order_ew
template<class T>
schemes WilsonTemplate< T >::getScheme ( ) const
inline

Definition at line 103 of file WilsonTemplate.h.

104  {
105  return scheme;
106  }
template<class T>
unsigned int WilsonTemplate< T >::getSize ( ) const
inline

Definition at line 113 of file WilsonTemplate.h.

114  {
115  return size;
116  }
unsigned int size
template<class T>
virtual void WilsonTemplate< T >::resetCoefficient ( )
inlinevirtual

Definition at line 85 of file WilsonTemplate.h.

86  {
87  for(int i = LO; i <= order; i++){
88  *(elem[i]) = 0.;
89  }
90  if (order_ew != NULL_ew){
91  for(int i = LO_ew; i <= order_ew; i++){
92  *(elem[i]) = 0.;
93  }
94  }
95  }
orders_ew order_ew
Definition: OrderScheme.h:33
T * elem[MAXORDER_EW+1]
template<class T>
void WilsonTemplate< T >::setElem ( const T &  v,
orders  order_i 
)
inlineprotected

Definition at line 148 of file WilsonTemplate.h.

149  {
150  if (order_i > order) {
151  std::stringstream out;
152  out << order_i;
153  throw std::runtime_error("MatchingCondition::setElem(): order " + out.str() +
154  " not implemented ");
155  }
156  *elem[order_i] = v;
157  };
T * elem[MAXORDER_EW+1]
template<class T>
void WilsonTemplate< T >::setElem ( const T &  v,
orders_ew  order_ew_i 
)
inlineprotected

Definition at line 159 of file WilsonTemplate.h.

160  {
161  if (order_ew_i > order_ew) {
162  std::stringstream out;
163  out << order_ew_i;
164  throw std::runtime_error("MatchingCondition::setElem(): order " + out.str() +
165  " not implemented ");
166  }
167  *elem[order_ew_i] = v;
168  };
orders_ew order_ew
T * elem[MAXORDER_EW+1]
template<class T>
virtual void WilsonTemplate< T >::setMu ( double  mu)
inlinevirtual

Reimplemented in RGEvolutor.

Definition at line 97 of file WilsonTemplate.h.

98  {
99  this->mu = mu;
101  }
virtual void resetCoefficient()
template<class T>
void WilsonTemplate< T >::setScheme ( schemes  scheme)
inline

Definition at line 108 of file WilsonTemplate.h.

109  {
110  this->scheme = scheme;
111  }

Member Data Documentation

template<class T>
T* WilsonTemplate< T >::elem[MAXORDER_EW+1]
protected

Definition at line 119 of file WilsonTemplate.h.

template<class T>
double WilsonTemplate< T >::mu
protected

Definition at line 121 of file WilsonTemplate.h.

template<class T>
orders WilsonTemplate< T >::order
protected

Definition at line 123 of file WilsonTemplate.h.

template<class T>
orders_ew WilsonTemplate< T >::order_ew
protected

Definition at line 124 of file WilsonTemplate.h.

template<class T>
schemes WilsonTemplate< T >::scheme
protected

Definition at line 122 of file WilsonTemplate.h.

template<class T>
unsigned int WilsonTemplate< T >::size
protected

Definition at line 120 of file WilsonTemplate.h.


The documentation for this class was generated from the following file: