MINT2
Public Member Functions | Private Attributes | List of all members
MINT::Neg2LLSum Class Reference

#include <Neg2LLSum.h>

Inheritance diagram for MINT::Neg2LLSum:
MINT::Minimisable MINT::IMinimisable

Public Member Functions

 Neg2LLSum (MinuitParameterSet *mps=0)
 
 Neg2LLSum (const std::vector< IMinimisable * > &likList_in, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, IMinimisable *ll_2, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, IMinimisable *ll_2, IMinimisable *ll_3, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, IMinimisable *ll_2, IMinimisable *ll_3, IMinimisable *ll_4, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, IMinimisable *ll_2, IMinimisable *ll_3, IMinimisable *ll_4, IMinimisable *ll_5, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, IMinimisable *ll_2, IMinimisable *ll_3, IMinimisable *ll_4, IMinimisable *ll_5, IMinimisable *ll_6, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, IMinimisable *ll_2, IMinimisable *ll_3, IMinimisable *ll_4, IMinimisable *ll_5, IMinimisable *ll_6, IMinimisable *ll_7, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, IMinimisable *ll_2, IMinimisable *ll_3, IMinimisable *ll_4, IMinimisable *ll_5, IMinimisable *ll_6, IMinimisable *ll_7, IMinimisable *ll_8, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, IMinimisable *ll_2, IMinimisable *ll_3, IMinimisable *ll_4, IMinimisable *ll_5, IMinimisable *ll_6, IMinimisable *ll_7, IMinimisable *ll_8, IMinimisable *ll_9, MinuitParameterSet *mps=0)
 
 Neg2LLSum (IMinimisable *ll_1, IMinimisable *ll_2, IMinimisable *ll_3, IMinimisable *ll_4, IMinimisable *ll_5, IMinimisable *ll_6, IMinimisable *ll_7, IMinimisable *ll_8, IMinimisable *ll_9, IMinimisable *ll_10, MinuitParameterSet *mps=0)
 
 Neg2LLSum (const Neg2LLSum &other)
 
bool add (IMinimisable *llPtr)
 
virtual void beginFit ()
 
virtual void parametersChanged ()
 
virtual void endFit ()
 
double getVal ()
 
bool addConstraints ()
 
virtual void Gradient (std::vector< double > &grad)
 
virtual bool useAnalyticGradient ()
 
virtual void setUseAnalyticGradient (bool useAnalyticGradient)
 
- Public Member Functions inherited from MINT::Minimisable
 Minimisable (MinuitParameterSet *mps=0)
 
 Minimisable (const Minimisable &other)
 
virtual ~Minimisable ()
 
void setPset (MinuitParameterSet *mps)
 
MinuitParameterSetgetParSet ()
 
double getNewVal ()
 
- Public Member Functions inherited from MINT::IMinimisable
virtual ~IMinimisable ()
 

Private Attributes

std::vector< IMinimisable * > _likList
 

Detailed Description

Definition at line 15 of file Neg2LLSum.h.

Constructor & Destructor Documentation

◆ Neg2LLSum() [1/13]

Neg2LLSum::Neg2LLSum ( MinuitParameterSet mps = 0)

Definition at line 12 of file Neg2LLSum.cpp.

13  : Minimisable(mps){}
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [2/13]

Neg2LLSum::Neg2LLSum ( const std::vector< IMinimisable * > &  likList_in,
MinuitParameterSet mps = 0 
)

Definition at line 15 of file Neg2LLSum.cpp.

17  : Minimisable(mps)
18  , _likList(likList_in)
19 {}
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17

◆ Neg2LLSum() [3/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
MinuitParameterSet mps = 0 
)

Definition at line 21 of file Neg2LLSum.cpp.

23  : Minimisable(mps)
24 {
25  add(ll_1);
26 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [4/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
IMinimisable ll_2,
MinuitParameterSet mps = 0 
)

Definition at line 27 of file Neg2LLSum.cpp.

29  : Minimisable(mps)
30 {
31  add(ll_1); add(ll_2);
32 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [5/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
IMinimisable ll_2,
IMinimisable ll_3,
MinuitParameterSet mps = 0 
)

Definition at line 33 of file Neg2LLSum.cpp.

36  : Minimisable(mps)
37 {
38  add(ll_1); add(ll_2); add(ll_3);
39 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [6/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
IMinimisable ll_2,
IMinimisable ll_3,
IMinimisable ll_4,
MinuitParameterSet mps = 0 
)

Definition at line 40 of file Neg2LLSum.cpp.

43  : Minimisable(mps)
44 {
45  add(ll_1); add(ll_2); add(ll_3); add(ll_4);
46 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [7/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
IMinimisable ll_2,
IMinimisable ll_3,
IMinimisable ll_4,
IMinimisable ll_5,
MinuitParameterSet mps = 0 
)

Definition at line 47 of file Neg2LLSum.cpp.

51  : Minimisable(mps)
52 {
53  add(ll_1); add(ll_2); add(ll_3); add(ll_4); add(ll_5);
54 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [8/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
IMinimisable ll_2,
IMinimisable ll_3,
IMinimisable ll_4,
IMinimisable ll_5,
IMinimisable ll_6,
MinuitParameterSet mps = 0 
)

Definition at line 56 of file Neg2LLSum.cpp.

60  : Minimisable(mps)
61 {
62  add(ll_1); add(ll_2); add(ll_3); add(ll_4); add(ll_5); add(ll_6);
63 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [9/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
IMinimisable ll_2,
IMinimisable ll_3,
IMinimisable ll_4,
IMinimisable ll_5,
IMinimisable ll_6,
IMinimisable ll_7,
MinuitParameterSet mps = 0 
)

Definition at line 65 of file Neg2LLSum.cpp.

70  : Minimisable(mps)
71 {
72  add(ll_1); add(ll_2); add(ll_3); add(ll_4); add(ll_5); add(ll_6);
73  add(ll_7);
74 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [10/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
IMinimisable ll_2,
IMinimisable ll_3,
IMinimisable ll_4,
IMinimisable ll_5,
IMinimisable ll_6,
IMinimisable ll_7,
IMinimisable ll_8,
MinuitParameterSet mps = 0 
)

Definition at line 75 of file Neg2LLSum.cpp.

80  : Minimisable(mps)
81 {
82  add(ll_1); add(ll_2); add(ll_3); add(ll_4); add(ll_5); add(ll_6);
83  add(ll_7); add(ll_8);
84 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [11/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
IMinimisable ll_2,
IMinimisable ll_3,
IMinimisable ll_4,
IMinimisable ll_5,
IMinimisable ll_6,
IMinimisable ll_7,
IMinimisable ll_8,
IMinimisable ll_9,
MinuitParameterSet mps = 0 
)

Definition at line 86 of file Neg2LLSum.cpp.

92  : Minimisable(mps)
93 {
94  add(ll_1); add(ll_2); add(ll_3); add(ll_4); add(ll_5); add(ll_6);
95  add(ll_7); add(ll_8); add(ll_9);
96 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [12/13]

Neg2LLSum::Neg2LLSum ( IMinimisable ll_1,
IMinimisable ll_2,
IMinimisable ll_3,
IMinimisable ll_4,
IMinimisable ll_5,
IMinimisable ll_6,
IMinimisable ll_7,
IMinimisable ll_8,
IMinimisable ll_9,
IMinimisable ll_10,
MinuitParameterSet mps = 0 
)

Definition at line 98 of file Neg2LLSum.cpp.

104  : Minimisable(mps)
105 {
106  add(ll_1); add(ll_2); add(ll_3); add(ll_4); add(ll_5); add(ll_6);
107  add(ll_7); add(ll_8); add(ll_9); add(ll_10);
108 }
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6

◆ Neg2LLSum() [13/13]

Neg2LLSum::Neg2LLSum ( const Neg2LLSum other)

Definition at line 110 of file Neg2LLSum.cpp.

111  : IMinimisable()
112  , Minimisable(other)
113  , _likList(other._likList)
114 {}
Minimisable(MinuitParameterSet *mps=0)
Definition: Minimisable.cpp:6
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17

Member Function Documentation

◆ add()

bool Neg2LLSum::add ( IMinimisable llPtr)

Definition at line 117 of file Neg2LLSum.cpp.

117  {
118  if(0 == llPtr){
119  std::cout << "ERROR in Neg2LLSum::add: trying to add null pointer"
120  << std::endl;
121  return false;
122  }
123  _likList.push_back(llPtr);
124  return true;
125 }
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17

◆ addConstraints()

bool Neg2LLSum::addConstraints ( )

Definition at line 153 of file Neg2LLSum.cpp.

153  {
154 
155  cout << "addConstraints for " << getParSet()->size() << " paramaters" << endl;
156 
157 
158  for(unsigned int i=0;i< getParSet()->size();i++){
159  string name_i= getParSet()->getParPtr(i)->name();
160  cout << "paramater " << i << " : " << name_i << endl;
161  NamedParameter<double> constrain(("Constrain_"+name_i).c_str(),-1,-1,NamedParameterBase::QUIET);
162  //cout << constrain << endl;
163  if(constrain.getVal(0)>0 && constrain.getVal(1)>0){
164  IMinimisable* gaussConstraint = new Neg2LLConstraint(getParSet()->getParPtr(i),constrain.getVal(0),constrain.getVal(1),getParSet());
165  add(gaussConstraint);
166  cout << "Added gaussian constraint to parameter: " << name_i
167  << " with initial value = " << (double) *(getParSet()->getParPtr(i))
168  << " and mean = " << constrain.getVal(0)
169  << " and sigma = " << constrain.getVal(1) << endl ;
170  cout << "neg2LL value = " << gaussConstraint->getVal() << endl;
171 
172  }
173  }
174 
175  return true;
176 }
IMinuitParameter * getParPtr(unsigned int i)
unsigned int size() const
virtual const std::string & name() const =0
bool add(IMinimisable *llPtr)
Definition: Neg2LLSum.cpp:117
MinuitParameterSet * getParSet()
Definition: Minimisable.cpp:25
virtual double getVal()=0

◆ beginFit()

void Neg2LLSum::beginFit ( )
virtual

Reimplemented from MINT::Minimisable.

Definition at line 127 of file Neg2LLSum.cpp.

127  {
128  for(unsigned int i=0; i < _likList.size(); i++){
129  _likList[i]->beginFit();
130  }
131 }
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17

◆ endFit()

void Neg2LLSum::endFit ( )
virtual

Reimplemented from MINT::Minimisable.

Definition at line 138 of file Neg2LLSum.cpp.

138  {
139  for(unsigned int i=0; i < _likList.size(); i++){
140  _likList[i]->endFit();
141  }
142 }
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17

◆ getVal()

double Neg2LLSum::getVal ( )
virtual

Implements MINT::Minimisable.

Definition at line 145 of file Neg2LLSum.cpp.

145  {
146  double sum=0;
147  for(unsigned int i=0; i < _likList.size(); i++){
148  sum += _likList[i]->getVal();
149  }
150  return sum;
151 }
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17

◆ Gradient()

void Neg2LLSum::Gradient ( std::vector< double > &  grad)
virtual

Reimplemented from MINT::IMinimisable.

Definition at line 178 of file Neg2LLSum.cpp.

178  {
179 
180  std::vector<std::vector<double> > gradVec;
181 
182  for(unsigned int i=0; i < _likList.size(); i++){
183 
184  std::vector<double> grad_tmp(this->getParSet()->size());
185  for(unsigned int j=0; j < grad_tmp.size(); j++) grad_tmp[j]= 0.;
186 
187  _likList[i]->Gradient(grad_tmp);
188 
189  std::vector<double> tmp;
190 
191  for(unsigned int j=0; j < this->getParSet()->size(); j++){
192  tmp.push_back(grad_tmp[j]);
193  }
194 
195  gradVec.push_back(tmp);
196  }
197 
198  for(unsigned int i=0;i< grad.size();i++){
199  grad.at(i)=0.;
200  for(unsigned int j=0; j < _likList.size(); j++){
201  grad.at(i) += gradVec.at(j).at(i);
202  }
203  }
204 }
unsigned int size() const
MinuitParameterSet * getParSet()
Definition: Minimisable.cpp:25
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17

◆ parametersChanged()

void Neg2LLSum::parametersChanged ( )
virtual

Reimplemented from MINT::Minimisable.

Definition at line 132 of file Neg2LLSum.cpp.

132  {
133  for(unsigned int i=0; i < _likList.size(); i++){
134  _likList[i]->parametersChanged();
135  }
136 }
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17

◆ setUseAnalyticGradient()

void Neg2LLSum::setUseAnalyticGradient ( bool  useAnalyticGradient)
virtual

Reimplemented from MINT::IMinimisable.

Definition at line 214 of file Neg2LLSum.cpp.

214  {
215  for(unsigned int j=0; j < _likList.size(); j++){
216  _likList[j]->setUseAnalyticGradient(useAnalyticGradient);
217  }
218 }
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17
virtual bool useAnalyticGradient()
Definition: Neg2LLSum.cpp:206

◆ useAnalyticGradient()

bool Neg2LLSum::useAnalyticGradient ( )
virtual

Reimplemented from MINT::IMinimisable.

Definition at line 206 of file Neg2LLSum.cpp.

206  {
207  bool b= true;
208  for(unsigned int i=0; i < _likList.size(); i++){
209  b = b && _likList[i]->useAnalyticGradient();
210  }
211  return b;
212 }
std::vector< IMinimisable * > _likList
Definition: Neg2LLSum.h:17

Member Data Documentation

◆ _likList

std::vector<IMinimisable*> MINT::Neg2LLSum::_likList
private

Definition at line 17 of file Neg2LLSum.h.


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