|
BSMPT 3.1.4
BSMPT - Beyond the Standard Model Phase Transitions : A C++ package for the computation of the EWPT in BSM models
|
#include <BSMPT/minimizer/Minimizer.h>#include <BSMPT/models/ClassPotentialOrigin.h>#include <BSMPT/models/IncludeAllModels.h>#include <BSMPT/utility/Logger.h>#include <BSMPT/utility/utility.h>#include <algorithm>#include <iostream>#include <math.h>#include <memory>#include <random>#include <thread>#include <time.h>#include <vector>#include <BSMPT/config.h>#include <BSMPT/minimizer/MinimizeGSL.h>#include <exception>Namespaces | |
| namespace | BSMPT |
| This classes calculates the Bounce action of the potential with a set temperature. | |
Functions | |
| 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. | |
| WhichMinimizer | = 1/2 for single minimizer, sum of those for multiple |
WhichMinimizer = 1 -> Use CMA-ES Minimizer
WhichMinimizer = 2 -> Use the local Minimization of GSL
| Model | Which model is considered? |
| par | Array with parameter point used for set_gen |
| parCT | Array with Counterterm values used for set_CT_pot_par |
| TempStart | Starting value of the Temperature for the bisection Method |
| TempEnde | End value of the Temperature for the bisection Method |
| sol | std::vector<double> in which the solution of the PTFinder will be stored in the format (T_C,v_C,-+1, single vevs) where +1 means sucessfull find of v_c/T_c > 1 and -1 hit one of the abortion criteria |
| 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 |