BSMPT 3.0.7
BSMPT - Beyond the Standard Model Phase Transitions : A C++ package for the computation of the EWPT in BSM models
|
#include <BSMPT/config.h>
#include <BSMPT/models/IncludeAllModels.h>
#include <memory>
#include <thread>
#include <vector>
Go to the source code of this file.
Classes | |
struct | BSMPT::Minimizer::MinimizersToUse |
The MinimizersToUse struct used as a return of GetMinimizers. More... | |
struct | BSMPT::Minimizer::EWPTReturnType |
The EWPTReturnType struct Contains the following information. More... | |
Namespaces | |
namespace | BSMPT |
This classes calculates the Bounce action of the potential with a set temperature. | |
Enumerations | |
enum class | BSMPT::Minimizer::MinimizerStatus { SUCCESS = 1 , NOTVANISHINGATFINALTEMP = -1 , NOTNLOSTABLE = -2 , NUMERICALLYUNSTABLE = -3 , BELOWTHRESHOLD = -4 , NLOVEVZEROORINF = -5 } |
The MinimizerStatus enum for the Statusflags of the minimizer. | |
Functions | |
constexpr int | BSMPT::Minimizer::CalcWhichMinimizer (bool UseGSL=UseGSLDefault, bool UseCMAES=UseLibCMAESDefault, bool UseNLopt=UseNLoptDefault) |
CalcWhichMinimizer Calculates the WhichMinimizer value with the given Minimizer options. | |
MinimizersToUse | BSMPT::Minimizer::GetMinimizers (int WhichMinimizer) |
GetMinimizers returns a struct containing the bools deciding which minimizers should be used or not. | |
std::vector< double > | BSMPT::Minimizer::Minimize_gen_all (const std::shared_ptr< Class_Potential_Origin > &modelPointer, const double &Temp, std::vector< double > &Check, const std::vector< double > &start, const int &WhichMinimizer=WhichMinimizerDefault, bool UseMultithreading=true) |
Minimization of the Model Minimizes the given Potential with parameters par and CT-parameters parCT at a given Temperature Temp and writes the solution in the std::vector sol. The Minimization Debugging Options are written in the std::vector Check. The std::vector Start gives the start value for the CMA-ES Minimization. | |
EWPTReturnType | BSMPT::Minimizer::PTFinder_gen_all (const std::shared_ptr< Class_Potential_Origin > &modelPointer, const double &TempStart, const double &TempEnd, const int &WhichMinimizer=WhichMinimizerDefault, bool UseMultithreading=true) |
std::vector< double > | BSMPT::Minimizer::Minimize_gen_all_tree_level (const ModelID::ModelIDs &Model, const std::vector< double > &par, const std::vector< double > &parCT, std::vector< double > &Check, const std::vector< double > &start, int WhichMinimizer=WhichMinimizerDefault, bool UseMultithreading=true) |
Minimize_gen_all_tree_level Minimizes the tree-level potential. | |
std::vector< double > | BSMPT::Minimizer::Minimize_gen_all_tree_level (const ModelID::ModelIDs &Model, const std::vector< double > &par, const std::vector< double > &parCT, const ISMConstants &SMConstants, std::vector< double > &Check, const std::vector< double > &start, int WhichMinimizer=WhichMinimizerDefault, bool UseMultithreading=true) |
Minimize_gen_all_tree_level Minimizes the tree-level potential. | |
std::vector< std::vector< double > > | BSMPT::Minimizer::FindNextLocalMinima (const std::shared_ptr< Class_Potential_Origin > &model, const std::vector< double > &StartingPoint, const double &temperature, int WhichMinimizer=WhichMinimizerDefault) |
FindNextLocalMinima finds the local minima from the given starting point at the given temperature. | |
std::vector< std::vector< std::pair< double, std::vector< double > > > > | BSMPT::Minimizer::MinimaDevelopmentWithTemperature (const std::shared_ptr< Class_Potential_Origin > &model, const double &StartingTemperature, const double &FinalTemperature, const double &StepsizeTemperature, const std::vector< std::pair< double, double > > &RNGRanges, const std::size_t &seed, const std::size_t &NumberOfStartingPoints, const int &WhichMinimizer) |
MinimaDevelopmentWithTemperature calculates the temperature development of several local minima. | |
Variables | |
const bool | BSMPT::Minimizer::UseGSLDefault = true |
UseGSLDefault Use the GSL minimizer in the default settings. | |
const bool | BSMPT::Minimizer::UseLibCMAESDefault = false |
UseLibCMAESDefault Use the Libcmaes minimizer in the default settings. | |
const bool | BSMPT::Minimizer::UseNLoptDefault = false |
UseNLoptDefault Use the NLopt minimizer in the default settings. | |
const std::size_t | BSMPT::Minimizer::Num_threads = std::thread::hardware_concurrency() |
constexpr int | BSMPT::Minimizer::WhichMinimizerDefault = CalcWhichMinimizer() |
WhichMinimizerDefault default value for the Minimizers to use. | |
|
constexpr |
CalcWhichMinimizer Calculates the WhichMinimizer value with the given Minimizer options.
UseGSL | Should GSL be used? |
UseCMAES | Should CMAES be used? |
UseNLopt | Should NLopt be used? |
std::vector< std::vector< double > > BSMPT::Minimizer::FindNextLocalMinima | ( | const std::shared_ptr< Class_Potential_Origin > & | model, |
const std::vector< double > & | StartingPoint, | ||
const double & | temperature, | ||
int | WhichMinimizer = WhichMinimizerDefault |
||
) |
FindNextLocalMinima finds the local minima from the given starting point at the given temperature.
model | Parameter point to minimize |
StartingPoint | Starting point from where to look for the next local minima |
temperature | Temperature at which to minimize the potential |
WhichMinimizer | Which Minimizer should be used? CMAES is not used here as it is only a global minimizer |
MinimizersToUse BSMPT::Minimizer::GetMinimizers | ( | int | WhichMinimizer | ) |
GetMinimizers returns a struct containing the bools deciding which minimizers should be used or not.
WhichMinimizer |
std::vector< std::vector< std::pair< double, std::vector< double > > > > BSMPT::Minimizer::MinimaDevelopmentWithTemperature | ( | const std::shared_ptr< Class_Potential_Origin > & | model, |
const double & | StartingTemperature, | ||
const double & | FinalTemperature, | ||
const double & | StepsizeTemperature, | ||
const std::vector< std::pair< double, double > > & | RNGRanges, | ||
const std::size_t & | seed, | ||
const std::size_t & | NumberOfStartingPoints, | ||
const int & | WhichMinimizer | ||
) |
MinimaDevelopmentWithTemperature calculates the temperature development of several local minima.
model | The used model and parameter point |
StartingTemperature | The first temperature at which to calculate the local minima from the random points |
FinalTemperature | The final temperature for the temperature development |
StepsizeTemperature | The stepsize for the temperature development |
RNGRanges | The ranges for the RNG generated starting point at StartingTemperature |
seed | The seed used for the RNG |
NumberOfStartingPoints | How many RNG points should be generated |
WhichMinimizer | Which minimizers should be used? |
std::vector< double > BSMPT::Minimizer::Minimize_gen_all_tree_level | ( | const ModelID::ModelIDs & | Model, |
const std::vector< double > & | par, | ||
const std::vector< double > & | parCT, | ||
const ISMConstants & | SMConstants, | ||
std::vector< double > & | Check, | ||
const std::vector< double > & | start, | ||
int | WhichMinimizer = WhichMinimizerDefault , |
||
bool | UseMultithreading = true |
||
) |
Minimize_gen_all_tree_level Minimizes the tree-level potential.
Model | Which Model to minimize |
par | parameters of the point |
parCT | counterterm parameters |
SMConstants | The SM Constants used for the minimisation |
Check | Vector to safe the error flags during the minimization |
start | Starting point for the minimization |
WhichMinimizer | Which minimizers should be taken? 1 = CMAES, 2 = GSL, 4 = NLOPT, to use multiple add the numbers |
std::vector< double > BSMPT::Minimizer::Minimize_gen_all_tree_level | ( | const ModelID::ModelIDs & | Model, |
const std::vector< double > & | par, | ||
const std::vector< double > & | parCT, | ||
std::vector< double > & | Check, | ||
const std::vector< double > & | start, | ||
int | WhichMinimizer = WhichMinimizerDefault , |
||
bool | UseMultithreading = true |
||
) |
Minimize_gen_all_tree_level Minimizes the tree-level potential.
Model | Which Model to minimize |
par | parameters of the point |
parCT | counterterm parameters |
Check | Vector to safe the error flags during the minimization |
start | Starting point for the minimization |
WhichMinimizer | Which minimizers should be taken? 1 = CMAES, 2 = GSL, 4 = NLOPT, to use multiple add the numbers |
EWPTReturnType BSMPT::Minimizer::PTFinder_gen_all | ( | const std::shared_ptr< Class_Potential_Origin > & | modelPointer, |
const double & | TempStart, | ||
const double & | TempEnd, | ||
const int & | WhichMinimizer = WhichMinimizerDefault , |
||
bool | UseMultithreading = true |
||
) |
Uses a bisection method between the Temperature TempStart and TempEnde to find the phase transition in the Model and writes the solution in the vector sol.
modelPointer | shared_ptr to the parameter point |
TempStart | Low temperature for the starting interval of the bisection method |
TempEnd | High temperature for the starting interval of the bisection method |
WhichMinimizer | Which minimizers should be taken? 1 = CMAES, 2 = GSL, 4 = NLOPT, to use multiple add the numbers |