You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
'Incorrect number of parameters with "daemon_" in their name detected. Non-daemonflux parameters can not have "daemon_" in their name. Rename your non-daemonflux parameters which do not comly!'
Implementation of DEAMON flux (https://arxiv.org/abs/2303.00022)
2
+
Implementation of DAEMON flux (https://arxiv.org/abs/2303.00022)
3
3
by Juan Pablo Yañez and Anatoli Fedynitch for use in PISA.
4
4
5
5
Maria Liubarska, J.P. Yanez 2023
6
6
"""
7
7
8
8
importnumpyasnp
9
9
fromdaemonfluximportFlux
10
+
fromdaemonfluximport__version__asdaemon_version
10
11
11
12
frompisaimportFTYPE, TARGET
12
13
frompisa.core.stageimportStage
14
+
frompisa.core.paramimportParam
13
15
frompisa.utils.logimportlogging
14
16
frompisa.utils.profilerimportprofile
15
17
fromnumbaimportjit
16
18
fromscipyimportinterpolate
19
+
frompackaging.versionimportVersion
17
20
18
21
19
22
classdaemon_flux(Stage):
20
23
"""
21
-
DEAMON fulx stage
24
+
DAEMON flux stage
22
25
23
26
Parameters
24
27
----------
25
28
26
29
params: ParamSet
27
30
Must have parameters: .. ::
28
31
29
-
K_158G : quantity (dimensionless)
32
+
daemon_K_158G : quantity (dimensionless)
30
33
31
-
K_2P : quantity (dimensionless)
34
+
daemon_K_2P : quantity (dimensionless)
32
35
33
-
K_31G : quantity (dimensionless)
36
+
daemon_K_31G : quantity (dimensionless)
34
37
35
-
antiK_158G : quantity (dimensionless)
38
+
daemon_antiK_158G : quantity (dimensionless)
36
39
37
-
antiK_2P : quantity (dimensionless)
40
+
daemon_antiK_2P : quantity (dimensionless)
38
41
39
-
antiK_31G : quantity (dimensionless)
42
+
daemon_antiK_31G : quantity (dimensionless)
40
43
41
-
n_158G : quantity (dimensionless)
44
+
daemon_n_158G : quantity (dimensionless)
42
45
43
-
n_2P : quantity (dimensionless)
46
+
daemon_n_2P : quantity (dimensionless)
44
47
45
-
p_158G : quantity (dimensionless)
48
+
daemon_p_158G : quantity (dimensionless)
46
49
47
-
p_2P : quantity (dimensionless)
50
+
daemon_p_2P : quantity (dimensionless)
48
51
49
-
pi_158G : quantity (dimensionless)
52
+
daemon_pi_158G : quantity (dimensionless)
50
53
51
-
pi_20T : quantity (dimensionless)
54
+
daemon_pi_20T : quantity (dimensionless)
52
55
53
-
pi_2P : quantity (dimensionless)
56
+
daemon_pi_2P : quantity (dimensionless)
54
57
55
-
pi_31G : quantity (dimensionless)
58
+
daemon_pi_31G : quantity (dimensionless)
56
59
57
-
antipi_158G : quantity (dimensionless)
60
+
daemon_antipi_158G : quantity (dimensionless)
58
61
59
-
antipi_20T : quantity (dimensionless)
62
+
daemon_antipi_20T : quantity (dimensionless)
60
63
61
-
antipi_2P : quantity (dimensionless)
64
+
daemon_antipi_2P : quantity (dimensionless)
62
65
63
-
antipi_31G : quantity (dimensionless)
66
+
daemon_antipi_31G : quantity (dimensionless)
64
67
65
-
GSF_1 : quantity (dimensionless)
68
+
daemon_GSF_1 : quantity (dimensionless)
66
69
67
-
GSF_2 : quantity (dimensionless)
70
+
daemon_GSF_2 : quantity (dimensionless)
68
71
69
-
GSF_3 : quantity (dimensionless)
72
+
daemon_GSF_3 : quantity (dimensionless)
70
73
71
-
GSF_4 : quantity (dimensionless)
74
+
daemon_GSF_4 : quantity (dimensionless)
72
75
73
-
GSF_5 : quantity (dimensionless)
76
+
daemon_GSF_5 : quantity (dimensionless)
74
77
75
-
GSF_6 : quantity (dimensionless)
78
+
daemon_GSF_6 : quantity (dimensionless)
76
79
77
80
"""
78
81
@@ -81,70 +84,43 @@ def __init__(
81
84
**std_kwargs,
82
85
):
83
86
84
-
self.deamon_params= ['K_158G',
85
-
'K_2P',
86
-
'K_31G',
87
-
'antiK_158G',
88
-
'antiK_2P',
89
-
'antiK_31G',
90
-
'n_158G',
91
-
'n_2P',
92
-
'p_158G',
93
-
'p_2P',
94
-
'pi_158G',
95
-
'pi_20T',
96
-
'pi_2P',
97
-
'pi_31G',
98
-
'antipi_158G',
99
-
'antipi_20T',
100
-
'antipi_2P',
101
-
'antipi_31G',
102
-
'GSF_1',
103
-
'GSF_2',
104
-
'GSF_3',
105
-
'GSF_4',
106
-
'GSF_5',
107
-
'GSF_6',
108
-
]
109
-
110
-
self.deamon_names= ['K+_158G',
111
-
'K+_2P',
112
-
'K+_31G',
113
-
'K-_158G',
114
-
'K-_2P',
115
-
'K-_31G',
116
-
'n_158G',
117
-
'n_2P',
118
-
'p_158G',
119
-
'p_2P',
120
-
'pi+_158G',
121
-
'pi+_20T',
122
-
'pi+_2P',
123
-
'pi+_31G',
124
-
'pi-_158G',
125
-
'pi-_20T',
126
-
'pi-_2P',
127
-
'pi-_31G',
128
-
'GSF_1',
129
-
'GSF_2',
130
-
'GSF_3',
131
-
'GSF_4',
132
-
'GSF_5',
133
-
'GSF_6',
134
-
]
87
+
# first have to check daemonflux package version is >=0.8.0
88
+
# (have to do this to ensure chi2 prior penalty is calculated correctly)
89
+
ifVersion(daemon_version) <Version("0.8.0"):
90
+
logging.fatal("Detected daemonflux version below 0.8.0! This will lead to incorrect penalty calculation. You must update your daemonflux package to use this stage. You can do it by running 'pip install daemonflux --upgrade'")
91
+
raiseException('detected daemonflux version < 0.8.0')
0 commit comments