BSMPT 3.0.7
BSMPT - Beyond the Standard Model Phase Transitions : A C++ package for the computation of the EWPT in BSM models
Loading...
Searching...
No Matches
transition_tracer.h
1// Copyright (C) 2024 Lisa Biermann, Margarete Mühlleitner, Rui Santos, João
2// Viana
3//
4// SPDX-FileCopyrightText: 2024 Lisa Biermann, Margarete Mühlleitner, Rui
5// Santos, João Viana
6//
7// SPDX-License-Identifier: GPL-3.0-or-later
8
9#pragma once
10
15#include "BSMPT/bounce_solution/bounce_solution.h" // BounceSolution
16#include "BSMPT/gravitational_waves/gw.h" // GravitationalWaves
17#include "BSMPT/minimum_tracer/minimum_tracer.h" // MinimumTracer
18
19namespace BSMPT
20{
21
53{
54 std::shared_ptr<Class_Potential_Origin> modelPointer;
55 double T_low = 0;
56 double T_high = 300;
57 double vwall = 0.95;
58 double perc_prbl = 0.71;
59 double compl_prbl = 0.01;
60 double epsturb = 0.1;
61 int maxpathintegrations = 7;
62 int multistepmode = -1;
63 int num_points = 10;
64 int ewsr_check = 0;
65 int nlo_check = 1;
66
67 int which_minimizer = Minimizer::WhichMinimizerDefault;
68 bool use_multithreading = false;
69
70 bool gw_calculation = false;
71 int which_transition_temp = 3;
72 size_t number_of_initial_scan_temperatures = 25;
73};
74
79{
80 StatusNLOStability status_nlo_stability = StatusNLOStability::NotSet;
81 StatusEWSR status_ewsr = StatusEWSR::NotSet;
82 StatusTracing status_tracing = StatusTracing::NotSet;
83 StatusCoexPair status_coex_pairs = StatusCoexPair::NotSet;
84 // index of vectors is coex_phase_id
85 std::vector<StatusCrit> status_crit;
86 std::vector<StatusGW> status_bounce_sol;
87 std::vector<StatusTemperature> status_nucl_approx;
88 std::vector<StatusTemperature> status_nucl;
89 std::vector<StatusTemperature> status_perc;
90 std::vector<StatusTemperature> status_compl;
91};
92
97{
98 std::optional<double> crit_temp;
99 std::optional<double> nucl_approx_temp;
100 std::optional<double> nucl_temp;
101 std::optional<double> perc_temp;
102 std::optional<double> compl_temp;
103
104 std::vector<double> crit_true_vev;
105 std::vector<double> crit_false_vev;
106 std::vector<double> nucl_approx_true_vev;
107 std::vector<double> nucl_approx_false_vev;
108 std::vector<double> nucl_true_vev;
109 std::vector<double> nucl_false_vev;
110 std::vector<double> perc_true_vev;
111 std::vector<double> perc_false_vev;
112 std::vector<double> compl_true_vev;
113 std::vector<double> compl_false_vev;
114};
115
120{
121 std::optional<double> vwall;
122
123 std::optional<double> alpha;
124 std::optional<double> beta_over_H;
125
126 std::optional<double> K_sw;
127 std::optional<double> K_turb;
128
129 std::optional<double> fpeak_sw;
130 std::optional<double> fpeak_turb;
131 std::optional<double> h2Omega_sw;
132 std::optional<double> h2Omega_turb;
133
134 std::optional<double> SNR_sw;
135 std::optional<double> SNR_turb;
136 std::optional<double> SNR;
137
138 StatusGW status_gw = StatusGW::NotSet;
139 std::optional<double> trans_temp;
140};
141
142struct output
143{
144 std::vector<std::string> legend;
145 status_codes status;
146 std::vector<transition_data> vec_trans_data;
147 std::vector<gw_data> vec_gw_data;
148 std::size_t num_coex_phase_pairs = 0;
149
150 // stores string-identifier of phase id's throughout the transition history of
151 // the universe
152 std::string transition_history = "not_set";
153};
154
156{
157protected:
161 std::shared_ptr<Class_Potential_Origin> modelPointer;
162
163private:
167 std::size_t num_vev;
168
169public:
173 std::vector<CoexPhases> vec_coex;
174
181
186 std::vector<BounceSolution> ListBounceSolution;
187
192};
193
194} // namespace BSMPT
Definition transition_tracer.h:156
std::size_t num_vev
number of VEVs of model
Definition transition_tracer.h:167
std::vector< BounceSolution > ListBounceSolution
Store the list of bounce solutions.
Definition transition_tracer.h:186
std::vector< CoexPhases > vec_coex
vector of all found coexisting phase regions
Definition transition_tracer.h:173
output output_store
output data storage
Definition transition_tracer.h:191
std::shared_ptr< Class_Potential_Origin > modelPointer
modelPointer for the used parameter point
Definition transition_tracer.h:161
This classes calculates the Bounce action of the potential with a set temperature.
Definition CalculateEtaInterface.h:24
StatusEWSR
Possible electroweak symmetry restoration status.
Definition minimum_tracer.h:61
StatusNLOStability
Possible NLO stability status.
Definition minimum_tracer.h:40
StatusGW
Possible results for the GW and bounce_sol class.
Definition minimum_tracer.h:172
StatusTracing
Possible tracing results.
Definition minimum_tracer.h:87
StatusCoexPair
Possible status for the coex phase.
Definition minimum_tracer.h:111
gravitational wave data struct
Definition transition_tracer.h:120
Definition transition_tracer.h:143
status codes struct
Definition transition_tracer.h:79
transition data struct
Definition transition_tracer.h:97
user_input struct to store user input and distribute to the classes
Definition transition_tracer.h:53