a Code for the Combination of Indirect and Direct Constraints on High Energy Physics Models Logo
GeneralTHDMZ2Unitarity.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2025 HEPfit Collaboration
3 *
4 *
5 * For the licensing terms see doc/COPYING.
6 */
7
8#ifndef GENERALTHDMZ2UNITARITY_H
9#define GENERALTHDMZ2UNITARITY_H
10
11#include "ThObservable.h"
12#include "GeneralTHDMZ2Runner.h"
13#include <gslpp.h>
14
33class unitarity_Z2 : public ThObservable {
34public:
38 unitarity_Z2(const StandardModel& SM_i);
39
40protected:
42
43 gslpp::matrix<double> myZ2_at_Q;
44
45 void computeZ2_at_Q();
46};
47
48/************************************/
49/* Eigenvalues of the even 00 block */
50/************************************/
51
58public:
59
64
68 double computeThValue();
69};
70
77public:
78
83
87 double computeThValue();
88};
89
90
91/***********************************/
92/* Eigenvalues of the odd 00 block */
93/***********************************/
94
101public:
102
107
111 double computeThValue();
112};
113
120public:
121
126
130 double computeThValue();
131};
132
133
134/************************************/
135/* Eigenvalues of the even 01 block */
136/************************************/
137
144public:
145
150
154 double computeThValue();
155};
156
163public:
164
169
173 double computeThValue();
174};
175
176
177/***********************************/
178/* Eigenvalues of the odd 01 block */
179/***********************************/
180
187public:
188
193
197 double computeThValue();
198};
199
206public:
207
212
216 double computeThValue();
217};
218
219
220/**********************************/
221/* Eigenvalue of the odd 10 block */
222/**********************************/
223
230public:
231
235 unitarity10odd_Z2(const StandardModel& SM_i);
236
240 double computeThValue();
241};
242
243
244/************************************/
245/* Eigenvalues of the even 11 block */
246/************************************/
247
254public:
255
260
264 double computeThValue();
265};
266
273public:
274
279
283 double computeThValue();
284};
285
286
287/**********************************/
288/* Eigenvalue of the odd 11 block */
289/**********************************/
290
297public:
298
302 unitarity11odd_Z2(const StandardModel& SM_i);
303
307 double computeThValue();
308};
309
310
311/***********************************/
312/* R1p ratios of the even 00 block */
313/***********************************/
314
321//class R1p00eveP_Z2: public unitarity_Z2 {
322//public:
323//
324// /**
325// * @brief unitarity00eveP_Z2 constructor.
326// */
327// R1p00eveP_Z2(const StandardModel& SM_i);
328//
329// /**
330// * @return @f$a^{\text{even}}_{00+}@f$
331// */
332// double computeThValue();
333//
334// private:
335// const GeneralTHDMZ2 * myGTHDMZ2;
336//};
337
339public:
340
344 R1p00eveP_Z2(const StandardModel& SM_i);
345
349 double computeThValue();
350
351private:
353};
354
361public:
362
366 R1p00eveM_Z2(const StandardModel& SM_i);
367
371 double computeThValue();
372
373private:
375};
376
377
378/**********************************/
379/* R1p ratios of the odd 00 block */
380/**********************************/
381
388public:
389
393 R1p00oddP_Z2(const StandardModel& SM_i);
394
398 double computeThValue();
399
400private:
402};
403
410public:
411
415 R1p00oddM_Z2(const StandardModel& SM_i);
416
420 double computeThValue();
421
422private:
424};
425
426
427/***********************************/
428/* R1p ratios of the even 01 block */
429/***********************************/
430
437public:
438
442 R1p01eveP_Z2(const StandardModel& SM_i);
443
447 double computeThValue();
448
449private:
451};
452
459public:
460
464 R1p01eveM_Z2(const StandardModel& SM_i);
465
469 double computeThValue();
470
471private:
473};
474
475
476/**********************************/
477/* R1p ratios of the odd 01 block */
478/**********************************/
479
486public:
487
491 R1p01oddP_Z2(const StandardModel& SM_i);
492
496 double computeThValue();
497
498private:
500};
501
508public:
509
513 R1p01oddM_Z2(const StandardModel& SM_i);
514
518 double computeThValue();
519
520private:
522};
523
524
525/*********************************/
526/* R1p ratio of the odd 10 block */
527/*********************************/
528
535public:
536
540 R1p10odd_Z2(const StandardModel& SM_i);
541
545 double computeThValue();
546
547private:
549};
550
551
552/***********************************/
553/* R1p ratios of the even 11 block */
554/***********************************/
555
562public:
563
567 R1p11eveP_Z2(const StandardModel& SM_i);
568
572 double computeThValue();
573
574private:
576};
577
584public:
585
589 R1p11eveM_Z2(const StandardModel& SM_i);
590
594 double computeThValue();
595
596private:
598};
599
600
601/*********************************/
602/* R1p ratio of the odd 11 block */
603/*********************************/
604
611public:
612
616 R1p11odd_Z2(const StandardModel& SM_i);
617
621 double computeThValue();
622
623private:
625};
626
627
629// An observable for tanb
630
636class tanbetaZ2: public ThObservable {
637public:
638
642 tanbetaZ2(const StandardModel& SM_i);
643
647 double computeThValue();
648
649private:
651};
652
653#endif /* GENERALTHDMZ2UNITARITY_H */
An RGE running algorithm for the GeneralTHDMZ2 parameters.
Perturbative unitarity ratio for the minus-sign eigenvalue of the even 00 block.
const GeneralTHDMZ2 * myGTHDMZ2
R1p00eveM_Z2(const StandardModel &SM_i)
R1p00eveM_Z2 constructor.
Perturbative unitarity ratio for the plus-sign eigenvalue of the even 00 block.
R1p00eveP_Z2(const StandardModel &SM_i)
R1p00eveP_Z2 constructor.
const GeneralTHDMZ2 * myGTHDMZ2
Perturbative unitarity ratio for the minus-sign eigenvalue of the odd 00 block.
const GeneralTHDMZ2 * myGTHDMZ2
R1p00oddM_Z2(const StandardModel &SM_i)
R1p00oddM_Z2 constructor.
Perturbative unitarity ratio for the plus-sign eigenvalue of the odd 00 block.
R1p00oddP_Z2(const StandardModel &SM_i)
R1p00oddP_Z2 constructor.
const GeneralTHDMZ2 * myGTHDMZ2
Perturbative unitarity ratio for the minus-sign eigenvalue of the even 01 block.
R1p01eveM_Z2(const StandardModel &SM_i)
R1p01eveM_Z2 constructor.
const GeneralTHDMZ2 * myGTHDMZ2
Perturbative unitarity ratio for the plus-sign eigenvalue of the even 01 block.
const GeneralTHDMZ2 * myGTHDMZ2
R1p01eveP_Z2(const StandardModel &SM_i)
R1p01eveP_Z2 constructor.
Perturbative unitarity ratio for the minus-sign eigenvalue of the odd 01 block.
const GeneralTHDMZ2 * myGTHDMZ2
R1p01oddM_Z2(const StandardModel &SM_i)
R1p01oddM_Z2 constructor.
Perturbative unitarity ratio for the plus-sign eigenvalue of the odd 01 block.
const GeneralTHDMZ2 * myGTHDMZ2
R1p01oddP_Z2(const StandardModel &SM_i)
R1p01oddP_Z2 constructor.
Perturbative unitarity ratio for the eigenvalue of the odd 10 block.
R1p10odd_Z2(const StandardModel &SM_i)
R1p10odd_Z2 constructor.
const GeneralTHDMZ2 * myGTHDMZ2
Perturbative unitarity ratio for the minus-sign eigenvalue of the even 11 block.
const GeneralTHDMZ2 * myGTHDMZ2
R1p11eveM_Z2(const StandardModel &SM_i)
R1p11eveM_Z2 constructor.
Perturbative unitarity ratio for the plus-sign eigenvalue of the even 11 block.
R1p11eveP_Z2(const StandardModel &SM_i)
R1p11eveP_Z2 constructor.
const GeneralTHDMZ2 * myGTHDMZ2
Perturbative unitarity ratio for the eigenvalue of the odd 11 block.
const GeneralTHDMZ2 * myGTHDMZ2
R1p11odd_Z2(const StandardModel &SM_i)
R1p11odd_Z2 constructor.
A model class for the Standard Model.
A class for a model prediction of an observable.
Definition: ThObservable.h:25
The tangent of beta.
const GeneralTHDMZ2 * myGTHDMZ2
tanbetaZ2(const StandardModel &SM_i)
tanbetaZ2 constructor.
Minus-sign eigenvalue of the even 00 block.
unitarity00eveM_Z2(const StandardModel &SM_i)
unitarity00eveM_Z2 constructor.
Plus-sign eigenvalue of the even 00 block.
unitarity00eveP_Z2(const StandardModel &SM_i)
unitarity00eveP_Z2 constructor.
Minus-sign eigenvalue of the odd 00 block.
unitarity00oddM_Z2(const StandardModel &SM_i)
unitarity00oddM_Z2 constructor.
Plus-sign eigenvalue of the odd 00 block.
unitarity00oddP_Z2(const StandardModel &SM_i)
unitarity00oddP_Z2 constructor.
Minus-sign eigenvalue of the even 01 block.
unitarity01eveM_Z2(const StandardModel &SM_i)
unitarity01eveM_Z2 constructor.
Plus-sign eigenvalue of the even 01 block.
unitarity01eveP_Z2(const StandardModel &SM_i)
unitarity01eveP_Z2 constructor.
Minus-sign eigenvalue of the odd 01 block.
unitarity01oddM_Z2(const StandardModel &SM_i)
unitarity01oddM_Z2 constructor.
Plus-sign eigenvalue of the odd 01 block.
unitarity01oddP_Z2(const StandardModel &SM_i)
unitarity01oddP_Z2 constructor.
Eigenvalue of the odd 10 block.
unitarity10odd_Z2(const StandardModel &SM_i)
unitarity10odd_Z2 constructor.
Minus-sign eigenvalue of the even 11 block.
unitarity11eveM_Z2(const StandardModel &SM_i)
unitarity11eveM_Z2 constructor.
Plus-sign eigenvalue of the even 11 block.
unitarity11eveP_Z2(const StandardModel &SM_i)
unitarity11eveP_Z2 constructor.
Eigenvalue of the odd 11 block.
unitarity11odd_Z2(const StandardModel &SM_i)
unitarity11odd_Z2 constructor.
An observable class for NLO perturbative unitarity conditions to the THDM with a Z2 symmetry.
unitarity_Z2(const StandardModel &SM_i)
unitarity_Z2 constructor.
gslpp::matrix< double > myZ2_at_Q
GeneralTHDMZ2Runner myGTHDM