SUSYMassInsertion.cpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2012 HEPfit Collaboration
3  * All rights reserved.
4  *
5  * For the licensing terms see doc/COPYING.
6  */
7 
8 #include "SUSYMassInsertion.h"
9 
10 const std::string SUSYMassInsertion::SusyMIvars[NSusyMIvars] = {"Msq", "m3", "MuM",
11 
12  "rDULL11", "rDULL12", "rDULL13", "rDULL21", "rDULL22", "rDULL23",
13  "rDULL31", "rDULL32", "rDULL33", "iDULL11", "iDULL12", "iDULL13",
14  "iDULL21", "iDULL22", "iDULL23", "iDULL31", "iDULL32", "iDULL33",
15 
16  "rDURL11", "rDURL12", "rDURL13", "rDURL21", "rDURL22", "rDURL23",
17  "rDURL31", "rDURL32", "rDURL33", "iDURL11", "iDURL12", "iDURL13",
18  "iDURL21", "iDURL22", "iDURL23", "iDURL31", "iDURL32", "iDURL33",
19 
20  "rDULR11", "rDULR12", "rDULR13", "rDULR21", "rDULR22", "rDULR23",
21  "rDULR31", "rDULR32", "rDULR33", "iDULR11", "iDULR12", "iDULR13",
22  "iDULR21", "iDULR22", "iDULR23", "iDULR31", "iDULR32", "iDULR33",
23 
24  "rDURR11", "rDURR12", "rDURR13", "rDURR21", "rDURR22", "rDURR23",
25  "rDURR31", "rDURR32", "rDURR33", "iDURR11", "iDURR12", "iDURR13",
26  "iDURR21", "iDURR22", "iDURR23", "iDURR31", "iDURR32", "iDURR33",
27 
28  "rDDLL11", "rDDLL12", "rDDLL13", "rDDLL21", "rDDLL22", "rDDLL23",
29  "rDDLL31", "rDDLL32", "rDDLL33", "iDDLL11", "iDDLL12", "iDDLL13",
30  "iDDLL21", "iDDLL22", "iDDLL23", "iDDLL31", "iDDLL32", "iDDLL33",
31 
32  "rDDRL11", "rDDRL12", "rDDRL13", "rDDRL21", "rDDRL22", "rDDRL23",
33  "rDDRL31", "rDDRL32", "rDDRL33", "iDDRL11", "iDDRL12", "iDDRL13",
34  "iDDRL21", "iDDRL22", "iDDRL23", "iDDRL31", "iDDRL32", "iDDRL33",
35 
36  "rDDLR11", "rDDLR12", "rDDLR13", "rDDLR21", "rDDLR22", "rDDLR23",
37  "rDDLR31", "rDDLR32", "rDDLR33", "iDDLR11", "iDDLR12", "iDDLR13",
38  "iDDLR21", "iDDLR22", "iDDLR23", "iDDLR31", "iDDLR32", "iDDLR33",
39 
40  "rDDRR11", "rDDRR12", "rDDRR13", "rDDRR21", "rDDRR22", "rDDRR23",
41  "rDDRR31", "rDDRR32", "rDDRR33", "iDDRR11", "iDDRR12", "iDDRR13",
42  "iDDRR21", "iDDRR22", "iDDRR23", "iDDRR31", "iDDRR32", "iDDRR33"
43 
44 };
45 
47 : StandardModel(),
48  Du_LL(3,0.), Du_LR(3,0.), Du_RL(3,0.), Du_RR(3,0.),
49  Dd_LL(3,0.), Dd_LR(3,0.), Dd_RL(3,0.), Dd_RR(3,0.){
50 
51  rDULL11=0.; rDULL12=0.; rDULL13=0.;
52  rDULL21=0.; rDULL22=0.; rDULL23=0.;
53  rDULL31=0.; rDULL32=0.; rDULL33=0.;
54  iDULL11=0.; iDULL12=0.; iDULL13=0.;
55  iDULL21=0.; iDULL22=0.; iDULL23=0.;
56  iDULL31=0.; iDULL32=0.; iDULL33=0.;
57 
58  rDURL11=0.; rDURL12=0.; rDURL13=0.;
59  rDURL21=0.; rDURL22=0.; rDURL23=0.;
60  rDURL31=0.; rDURL32=0.; rDURL33=0.;
61  iDURL11=0.; iDURL12=0.; iDURL13=0.;
62  iDURL21=0.; iDURL22=0.; iDURL23=0.;
63  iDURL31=0.; iDURL32=0.; iDURL33=0.;
64 
65  rDULR11=0.; rDULR12=0.; rDULR13=0.;
66  rDULR21=0.; rDULR22=0.; rDULR23=0.;
67  rDULR31=0.; rDULR32=0.; rDULR33=0.;
68  iDULR11=0.; iDULR12=0.; iDULR13=0.;
69  iDULR21=0.; iDULR22=0.; iDULR23=0.;
70  iDULR31=0.; iDULR32=0.; iDULR33=0.;
71 
72  rDURR11=0.; rDURR12=0.; rDURR13=0.;
73  rDURR21=0.; rDURR22=0.; rDURR23=0.;
74  rDURR31=0.; rDURR32=0.; rDURR33=0.;
75  iDURR11=0.; iDURR12=0.; iDURR13=0.;
76  iDURR21=0.; iDURR22=0.; iDURR23=0.;
77  iDURR31=0.; iDURR32=0.; iDURR33=0.;
78 
79  rDDLL11=0.; rDDLL12=0.; rDDLL13=0.;
80  rDDLL21=0.; rDDLL22=0.; rDDLL23=0.;
81  rDDLL31=0.; rDDLL32=0.; rDDLL33=0.;
82  iDDLL11=0.; iDDLL12=0.; iDDLL13=0.;
83  iDDLL21=0.; iDDLL22=0.; iDDLL23=0.;
84  iDDLL31=0.; iDDLL32=0.; iDDLL33=0.;
85 
86  rDDRL11=0.; rDDRL12=0.; rDDRL13=0.;
87  rDDRL21=0.; rDDRL22=0.; rDDRL23=0.;
88  rDDRL31=0.; rDDRL32=0.; rDDRL33=0.;
89  iDDRL11=0.; iDDRL12=0.; iDDRL13=0.;
90  iDDRL21=0.; iDDRL22=0.; iDDRL23=0.;
91  iDDRL31=0.; iDDRL32=0.; iDDRL33=0.;
92 
93  rDDLR11=0.; rDDLR12=0.; rDDLR13=0.;
94  rDDLR21=0.; rDDLR22=0.; rDDLR23=0.;
95  rDDLR31=0.; rDDLR32=0.; rDDLR33=0.;
96  iDDLR11=0.; iDDLR12=0.; iDDLR13=0.;
97  iDDLR21=0.; iDDLR22=0.; iDDLR23=0.;
98  iDDLR31=0.; iDDLR32=0.; iDDLR33=0.;
99 
100  rDDRR11=0.; rDDRR12=0.; rDDRR13=0.;
101  rDDRR21=0.; rDDRR22=0.; rDDRR23=0.;
102  rDDRR31=0.; rDDRR32=0.; rDDRR33=0.;
103  iDDRR11=0.; iDDRR12=0.; iDDRR13=0.;
104  iDDRR21=0.; iDDRR22=0.; iDDRR23=0.;
105  iDDRR31=0.; iDDRR32=0.; iDDRR33=0.;
106 
107 }
108 
110 }
111 
113 // Initialization
114 
116 {
118  setModelInitialized(true);
119  return(true);
120 }
121 
123 // Parameters
124 
125 bool SUSYMassInsertion::Init(const std::map<std::string, double>& DPars) {
126 
127  if ((DPars.find("Msq") == DPars.end()) || (DPars.find("m3") == DPars.end()) ||
128  (DPars.find("MuM") == DPars.end())) {
129  std::cout << "missing mandatory Susy MIA parameter " << std::endl;
130  std::cout << "the gluino mass, the mean value of the squark masses "
131  "and the matching scale must be initialized " << std::endl;
132  return false;
133  }
134 
135  return(StandardModel::Init(DPars));
136 }
137 
138 
140 {
141  if(!StandardModel::PreUpdate()) return (false);
142  return (true);
143 }
144 
145 bool SUSYMassInsertion::Update(const std::map<std::string, double>& DPars)
146 {
147  if(!PreUpdate()) return (false);
148 
149  UpdateError = false;
150 
151  for (std::map<std::string, double>::const_iterator it = DPars.begin(); it != DPars.end(); it++)
152  setParameter(it->first, it->second);
153 
154  if (UpdateError) return (false);
155 
156  if(!PostUpdate()) return (false);
157 
158  return (true);
159 }
160 
162 {
163  if (!StandardModel::PostUpdate()) return (false);
164  mySUSYMIA->StandardModelMatching::updateSMParameters();
165  return (true);
166 }
167 
168 void SUSYMassInsertion::setParameter(const std::string name, const double& value) {
169  if (name.compare("Msq") == 0)
170  Msq = value;
171  else if (name.compare("m3") == 0)
172  m3 = value;
173  else if (name.compare("MuM") == 0)
174  MuM = value;
175 
176  //FILLS THE DELTAS, UP SECTOR
177  else if (name.compare("rDULL11") == 0){
178  rDULL11 = value;
179  Du_LL.assignre(0,0,rDULL11);}
180  else if (name.compare("rDULL12") == 0){
181  rDULL12 = value;
182  Du_LL.assignre(0,1,rDULL12);}
183  else if (name.compare("rDULL13") == 0){
184  rDULL13 = value;
185  Du_LL.assignre(0,2,rDULL13);}
186  else if (name.compare("rDULL21") == 0){
187  rDULL21 = value;
188  Du_LL.assignre(1,0,rDULL21);}
189  else if (name.compare("rDULL22") == 0){
190  rDULL22 = value;
191  Du_LL.assignre(1,1,rDULL22);}
192  else if (name.compare("rDULL23") == 0){
193  rDULL23 = value;
194  Du_LL.assignre(1,2,rDULL23);}
195  else if (name.compare("rDULL31") == 0){
196  rDULL31 = value;
197  Du_LL.assignre(2,0,rDULL31);}
198  else if (name.compare("rDULL32") == 0){
199  rDULL32 = value;
200  Du_LL.assignre(2,1,rDULL32);}
201  else if (name.compare("rDULL33") == 0){
202  rDULL33 = value;
203  Du_LL.assignre(2,2,rDULL33);}
204 
205  else if (name.compare("iDULL11") == 0){
206  iDULL11 = value;
207  Du_LL.assignim(0,0,iDULL11);}
208  else if (name.compare("iDULL12") == 0){
209  iDULL12 = value;
210  Du_LL.assignim(0,1,iDULL12);}
211  else if (name.compare("iDULL13") == 0){
212  iDULL13 = value;
213  Du_LL.assignim(0,2,iDULL13);}
214  else if (name.compare("iDULL21") == 0){
215  iDULL21 = value;
216  Du_LL.assignim(1,0,iDULL21);}
217  else if (name.compare("iDULL22") == 0){
218  iDULL22 = value;
219  Du_LL.assignim(1,1,iDULL22);}
220  else if (name.compare("iDULL23") == 0){
221  iDULL23 = value;
222  Du_LL.assignim(1,2,iDULL23);}
223  else if (name.compare("iDULL31") == 0){
224  iDULL31 = value;
225  Du_LL.assignim(2,0,iDULL31);}
226  else if (name.compare("iDULL32") == 0){
227  iDULL32 = value;
228  Du_LL.assignim(2,1,iDULL32);}
229  else if (name.compare("iDULL33") == 0){
230  iDULL33 = value;
231  Du_LL.assignim(2,2,iDULL33);}
232 
233 
234  else if (name.compare("rDURL11") == 0){
235  rDURL11 = value;
236  Du_RL.assignre(0,0,rDURL11);}
237  else if (name.compare("rDURL12") == 0){
238  rDURL12 = value;
239  Du_RL.assignre(0,1,rDURL12);}
240  else if (name.compare("rDURL13") == 0){
241  rDURL13 = value;
242  Du_RL.assignre(0,2,rDURL13);}
243  else if (name.compare("rDURL21") == 0){
244  rDURL21 = value;
245  Du_RL.assignre(1,0,rDURL21);}
246  else if (name.compare("rDURL22") == 0){
247  rDURL22 = value;
248  Du_RL.assignre(1,1,rDURL22);}
249  else if (name.compare("rDURL23") == 0){
250  rDURL23 = value;
251  Du_RL.assignre(1,2,rDURL23);}
252  else if (name.compare("rDURL31") == 0){
253  rDURL31 = value;
254  Du_RL.assignre(2,0,rDURL31);}
255  else if (name.compare("rDURL32") == 0){
256  rDURL32 = value;
257  Du_RL.assignre(2,1,rDURL32);}
258  else if (name.compare("rDURL33") == 0){
259  rDURL33 = value;
260  Du_RL.assignre(2,2,rDURL33);}
261 
262  else if (name.compare("iDURL11") == 0){
263  iDURL11 = value;
264  Du_RL.assignim(0,0,iDURL11);}
265  else if (name.compare("iDURL12") == 0){
266  iDURL12 = value;
267  Du_RL.assignim(0,1,iDURL12);}
268  else if (name.compare("iDURL13") == 0){
269  iDURL13 = value;
270  Du_RL.assignim(0,2,iDURL13);}
271  else if (name.compare("iDURL21") == 0){
272  iDURL21 = value;
273  Du_RL.assignim(1,0,iDURL21);}
274  else if (name.compare("iDURL22") == 0){
275  iDURL22 = value;
276  Du_RL.assignim(1,1,iDURL22);}
277  else if (name.compare("iDURL23") == 0){
278  iDURL23 = value;
279  Du_RL.assignim(1,2,iDURL23);}
280  else if (name.compare("iDURL31") == 0){
281  iDURL31 = value;
282  Du_RL.assignim(2,0,iDURL31);}
283  else if (name.compare("iDURL32") == 0){
284  iDURL32 = value;
285  Du_RL.assignim(2,1,iDURL32);}
286  else if (name.compare("iDURL33") == 0){
287  iDURL33 = value;
288  Du_RL.assignim(2,2,iDURL33);}
289 
290 
291  else if (name.compare("rDULR11") == 0){
292  rDULR11 = value;
293  Du_LR.assignre(0,0,rDULR11);}
294  else if (name.compare("rDULR12") == 0){
295  rDULR12 = value;
296  Du_LR.assignre(0,1,rDULR12);}
297  else if (name.compare("rDULR13") == 0){
298  rDULR13 = value;
299  Du_LR.assignre(0,2,rDULR13);}
300  else if (name.compare("rDULR21") == 0){
301  rDULR21 = value;
302  Du_LR.assignre(1,0,rDULR21);}
303  else if (name.compare("rDULR22") == 0){
304  rDULR22 = value;
305  Du_LR.assignre(1,1,rDULR22);}
306  else if (name.compare("rDULR23") == 0){
307  rDULR23 = value;
308  Du_LR.assignre(1,2,rDULR23);}
309  else if (name.compare("rDULR31") == 0){
310  rDULR31 = value;
311  Du_LR.assignre(2,0,rDULR31);}
312  else if (name.compare("rDULR32") == 0){
313  rDULR32 = value;
314  Du_LR.assignre(2,0,rDULR31);}
315  else if (name.compare("rDULR33") == 0){
316  rDULR33 = value;
317  Du_LR.assignre(2,2,rDULR33);}
318 
319  else if (name.compare("iDULR11") == 0){
320  iDULR11 = value;
321  Du_LR.assignim(0,0,iDULR11);}
322  else if (name.compare("iDULR12") == 0){
323  iDULR12 = value;
324  Du_LR.assignim(0,1,iDULR12);}
325  else if (name.compare("iDULR13") == 0){
326  iDULR13 = value;
327  Du_LR.assignim(0,2,iDULR13);}
328  else if (name.compare("iDULR21") == 0){
329  iDULR21 = value;
330  Du_LR.assignim(1,0,iDULR21);}
331  else if (name.compare("iDULR22") == 0){
332  iDULR22 = value;
333  Du_LR.assignim(1,1,iDULR22);}
334  else if (name.compare("iDULR23") == 0){
335  iDULR23 = value;
336  Du_LR.assignim(1,2,iDULR23);}
337  else if (name.compare("iDULR31") == 0){
338  iDULR31 = value;
339  Du_LR.assignim(2,0,iDULR31);}
340  else if (name.compare("iDULR32") == 0){
341  iDULR32 = value;
342  Du_LR.assignim(2,1,iDULR32);}
343  else if (name.compare("iDULR33") == 0){
344  iDULR33 = value;
345  Du_LR.assignim(2,2,iDULR33);}
346 
347 
348  else if (name.compare("rDURR11") == 0){
349  rDURR11 = value;
350  Du_RR.assignre(0,0,rDURR11);}
351  else if (name.compare("rDURR12") == 0){
352  rDURR12 = value;
353  Du_RR.assignre(0,1,rDURR12);}
354  else if (name.compare("rDURR13") == 0){
355  rDURR13 = value;
356  Du_RR.assignre(0,2,rDURR13);}
357  else if (name.compare("rDURR21") == 0){
358  rDURR21 = value;
359  Du_RR.assignre(1,0,rDURR21);}
360  else if (name.compare("rDURR22") == 0){
361  rDURR22 = value;
362  Du_RR.assignre(1,1,rDURR22);}
363  else if (name.compare("rDURR23") == 0){
364  rDURR23 = value;
365  Du_RR.assignre(1,2,rDURR23);}
366  else if (name.compare("rDURR31") == 0){
367  rDURR31 = value;
368  Du_RR.assignre(2,0,rDURR31);}
369  else if (name.compare("rDURR32") == 0){
370  rDURR32 = value;
371  Du_RR.assignre(2,1,rDURR32);}
372  else if (name.compare("rDURR33") == 0){
373  rDURR33 = value;
374  Du_RR.assignre(2,2,rDURR33);}
375 
376  else if (name.compare("iDURR11") == 0){
377  iDURR11 = value;
378  Du_RR.assignim(0,0,iDURR11);}
379  else if (name.compare("iDURR12") == 0){
380  iDURR12 = value;
381  Du_RR.assignim(0,1,iDURR12);}
382  else if (name.compare("iDURR13") == 0){
383  iDURR13 = value;
384  Du_RR.assignim(0,2,iDURR13);}
385  else if (name.compare("iDURR21") == 0){
386  iDURR21 = value;
387  Du_RR.assignim(1,0,iDURR21);}
388  else if (name.compare("iDURR22") == 0){
389  iDURR22 = value;
390  Du_RR.assignim(1,1,iDURR22);}
391  else if (name.compare("iDURR23") == 0){
392  iDURR23 = value;
393  Du_RR.assignim(1,2,iDURR23);}
394  else if (name.compare("iDURR31") == 0){
395  iDURR31 = value;
396  Du_RR.assignim(2,0,iDURR31);}
397  else if (name.compare("iDURR32") == 0){
398  iDURR32 = value;
399  Du_RR.assignim(2,1,iDURR32);}
400  else if (name.compare("iDURR33") == 0){
401  iDURR33 = value;
402  Du_RR.assignim(2,2,iDURR33);}
403 
404  // FILLS THE DELTAS, DOWN SECTOR
405  else if (name.compare("rDDLL11") == 0){
406  rDDLL11 = value;
407  Dd_LL.assignre(0,0,rDDLL11);}
408  else if (name.compare("rDDLL12") == 0){
409  rDDLL12 = value;
410  Dd_LL.assignre(0,1,rDDLL12);}
411  else if (name.compare("rDDLL13") == 0){
412  rDDLL13 = value;
413  Dd_LL.assignre(0,2,rDDLL13);}
414  else if (name.compare("rDDLL21") == 0){
415  rDDLL21 = value;
416  Dd_LL.assignre(1,0,rDDLL21);}
417  else if (name.compare("rDDLL22") == 0){
418  rDDLL22 = value;
419  Dd_LL.assignre(1,1,rDDLL22);}
420  else if (name.compare("rDDLL23") == 0){
421  rDDLL23 = value;
422  Dd_LL.assignre(1,2,rDDLL23);}
423  else if (name.compare("rDDLL31") == 0){
424  rDDLL31 = value;
425  Dd_LL.assignre(2,0,rDDLL31);}
426  else if (name.compare("rDDLL32") == 0){
427  rDDLL32 = value;
428  Dd_LL.assignre(2,1,rDDLL32);}
429  else if (name.compare("rDDLL33") == 0){
430  rDDLL33 = value;
431  Dd_LL.assignre(2,2,rDDLL33);}
432 
433  else if (name.compare("iDDLL11") == 0){
434  iDDLL11 = value;
435  Dd_LL.assignim(0,0,iDDLL11);}
436  else if (name.compare("iDDLL12") == 0){
437  iDDLL12 = value;
438  Dd_LL.assignim(0,1,iDDLL12);}
439  else if (name.compare("iDDLL13") == 0){
440  iDDLL13 = value;
441  Dd_LL.assignim(0,2,iDDLL13);}
442  else if (name.compare("iDDLL21") == 0){
443  iDDLL21 = value;
444  Dd_LL.assignim(1,0,iDDLL21);}
445  else if (name.compare("iDDLL22") == 0){
446  iDDLL22 = value;
447  Dd_LL.assignim(1,1,iDDLL22);}
448  else if (name.compare("iDDLL23") == 0){
449  iDDLL23 = value;
450  Dd_LL.assignim(1,2,iDDLL23);}
451  else if (name.compare("iDDLL31") == 0){
452  iDDLL31 = value;
453  Dd_LL.assignim(2,0,iDDLL31);}
454  else if (name.compare("iDDLL32") == 0){
455  iDDLL32 = value;
456  Dd_LL.assignim(2,1,iDDLL32);}
457  else if (name.compare("iDDLL33") == 0){
458  iDDLL33 = value;
459  Dd_LL.assignim(2,2,iDDLL33);}
460 
461 
462  else if (name.compare("rDDRL11") == 0){
463  rDDRL11 = value;
464  Dd_RL.assignre(0,0,rDDRL11);}
465  else if (name.compare("rDDRL12") == 0){
466  rDDRL12 = value;
467  Dd_RL.assignre(0,1,rDDRL12);}
468  else if (name.compare("rDDRL13") == 0){
469  rDDRL13 = value;
470  Dd_RL.assignre(0,2,rDDRL13);}
471  else if (name.compare("rDDRL21") == 0){
472  rDDRL21 = value;
473  Dd_RL.assignre(1,0,rDDRL21);}
474  else if (name.compare("rDDRL22") == 0){
475  rDDRL22 = value;
476  Dd_RL.assignre(1,1,rDDRL22);}
477  else if (name.compare("rDDRL23") == 0){
478  rDDRL23 = value;
479  Dd_RL.assignre(1,2,rDDRL23);}
480  else if (name.compare("rDDRL31") == 0){
481  rDDRL31 = value;
482  Dd_RL.assignre(2,0,rDDRL31);}
483  else if (name.compare("rDDRL32") == 0){
484  rDDRL32 = value;
485  Dd_RL.assignre(2,1,rDDRL32);}
486  else if (name.compare("rDDRL33") == 0){
487  rDDRL33 = value;
488  Dd_RL.assignre(2,2,rDDRL33);}
489 
490  else if (name.compare("iDDRL11") == 0){
491  iDDRL11 = value;
492  Dd_RL.assignim(0,0,iDDRL11);}
493  else if (name.compare("iDDRL12") == 0){
494  iDDRL12 = value;
495  Dd_RL.assignim(0,1,iDDRL12);}
496  else if (name.compare("iDDRL13") == 0){
497  iDDRL13 = value;
498  Dd_RL.assignim(0,2,iDDRL13);}
499  else if (name.compare("iDDRL21") == 0){
500  iDDRL21 = value;
501  Dd_RL.assignim(1,0,iDDRL21);}
502  else if (name.compare("iDDRL22") == 0){
503  iDDRL22 = value;
504  Dd_RL.assignim(1,1,iDDRL22);}
505  else if (name.compare("iDDRL23") == 0){
506  iDDRL23 = value;
507  Dd_RL.assignim(1,2,iDDRL23);}
508  else if (name.compare("iDDRL31") == 0){
509  iDDRL31 = value;
510  Dd_RL.assignim(2,0,iDDRL31);}
511  else if (name.compare("iDDRL32") == 0){
512  iDDRL32 = value;
513  Dd_RL.assignim(2,1,iDDRL32);}
514  else if (name.compare("iDDRL33") == 0){
515  iDDRL33 = value;
516  Dd_RL.assignim(2,2,iDDRL33);}
517 
518 
519  else if (name.compare("rDDLR11") == 0){
520  rDDLR11 = value;
521  Dd_LR.assignre(0,0,rDDLR11);}
522  else if (name.compare("rDDLR12") == 0){
523  rDDLR12 = value;
524  Dd_LR.assignre(0,1,rDDLR12);}
525  else if (name.compare("rDDLR13") == 0){
526  rDDLR13 = value;
527  Dd_LR.assignre(0,2,rDDLR13);}
528  else if (name.compare("rDDLR21") == 0){
529  rDDLR21 = value;
530  Dd_LR.assignre(1,0,rDDLR21);}
531  else if (name.compare("rDDLR22") == 0){
532  rDDLR22 = value;
533  Dd_LR.assignre(1,1,rDDLR22);}
534  else if (name.compare("rDDLR23") == 0){
535  rDDLR23 = value;
536  Dd_LR.assignre(1,2,rDDLR23);}
537  else if (name.compare("rDDLR31") == 0){
538  rDDLR31 = value;
539  Dd_LR.assignre(2,0,rDDLR31);}
540  else if (name.compare("rDDLR32") == 0){
541  rDDLR32 = value;
542  Dd_LR.assignre(2,0,rDDLR31);}
543  else if (name.compare("rDDLR33") == 0){
544  rDDLR33 = value;
545  Dd_LR.assignre(2,2,rDDLR33);}
546 
547  else if (name.compare("iDDLR11") == 0){
548  iDDLR11 = value;
549  Dd_LR.assignim(0,0,iDDLR11);}
550  else if (name.compare("iDDLR12") == 0){
551  iDDLR12 = value;
552  Dd_LR.assignim(0,1,iDDLR12);}
553  else if (name.compare("iDDLR13") == 0){
554  iDDLR13 = value;
555  Dd_LR.assignim(0,2,iDDLR13);}
556  else if (name.compare("iDDLR21") == 0){
557  iDDLR21 = value;
558  Dd_LR.assignim(1,0,iDDLR21);}
559  else if (name.compare("iDDLR22") == 0){
560  iDDLR22 = value;
561  Dd_LR.assignim(1,1,iDDLR22);}
562  else if (name.compare("iDDLR23") == 0){
563  iDDLR23 = value;
564  Dd_LR.assignim(1,2,iDDLR23);}
565  else if (name.compare("iDDLR31") == 0){
566  iDDLR31 = value;
567  Dd_LR.assignim(2,0,iDDLR31);}
568  else if (name.compare("iDDLR32") == 0){
569  iDDLR32 = value;
570  Dd_LR.assignim(2,0,iDDLR31);}
571  else if (name.compare("iDDLR33") == 0){
572  iDDLR33 = value;
573  Dd_LR.assignim(2,2,iDDLR33);}
574 
575 
576  else if (name.compare("rDDRR11") == 0){
577  rDDRR11 = value;
578  Dd_RR.assignre(0,0,rDDRR11);}
579  else if (name.compare("rDDRR12") == 0){
580  rDDRR12 = value;
581  Dd_RR.assignre(0,1,rDDRR12);}
582  else if (name.compare("rDDRR13") == 0){
583  rDDRR13 = value;
584  Dd_RR.assignre(0,2,rDDRR13);}
585  else if (name.compare("rDDRR21") == 0){
586  rDDRR21 = value;
587  Dd_RR.assignre(1,0,rDDRR21);}
588  else if (name.compare("rDDRR22") == 0){
589  rDDRR22 = value;
590  Dd_RR.assignre(1,1,rDDRR22);}
591  else if (name.compare("rDDRR23") == 0){
592  rDDRR23 = value;
593  Dd_RR.assignre(1,2,rDDRR23);}
594  else if (name.compare("rDDRR31") == 0){
595  rDDRR31 = value;
596  Dd_RR.assignre(2,0,rDDRR31);}
597  else if (name.compare("rDDRR32") == 0){
598  rDDRR32 = value;
599  Dd_RR.assignre(2,1,rDDRR32);}
600  else if (name.compare("rDDRR33") == 0){
601  rDDRR33 = value;
602  Dd_RR.assignre(2,2,rDDRR33);}
603 
604  else if (name.compare("iDDRR11") == 0){
605  iDDRR11 = value;
606  Dd_RR.assignim(0,0,iDDRR11);}
607  else if (name.compare("iDDRR12") == 0){
608  iDDRR12 = value;
609  Dd_RR.assignim(0,1,iDDRR12);}
610  else if (name.compare("iDDRR13") == 0){
611  iDDRR13 = value;
612  Dd_RR.assignim(0,2,iDDRR13);}
613  else if (name.compare("iDDRR21") == 0){
614  iDDRR21 = value;
615  Dd_RR.assignim(1,0,iDDRR21);}
616  else if (name.compare("iDDRR22") == 0){
617  iDDRR22 = value;
618  Dd_RR.assignim(1,1,iDDRR22);}
619  else if (name.compare("iDDRR23") == 0){
620  iDDRR23 = value;
621  Dd_RR.assignim(1,2,iDDRR23);}
622  else if (name.compare("iDDRR31") == 0){
623  iDDRR31 = value;
624  Dd_RR.assignim(2,0,iDDRR31);}
625  else if (name.compare("iDDRR32") == 0){
626  iDDRR32 = value;
627  Dd_RR.assignim(2,1,iDDRR32);}
628  else if (name.compare("iDDRR33") == 0){
629  iDDRR33 = value;
630  Dd_RR.assignim(2,2,iDDRR33);}
631 
632  else
633  StandardModel::setParameter(name, value);
634 }
635 
636 bool SUSYMassInsertion::CheckParameters(const std::map<std::string, double>& DPars)
637 {
638  for(int i=0; i<NSusyMIvars; i++)
639  if(DPars.find(SusyMIvars[i])==DPars.end()) {
640  std::cout << "missing mandatory SUSY MIA parameter " << SusyMIvars[i] << std::endl;
641  return false;
642  }
643  return(StandardModel::CheckParameters(DPars));
644 }
gslpp::matrix< gslpp::complex > Dd_RL
static const int NSusyMIvars
virtual bool PostUpdate()
The post-update method for StandardModel.
SUSYMassInsertion()
SUSYMassInsertion constructor.
gslpp::matrix< gslpp::complex > Dd_RR
static const std::string SusyMIvars[NSusyMIvars]
virtual bool PostUpdate()
virtual ~SUSYMassInsertion()
SUSYMassInsertion destructor.
virtual bool Init(const std::map< std::string, double > &DPars)
a method to check the correct assignment forthe value of all the SM and SUSY parameters in respect to...
bool UpdateError
A boolean set to false if update is successful.
Definition: Model.h:192
virtual bool InitializeModel()
A model class for the Standard Model.
void setModelInitialized(bool ModelInitialized)
A set method to fix the failure or success of the initialization of the model.
Definition: Model.h:142
gslpp::matrix< gslpp::complex > Dd_LR
virtual bool Update(const std::map< std::string, double > &DPars)
a method to update SM and SUSY parameters found in the argument
gslpp::matrix< gslpp::complex > Du_LL
virtual bool PreUpdate()
virtual bool Init(const std::map< std::string, double > &DPars)
A method to initialize the model parameters.
virtual void setParameter(const std::string name, const double &value)
A method to set the value of a parameter of StandardModel.
virtual bool PreUpdate()
The pre-update method for StandardModel.
A class for the matching of SUSY MIA.
gslpp::matrix< gslpp::complex > Du_RL
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
A method to check if all the mandatory parameters for StandardModel have been provided in model initi...
virtual bool CheckParameters(const std::map< std::string, double > &DPars)
gslpp::matrix< gslpp::complex > Dd_LL
virtual void setParameter(const std::string, const double &)
a method to set the value of all the SUSY parameters given as input in Model.conf ...
SUSYMassInsertionMatching * mySUSYMIA
gslpp::matrix< gslpp::complex > Du_RR
gslpp::matrix< gslpp::complex > Du_LR