Skip to content

Commit 4057105

Browse files
authored
Merge pull request #150 from GambitBSM/FlavBit_development_cleanup
Flav bit development cleanup
2 parents 6aae14e + 6577d9a commit 4057105

192 files changed

Lines changed: 10514 additions & 4933 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Backends/include/gambit/Backends/backend_info.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,9 @@ namespace Gambit
200200
/// Load a backend library written in C, C++ or Fortran
201201
void loadLibrary_C_CXX_Fortran(const str&, const str&, const str&, bool with_BOSS);
202202

203+
/// Load a backend data library
204+
void loadLibrary_data(const str&, const str&, const str&);
205+
203206
#ifdef HAVE_MATHEMATICA
204207
/// Load WSTP for Mathematica backends
205208
void loadLibrary_Mathematica(const str&, const str&, const str&);

Backends/include/gambit/Backends/backend_macros.hpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -165,6 +165,9 @@ namespace Gambit \
165165
/* Register the factory functions for all classes loaded by this backend. */\
166166
BOOST_PP_IIF(DO_CLASSLOADING, LOAD_ALL_FACTORIES, ) \
167167
\
168+
/* Only do the rest if this is not a data-only backend */ \
169+
BOOST_PP_IF(DATA_ONLY, , \
170+
\
168171
/* Register the initialisation function for this backend */ \
169172
CORE_START_CAPABILITY(BackendIniBit, \
170173
CAT_4(BACKENDNAME,_,SAFE_VERSION,_init), NOT_MODEL) \
@@ -186,6 +189,7 @@ namespace Gambit \
186189
} \
187190
} \
188191
} \
192+
)
189193

190194

191195
/// Register this backend with the Core if not running in standalone mode.

Backends/include/gambit/Backends/backend_types/FeynHiggs.hpp

Lines changed: 73 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -24,134 +24,134 @@
2424

2525
#define ncouplings 681
2626
#define Roffset 472
27-
// #define Coupling(c) couplingS(c)
28-
// #define LCoupling(c) couplingS(c)
29-
// #define RCoupling(c) couplingS(c+Roffset)
27+
// #define Coupling(c) couplingS(c)
28+
// #define LCoupling(c) couplingS(c)
29+
// #define RCoupling(c) couplingS(c+Roffset)
3030

3131
#define ncouplingsms 231
3232
#define RSMoffset 108
33-
// #define CouplingSM(c) couplingsmS(c)
34-
// #define LCouplingSM(c) couplingsmS(c)
35-
// #define RCouplingSM(c) couplingsmS(c+RSMoffset)
33+
// #define CouplingSM(c) couplingsmS(c)
34+
// #define LCouplingSM(c) couplingsmS(c)
35+
// #define RCouplingSM(c) couplingsmS(c+RSMoffset)
3636

3737
#define ngammas 978
3838
#define BRoffset 491
39-
// #define GammaTot(h) gammaS(h)
40-
// #define Gamma(c) gammaS(c+4)
41-
// #define BR(c) gammaS(c+BRoffset)
39+
// #define GammaTot(h) gammaS(h)
40+
// #define Gamma(c) gammaS(c+4)
41+
// #define BR(c) gammaS(c+BRoffset)
4242

4343
#define ngammasms 250
4444
#define BRSMoffset 127
45-
// #define GammaSMTot(h) gammasmS(h)
46-
// #define GammaSM(c) gammasmS(c+4)
47-
// #define BRSM(c) gammasmS(c+BRSMoffset)
45+
// #define GammaSMTot(h) gammasmS(h)
46+
// #define GammaSM(c) gammasmS(c+4)
47+
// #define BRSM(c) gammasmS(c+BRSMoffset)
4848

4949

5050
#define H0VV(h,vv) (h)+3*(vv)-3
5151
#if 0
52-
h = 1..3 Higgs: h0, HH, A0
53-
vv = 1..5 vector-boson pair: gamma gamma, gamma Z, ZZ, WW, gg
52+
h = 1..3 Higgs: h0, HH, A0
53+
vv = 1..5 vector-boson pair: gamma gamma, gamma Z, ZZ, WW, gg
5454
#endif
5555

5656
#define H0FF(h,t,g1,g2) (h)+3*(t)+12*(g1)+36*(g2)-36
5757
#if 0
58-
h = 1..3 Higgs: h0, HH, A0
59-
t = 1..4 fermion type: nu, e, u, d
60-
g1 = 1..3 fermion 1 generation
61-
g2 = 1..3 fermion 2 generation
58+
h = 1..3 Higgs: h0, HH, A0
59+
t = 1..4 fermion type: nu, e, u, d
60+
g1 = 1..3 fermion 1 generation
61+
g2 = 1..3 fermion 2 generation
6262
#endif
6363

6464
#define HpFF(p,g1,g2) (p)+2*(g1)+6*(g2)+115
6565
#if 0
66-
p = 1..2 decay products: leptons, quarks
67-
g1 = 1..3 up-type fermion 1 generation
68-
g2 = 1..3 down-type fermion 2 generation
66+
p = 1..2 decay products: leptons, quarks
67+
g1 = 1..3 up-type fermion 1 generation
68+
g2 = 1..3 down-type fermion 2 generation
6969
#endif
7070

7171
#define H0ChaCha(h,c1,c2) (h)+3*(c1)+6*(c2)+132
7272
#if 0
73-
h = 1..3 Higgs: h0, HH, A0
74-
c1 = 1..2 chargino 1
75-
c2 = 1..2 chargino 2
73+
h = 1..3 Higgs: h0, HH, A0
74+
c1 = 1..2 chargino 1
75+
c2 = 1..2 chargino 2
7676
#endif
7777

7878
#define H0NeuNeu(h,n1,n2) (h)+3*(n1)+12*(n2)+138
7979
#if 0
80-
h = 1..3 Higgs: h0, HH, A0
81-
n1 = 1..4 neutralino 1
82-
n2 = 1..4 neutralino 2
80+
h = 1..3 Higgs: h0, HH, A0
81+
n1 = 1..4 neutralino 1
82+
n2 = 1..4 neutralino 2
8383
#endif
8484

8585
#define HpNeuCha(n1,c2) (n1)+4*(c2)+197
8686
#if 0
87-
n1 = 1..4 neutralino
88-
c2 = 1..2 chargino
87+
n1 = 1..4 neutralino
88+
c2 = 1..2 chargino
8989
#endif
9090

9191
#define H0HV(h,hv) (h)+3*(hv)+206
9292
#if 0
93-
h = 1..3 decaying Higgs: h0, HH, A0
94-
hv = 1..3 produced pair: h0-Z, HH-Z, A0-Z
93+
h = 1..3 decaying Higgs: h0, HH, A0
94+
hv = 1..3 produced pair: h0-Z, HH-Z, A0-Z
9595
#endif
9696

9797
#define HpHV(hv) (hv)+218
9898
#if 0
99-
hv = 1..3 produced pair: h0-W, HH-W, A0-W
99+
hv = 1..3 produced pair: h0-W, HH-W, A0-W
100100
#endif
101101

102102
#define H0HH(h,h1,h2) (h)+3*(h1)+12*(h2)+206
103103
#if 0
104-
h = 1..3 decaying Higgs: h0, HH, A0
105-
h1 = 1..4 produced Higgs 1: h0, HH, A0, Hp
106-
h2 = 1..4 produced Higgs 2: h0, HH, A0, Hp
104+
h = 1..3 decaying Higgs: h0, HH, A0
105+
h1 = 1..4 produced Higgs 1: h0, HH, A0, Hp
106+
h2 = 1..4 produced Higgs 2: h0, HH, A0, Hp
107107
#endif
108108

109109
#define H0SfSf(h,s1,s2,t,g) (h)+3*(s1)+6*(s2)+12*(t)+48*(g)+200
110110
#if 0
111-
h = 1..3 Higgs: h0, HH, A0
112-
s1 = 1..2 sfermion 1
113-
s2 = 1..2 sfermion 2
114-
t = 1..4 sfermion type: nu, e, u, d
115-
g = 1..3 common sfermion generation
111+
h = 1..3 Higgs: h0, HH, A0
112+
s1 = 1..2 sfermion 1
113+
s2 = 1..2 sfermion 2
114+
t = 1..4 sfermion type: nu, e, u, d
115+
g = 1..3 common sfermion generation
116116
#endif
117117

118118
#define HpSfSf(s1,s2,p,g1,g2) (s1)+2*(s2)+4*(p)+8*(g1)+24*(g2)+375
119119
#if 0
120-
s1 = 1..2 sfermion 1
121-
s2 = 1..2 sfermion 2
122-
p = 1..2 decay products: sleptons, squarks
123-
g1 = 1..3 up-type sfermion 1 generation
124-
g2 = 1..3 down-type sfermion 2 generation
120+
s1 = 1..2 sfermion 1
121+
s2 = 1..2 sfermion 2
122+
p = 1..2 decay products: sleptons, squarks
123+
g1 = 1..3 up-type sfermion 1 generation
124+
g2 = 1..3 down-type sfermion 2 generation
125125
#endif
126126

127127
#define tBF(bf) (bf)+485
128128
#if 0
129-
bf = 1..2 W-b, H-b
129+
bf = 1..2 W-b, H-b
130130
#endif
131131

132132

133133
#define nprodxs 52
134134

135-
#define bbh(h) prodXS(h)
136-
#define bbhSM(h) prodXS((h)+3)
137-
#define btagbh(h) prodXS((h)+6)
138-
#define btagbhSM(h) prodXS((h)+9)
139-
#define ggh(h) prodXS((h)+12)
140-
#define ggh2(h) prodXS((h)+15)
141-
#define gghSM(h) prodXS((h)+18)
142-
#define qqh(h) prodXS((h)+21)
143-
#define qqhSM(h) prodXS((h)+24)
144-
#define tth(h) prodXS((h)+27)
145-
#define tthSM(h) prodXS((h)+30)
146-
#define Wh(h) prodXS((h)+33)
147-
#define WhSM(h) prodXS((h)+36)
148-
#define Zh(h) prodXS((h)+39)
149-
#define ZhSM(h) prodXS((h)+42)
150-
#define StSth(h) prodXS((h)+45)
151-
#define tHm prodXS(49)
152-
#define tHm2 prodXS(50)
153-
#define tHm2lo prodXS(51)
154-
#define tHm2hi prodXS(52)
135+
#define bbh(h) prodXS(h)
136+
#define bbhSM(h) prodXS((h)+3)
137+
#define btagbh(h) prodXS((h)+6)
138+
#define btagbhSM(h) prodXS((h)+9)
139+
#define ggh(h) prodXS((h)+12)
140+
#define ggh2(h) prodXS((h)+15)
141+
#define gghSM(h) prodXS((h)+18)
142+
#define qqh(h) prodXS((h)+21)
143+
#define qqhSM(h) prodXS((h)+24)
144+
#define tth(h) prodXS((h)+27)
145+
#define tthSM(h) prodXS((h)+30)
146+
#define Wh(h) prodXS((h)+33)
147+
#define WhSM(h) prodXS((h)+36)
148+
#define Zh(h) prodXS((h)+39)
149+
#define ZhSM(h) prodXS((h)+42)
150+
#define StSth(h) prodXS((h)+45)
151+
#define tHm prodXS(49)
152+
#define tHm2 prodXS(50)
153+
#define tHm2lo prodXS(51)
154+
#define tHm2hi prodXS(52)
155155

156156

157157
namespace Gambit
@@ -164,7 +164,7 @@ namespace Gambit
164164
typedef const fh_complex fh_ccomplex;
165165

166166
// Container for FeynHiggs Higgs mass/mixings information (from FHHiggsCorr and FHUncertainties backend functions)
167-
struct fh_HiggsMassObs
167+
struct fh_HiggsMassObs_container
168168
{
169169
// Higgs mass with
170170
// 0 - m1 (Mh in rMSSM)
@@ -190,7 +190,7 @@ namespace Gambit
190190
};
191191

192192
// Container for FeynHiggs Flavour observable information (from FHFlavour backend function)
193-
struct fh_FlavourObs
193+
struct fh_FlavourObs_container
194194
{
195195
fh_real Bsg_MSSM; // B -> Xs gamma in MSSM
196196
fh_real Bsg_SM; // B -> Xs gamma in SM
@@ -201,7 +201,7 @@ namespace Gambit
201201
};
202202

203203
// Container for FeynHiggs precision constraints observables (from FHConstraints backend function)
204-
struct fh_PrecisionObs
204+
struct fh_PrecisionObs_container
205205
{
206206
fh_real gmu2; // g_{mu}-2
207207
fh_real deltaRho; // deltaRho
@@ -216,7 +216,7 @@ namespace Gambit
216216
};
217217

218218
// Container for FeynHiggs MSSM masses (from FHGetPara backend function)
219-
struct fh_MSSMMassObs
219+
struct fh_MSSMMassObs_container
220220
{
221221
// zero if minimal, non-zero if non-minimal flavour violation
222222
int nmfv;
@@ -272,7 +272,7 @@ namespace Gambit
272272
};
273273

274274
// Container for FeynHiggs couplings (from FHCouplings backend function)
275-
struct fh_Couplings
275+
struct fh_Couplings_container
276276
{
277277
fh_complex couplings[ncouplings];
278278
fh_complex couplings_sm[ncouplingsms];
@@ -283,7 +283,7 @@ namespace Gambit
283283
};
284284

285285
// Container for FeynHiggs Higgs prod xsecs (from FHHiggsProd backend function)
286-
struct fh_HiggsProd
286+
struct fh_HiggsProd_container
287287
{
288288
fh_real prodxs_Tev[nprodxs];
289289
fh_real prodxs_LHC7[nprodxs];
@@ -292,4 +292,4 @@ namespace Gambit
292292

293293
}
294294

295-
#endif /* defined __FeynHiggs_types_hpp__ */
295+
#endif /* defined __FeynHiggs_types_hpp__ */
Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
#ifndef __abstract_HL_BifurGaussian_HepLike_1_1_h__
2+
#define __abstract_HL_BifurGaussian_HepLike_1_1_h__
3+
4+
#include <cstddef>
5+
#include <iostream>
6+
#include <string>
7+
#include "gambit/Backends/abstractbase.hpp"
8+
#include "forward_decls_abstract_classes.h"
9+
#include "forward_decls_wrapper_classes.h"
10+
#include "wrapper_HL_Gaussian_decl.h"
11+
12+
#include "identification.hpp"
13+
14+
namespace CAT_3(BACKENDNAME,_,SAFE_VERSION)
15+
{
16+
17+
18+
class Abstract_HL_BifurGaussian : virtual public Abstract_HL_Gaussian
19+
{
20+
public:
21+
22+
virtual void Read() =0;
23+
24+
virtual double GetChi2(double, double) =0;
25+
26+
virtual double GetChi2__BOSS(double) =0;
27+
28+
virtual double GetLikelihood(double, double) =0;
29+
30+
virtual double GetLikelihood__BOSS(double) =0;
31+
32+
virtual double GetLogLikelihood(double, double) =0;
33+
34+
virtual double GetLogLikelihood__BOSS(double) =0;
35+
36+
public:
37+
using Abstract_HL_Gaussian::pointer_assign__BOSS;
38+
virtual void pointer_assign__BOSS(Abstract_HL_BifurGaussian*) =0;
39+
virtual Abstract_HL_BifurGaussian* pointer_copy__BOSS() =0;
40+
41+
private:
42+
HL_BifurGaussian* wptr;
43+
bool delete_wrapper;
44+
public:
45+
HL_BifurGaussian* get_wptr() { return wptr; }
46+
void set_wptr(HL_BifurGaussian* wptr_in) { wptr = wptr_in; }
47+
bool get_delete_wrapper() { return delete_wrapper; }
48+
void set_delete_wrapper(bool del_wrp_in) { delete_wrapper = del_wrp_in; }
49+
50+
public:
51+
Abstract_HL_BifurGaussian()
52+
{
53+
wptr = 0;
54+
delete_wrapper = false;
55+
}
56+
57+
Abstract_HL_BifurGaussian(const Abstract_HL_BifurGaussian& in) :
58+
Abstract_HL_Data(in), Abstract_HL_Gaussian(in)
59+
{
60+
wptr = 0;
61+
delete_wrapper = false;
62+
}
63+
64+
Abstract_HL_BifurGaussian& operator=(const Abstract_HL_BifurGaussian&) { return *this; }
65+
66+
virtual void init_wrapper() =0;
67+
68+
HL_BifurGaussian* get_init_wptr()
69+
{
70+
init_wrapper();
71+
return wptr;
72+
}
73+
74+
HL_BifurGaussian& get_init_wref()
75+
{
76+
init_wrapper();
77+
return *wptr;
78+
}
79+
80+
virtual ~Abstract_HL_BifurGaussian() =0;
81+
};
82+
83+
}
84+
85+
86+
#include "gambit/Backends/backend_undefs.hpp"
87+
88+
89+
#endif /* __abstract_HL_BifurGaussian_HepLike_1_1_h__ */

0 commit comments

Comments
 (0)