7#ifndef SRC_transport_equations_H_
8#define SRC_transport_equations_H_
16#include <boost/numeric/odeint.hpp>
17#include <boost/numeric/odeint/iterator/const_step_time_iterator.hpp>
23class Class_Potential_Origin;
31typedef std::vector<double> state_type;
32typedef boost::numeric::odeint::runge_kutta_cash_karp54<state_type>
35enum class TransportMethod
113 operator()(
const state_type &x, state_type &dxdt,
const double );
135 double get_W_mass(
const std::vector<double> &vev,
const double &T)
const;
318 double getTC()
const;
322 void setTC(
double TC_in);
330 void setvw(
double vw_in);
334 double getvw()
const;
339 double getLW()
const;
344 void setpar(std::vector<double>);
349 std::vector<double>
getpar();
364 void setZMAX(
double z_in,
bool MultiplesOfLW);
396 void init(
const double &vw_input,
397 std::vector<double> &vev_critical_input,
398 std::vector<double> &vev_symmetric_input,
399 const double &TC_input,
400 std::shared_ptr<Class_Potential_Origin> &modelPointer_input,
401 const int &WhichMinimizer = Minimizer::WhichMinimizerDefault);
441 const std::vector<double> &parStart,
497 std::vector<state_type> &m_states;
498 std::vector<double> &m_times;
501 std::vector<double> ×)
507 void operator()(
const state_type &x,
double t)
509 m_states.push_back(x);
510 m_times.push_back(t);
Definition transport_equations.h:50
double symmetric_CP_violating_phase
Definition transport_equations.h:78
double get_W_mass(const std::vector< double > &vev, const double &T) const
Definition transport_equations.cpp:368
transport_equations & operator()(const state_type &x, state_type &dxdt, const double)
Definition transport_equations.cpp:516
bool UseTanBetaSuppression
UseTanBetaSuppression Use the thermal tanbeta suppression in the calculation of the theta(z)
Definition transport_equations.h:56
std::vector< double > calculate_vev(const double &z) const
Definition transport_equations.cpp:445
double calculate_theta(const double &z, const int &diff) const
Definition transport_equations.cpp:474
double LW
Definition transport_equations.h:70
bool UseVelocityTransportEquations
Definition transport_equations.h:62
std::shared_ptr< Class_Potential_Origin > modelPointer
Definition transport_equations.h:87
double broken_CP_violating_phase
Definition transport_equations.h:82
double vw
Definition transport_equations.h:66
double TC
Definition transport_equations.h:74
std::vector< double > get_top_mass_and_derivative(const std::vector< double > &vev) const
Definition transport_equations.cpp:399
std::vector< double > calculate_vev_derivative(const double &z) const
Definition transport_equations.cpp:462
std::vector< double > vev_critical
Definition transport_equations.h:93
This classes calculates the Bounce action of the potential with a set temperature.
Definition CalculateEtaInterface.h:24
Definition transport_equations.h:168
bool UseVelocityTransportEquations
Definition transport_equations.h:176
double getTC() const
Definition transport_equations.cpp:83
std::shared_ptr< Class_Potential_Origin > modelPointer
Definition transport_equations.h:181
void setvw(double vw_in)
Definition transport_equations.cpp:88
double getvw() const
Definition transport_equations.cpp:93
double getBrokenCPViolatingPhase() const
Definition transport_equations.cpp:51
void set_transport_method(TransportMethod method)
Definition transport_equations.cpp:136
std::vector< double > vev_critical
Definition transport_equations.h:210
std::vector< double > getVEVCritical() const
Definition transport_equations.cpp:69
double getSymmetricCPViolatingPhase_bot() const
Definition transport_equations.cpp:41
double getSymmetricCPViolatingPhase_tau() const
Definition transport_equations.cpp:46
double getZMAX() const
Definition transport_equations.cpp:119
void setTC(double TC_in)
Definition transport_equations.cpp:78
double symmetric_CP_violating_phase
Definition transport_equations.h:219
TransportMethod transport_method
Definition transport_equations.h:261
double getLW() const
getLW
Definition transport_equations.cpp:114
double vc
Definition transport_equations.h:205
double TAU_symmetric_CP_violating_phase
Definition transport_equations.h:246
void setSymmetricCPViolatingPhase(double Phase)
Definition transport_equations.cpp:26
double getSymmetricCPViolatingPhase() const
Definition transport_equations.cpp:31
void set_vev_sym_theta(std::vector< double > &vev_in)
set_vev_sym_theta
Definition transport_equations.cpp:145
double TOP_symmetric_CP_violating_phase
Definition transport_equations.h:229
std::vector< double > getpar()
getpar
Definition transport_equations.cpp:128
double zmax
Definition transport_equations.h:195
std::vector< double > par
Definition transport_equations.h:254
std::vector< double > get_vev_sym_theta() const
get_vev_sym_theta
Definition transport_equations.cpp:149
double getBrokenCPViolatingPhase_top() const
Definition transport_equations.cpp:56
double vw
Definition transport_equations.h:185
bool getUseVelocityTransportEquations() const
getUseVelocityTransportEquations
Definition transport_equations.cpp:103
std::vector< double > vev_sym_theta
Definition transport_equations.h:266
double TOP_broken_CP_violating_phase
Definition transport_equations.h:233
double TC
Definition transport_equations.h:200
double LW
Definition transport_equations.h:190
void setUseVelocityTransportEquations(bool in)
Definition transport_equations.cpp:98
std::shared_ptr< Class_Potential_Origin > getModelPointer() const
getModelPointer
Definition transport_equations.cpp:109
double BOT_symmetric_CP_violating_phase
Definition transport_equations.h:237
void setpar(std::vector< double >)
setpar sets par
Definition transport_equations.cpp:124
TransportMethod get_transport_method()
get_transport_method
Definition transport_equations.cpp:132
double BOT_broken_CP_violating_phase
Definition transport_equations.h:241
double TAU_broken_CP_violating_phase
Definition transport_equations.h:250
double getBrokenCPViolatingPhase_bot() const
Definition transport_equations.cpp:60
double broken_CP_violating_phase
Definition transport_equations.h:224
void init(const double &vw_input, std::vector< double > &vev_critical_input, std::vector< double > &vev_symmetric_input, const double &TC_input, std::shared_ptr< Class_Potential_Origin > &modelPointer_input, const int &WhichMinimizer=Minimizer::WhichMinimizerDefault)
init initialises the parameters of struct
Definition transport_equations.cpp:154
void setZMAX(double z_in, bool MultiplesOfLW)
setZMAX defines the value to treat mu(ZMAX) = 0
Definition transport_equations.cpp:140
double getBrokenCPViolatingPhase_tau() const
Definition transport_equations.cpp:64
double getSymmetricCPViolatingPhase_top() const
Definition transport_equations.cpp:36
std::vector< double > vev_symmetric
Definition transport_equations.h:214
std::vector< double > getVEVsym() const
Definition transport_equations.cpp:73
Definition transport_equations.h:414
double TC
Definition transport_equations.h:426
double vw
Definition transport_equations.h:422
boost_cubic_b_spline< double > spline
Definition transport_equations.h:418
Definition transport_equations.h:496
Phase object.
Definition minimum_tracer.h:606
double Integrate_mubl_interpolated(const struct GSL_integration_mubl &p)
Definition transport_equations.cpp:970
double Integrate_mubl(const struct GSL_integration_mubl &p)
Definition transport_equations.cpp:915
double mubl_func(double z, void *p)
Definition transport_equations.cpp:877
std::vector< double > calculateTransportEquation(const double &z, const std::vector< double > &parStart, const struct GSL_integration_mubl ¶ms)
Definition transport_equations.cpp:808
GSL_mubl_interpolation generate_mubl_spline(const struct GSL_integration_mubl &p, int nstep)
Definition transport_equations.cpp:937
double eta_integrand_func(double z, void *p)
Definition transport_equations.cpp:904
double mubl_interpolation(double z, void *p)
Definition transport_equations.cpp:960