BSMPT 3.1.3
BSMPT - Beyond the Standard Model Phase Transitions : A C++ package for the computation of the EWPT in BSM models
Loading...
Searching...
No Matches
minimum_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
14#include "Eigen/Eigenvalues" // Eigenvalues utility
15#include <BSMPT/minimizer/Minimizer.h> // for Minimizer
16#include <BSMPT/models/ClassPotentialOrigin.h> // for Class_Potential_Origin
17#include <BSMPT/utility/Logger.h> // for Logger Class
18#include <BSMPT/utility/asciiplotter/asciiplotter.h>
20#include <Eigen/Dense> // Eigenvalues matrix
21#include <chrono>
22#include <cmath> // std::pow
23#include <memory> // for shared_ptr
24#include <optional> // std::optional
25#include <stdlib.h> // std::strtol
26
27namespace BSMPT
28{
29
34const double EmptyValue = NAN;
40{
41 NotSet,
42 Off,
43 Success,
44 NoNLOStability
45};
50const std::unordered_map<StatusNLOStability, std::string>
52 {StatusNLOStability::NotSet, "not_set"},
53 {StatusNLOStability::Off, "off"},
54 {StatusNLOStability::Success, "success"},
55 {StatusNLOStability::NoNLOStability, "no_nlo_stability"}};
60enum class StatusEWSR
61{
62 NotSet,
63 Off,
64 Failure,
65 NotBFB,
66 FlatRegion,
67 EWSymNonRes,
68 EWSymRes
69};
74const std::unordered_map<StatusEWSR, std::string> StatusEWSRToString{
75 {StatusEWSR::NotSet, "not_set"},
76 {StatusEWSR::Off, "off"},
77 {StatusEWSR::Failure, "failure"},
78 {StatusEWSR::NotBFB, "non_bfb"},
79 {StatusEWSR::FlatRegion, "flat_region"},
80 {StatusEWSR::EWSymNonRes, "ew_sym_non_res"},
81 {StatusEWSR::EWSymRes, "ew_sym_res"}};
86enum class StatusTracing
87{
88 NotSet,
89 Success,
90 NoCoverage,
91 NoMinsAtBoundaries,
92 NoGlobMinCoverage,
93 Failure
94};
99const std::unordered_map<StatusTracing, std::string> StatusTracingToString{
100 {StatusTracing::NotSet, "not_set"},
101 {StatusTracing::Success, "success"},
102 {StatusTracing::NoCoverage, "no_coverage"},
103 {StatusTracing::NoMinsAtBoundaries, "no_mins_at_boundaries"},
104 {StatusTracing::NoGlobMinCoverage, "no_glob_min_coverage"},
105 {StatusTracing::Failure, "failure"}};
111{
112 NotSet,
113 Success,
114 NoCoexPairs
115};
120const std::unordered_map<StatusCoexPair, std::string> StatusCoexPairToString{
121 {StatusCoexPair::NotSet, "not_set"},
122 {StatusCoexPair::Success, "success"},
123 {StatusCoexPair::NoCoexPairs, "no_coex_pair"}};
128enum class StatusCrit
129{
130 NotSet,
131 Success,
132 FalseLower,
133 TrueLower,
134 Failure
135};
140const std::unordered_map<StatusCrit, std::string> StatusCritToString{
141 {StatusCrit::NotSet, "not_set"},
142 {StatusCrit::Success, "success"},
143 {StatusCrit::FalseLower, "false_lower"},
144 {StatusCrit::TrueLower, "true_lower"},
145 {StatusCrit::Failure, "failure"}};
152{
153 NotSet,
154 Success,
155 NotMet,
156 NaN
157};
162const std::unordered_map<StatusTemperature, std::string>
163 StatusTemperatureToString{{StatusTemperature::NotSet, "not_set"},
164 {StatusTemperature::Success, "success"},
165 {StatusTemperature::NotMet, "not_met"},
166 {StatusTemperature::NaN, "nan"}};
171enum class StatusGW
172{
173 NotSet,
174 Success,
175 Failure
176};
181const std::unordered_map<StatusGW, std::string> StatusGWToString{
182 {StatusGW::NotSet, "not_set"},
183 {StatusGW::Success, "success"},
184 {StatusGW::Failure, "failure"}};
185
191{
192 NotSet,
193 ApproxNucleation,
194 Nucleation,
195 Percolation,
196 Completion
197};
198
206std::ostream &operator<<(std::ostream &os, const StatusNLOStability &status);
214std::ostream &operator<<(std::ostream &os, const StatusEWSR &status);
222std::ostream &operator<<(std::ostream &os, const StatusTracing &status);
230std::ostream &operator<<(std::ostream &os, const StatusCoexPair &status);
238std::ostream &operator<<(std::ostream &os, const StatusCrit &status);
246std::ostream &operator<<(std::ostream &os, const StatusGW &status);
254std::ostream &operator<<(std::ostream &os, const StatusTemperature &status);
255
266{
267 std::vector<double> point;
268 double temp;
269 double potential;
270 bool is_glob_min = false;
271 int EdgeOfPhase = 0;
272
273 bool operator<(const Minimum &a) const { return temp < a.temp; }
274};
275
277{
278private:
279 int WhichMinimizer;
280 bool UseMultithreading;
281
282protected:
286 std::shared_ptr<Class_Potential_Origin> modelPointer;
287
288public:
293 double GradientThreshold = 1e-3;
294
300 double HessianDiagonalShift = 1e-3;
301
306 std::vector<double> HighTemperatureVEV;
307
312 std::vector<Minimum> SavedMinimaFromVEVSplitting;
313
318
325 MinimumTracer(const std::shared_ptr<Class_Potential_Origin> &pointer_in,
326 const int &WhichMinimizer_in,
327 const bool &UseMultithreading_in);
328
332 void FindFlatDirections();
333
338 void ConvertToNonFlatDirections(std::vector<double> &point);
339
345
351 std::vector<double> ConvertToVEVDim(const std::vector<double> &point);
352
360 std::vector<double> GetGlobalMinimum(const double &Temp,
361 std::vector<double> &check,
362 const std::vector<double> &start);
363
370 std::vector<double> GetGlobalMinimum(const double &Temp,
371 const std::vector<double> &start);
372
378 std::vector<double> GetGlobalMinimum(const double &Temp);
379
385 void IsGlobMin(Minimum &min);
386
393 StatusNLOStability GetStatusNLOVEV(const bool &out);
394
401 StatusEWSR GetStatusEWSR(const int &out);
402
411
419 double SmallestEigenvalue(
420 const std::vector<double> &point,
421 const std::function<std::vector<std::vector<double>>(std::vector<double>)>
422 &Hessian);
423
432 std::vector<double> FindZeroSmallestEigenvalue(std::vector<double> point_1,
433 double T_1,
434 std::vector<double> point_2,
435 double T_2);
436
449 std::vector<Minimum> TrackPhase(double &globMinEndT,
450 const std::vector<double> &point_In,
451 const double &currentT_In,
452 const double &finalT,
453 const double &dT_In = 1,
454 const bool &output = true,
455 const bool &unprotected = false);
456
466 std::vector<Minimum> TrackPhase(const std::vector<double> &point_In,
467 const double &currentT_In,
468 const double &finalT,
469 const double &dT_In = 1,
470 const bool &output = true,
471 const bool &unprotected = false);
472
476 bool flat_dirs_found = false;
477
481 std::vector<int> NonFlatDirections;
482
486 std::vector<std::size_t> flat_1D_dirs;
487
491 std::vector<std::vector<std::size_t>> flat_2D_dirs;
492
496 std::vector<std::vector<std::size_t>> flat_3D_dirs;
497
502 std::vector<Eigen::MatrixXd> GroupElements;
503
509 void ReduceVEV(std::vector<double> &vev);
510
516 void ReduceVEV(Minimum &min);
517
527 const std::vector<std::vector<double>>
528 WarpPath(const std::vector<std::vector<double>> &path,
529 const std::vector<double> &T1,
530 const std::vector<double> &F1,
531 const std::vector<double> &T2,
532 const std::vector<double> &F2);
533
548 std::vector<double> LocateMinimum(
549 const std::vector<double> &guess_In,
550 std::function<std::vector<double>(std::vector<double>)> &df,
551 std::function<std::vector<std::vector<double>>(std::vector<double>)>
552 &Hessian,
553 const double &error = 1e-4,
554 const double &const_multiplier = 1e-2,
555 const int &maxiter = 100);
556
563 std::vector<std::string> GetLegend(const int &num_coex_phases,
564 const bool &do_gw_calc);
565};
566
576std::vector<std::vector<double>>
577Create1DimGrid(const std::vector<double> &point,
578 const int k,
579 const double low_value,
580 const double high_value,
581 const int nsteps = 100);
582
591std::vector<std::vector<double>>
592Create1DimGrid(const std::vector<double> &min_start,
593 const std::vector<double> &min_end,
594 const int npoints = 100);
595
599bool almost_the_same(const double &a,
600 const double &b,
601 const double &rel_precision = 0.01,
602 const double &num_zero = 1e-10);
603
608bool almost_the_same(const std::vector<double> &a,
609 const std::vector<double> &b,
610 const bool &allow_for_sign_flip = false,
611 const double &rel_precision = 0.01,
612 const double &num_zero = 1e-10);
613
618struct Phase
619{
623 int id = 0;
624
628 double T_low = 0;
629
633 double T_high = 0;
634
638 std::vector<Minimum> MinimumPhaseVector;
639
643 std::shared_ptr<MinimumTracer> MinTracer;
644
650 void Add(Minimum min);
651
659 Minimum Get(double T);
660
664 Phase();
665
675 Phase(const std::vector<double> &phase_start,
676 const double &initialT,
677 const double &finalT,
678 double &globMinEndT,
679 std::shared_ptr<MinimumTracer> &MinTracerIn);
680
692 Phase(const double &initialT,
693 const std::vector<double> &phase_start,
694 const double &LowT,
695 const double &HighT,
696 double &globMinEndT,
697 std::shared_ptr<MinimumTracer> &MinTracerIn);
698
709 Phase(const std::vector<double> &phase_start,
710 const double &initialT,
711 const double &finalT,
712 std::shared_ptr<MinimumTracer> &MinTracerIn);
713
723 Phase(const double &initialT,
724 const std::vector<double> &phase_start,
725 const double &LowT,
726 const double &HighT,
727 std::shared_ptr<MinimumTracer> &MinTracerIn);
728
737 Phase(const double &initialT,
738 const double &LowT,
739 const double &HighT,
740 std::shared_ptr<MinimumTracer> &MinTracerIn);
741};
742
748{
749 int coex_pair_id;
750 double T_high;
751 double T_low;
752 Phase false_phase;
753 Phase true_phase;
754 double crit_temp = -1;
755 StatusCrit crit_status = StatusCrit::NotSet;
756
760 CoexPhases();
761
765 CoexPhases(const int &pair_id,
766 const Phase &false_phase,
767 const Phase &true_phase,
768 const double &Tlow_in,
769 const double &Thigh_in);
770
774 void CalculateTc();
775};
776
781struct Vacuum
782{
787 double T_low = 0;
788
793 double T_high = 300;
794
801
808
813 int num_points = 0;
814
818 StatusTracing status_vacuum = StatusTracing::NotSet;
819
823 StatusCoexPair status_coex_pairs = StatusCoexPair::NotSet;
824
829 std::shared_ptr<MinimumTracer> MinTracer;
830
835 std::shared_ptr<Class_Potential_Origin> modelPointer;
836
841 std::vector<Phase> PhasesList;
842
847 std::vector<CoexPhases> CoexPhasesList;
848
864 Vacuum(const double &T_lowIn,
865 const double &T_highIn,
866 std::shared_ptr<MinimumTracer> &MinTracerIn,
867 std::shared_ptr<Class_Potential_Origin> &modelPointerIn,
868 const int &UseMultiStepPTModeIn,
869 const int &num_pointsIn = 10,
870 const bool &do_only_tracing = false);
871
879 void MultiStepPTTracer(const double &Temp, const double &deltaT = 0);
880
885 void print(const Phase &phase);
886
897 void setCoexPhases();
898
905 void setCoexRegion(const int &UseMultiStepPTMode);
906
912 void addPhase(Phase &phase);
913
921 int MinimumFoundAlready(const Minimum &minimum);
922
928 void MultiStepPTMode0(const std::vector<double> &LowTempPoint,
929 const std::vector<double> &HighTempPoint);
930
936 void MultiStepPTMode1(const std::vector<double> &LowTempPoint,
937 const std::vector<double> &HighTempPoint);
938
942 bool DoPhasesOverlap(Phase &new_phase, Phase &old_phase);
943
948 bool DoGlobMinOverlap(const Phase &new_phase, const Phase &old_phase);
949
955 void MultiStepPTMode2(const std::vector<double> &LowTempPoint,
956 const std::vector<double> &HighTempPoint);
957
963 void PrintPhasesDiagram(int size = 100);
964};
965
966} // namespace BSMPT
Definition minimum_tracer.h:277
MinimumTracer()
default constructor
Definition minimum_tracer.cpp:759
StatusEWSR GetStatusEWSR(const int &out)
GetStatusEWSR convert double output of IsThereEWSymmetryRestoration to status string.
Definition minimum_tracer.cpp:1139
std::vector< std::vector< std::size_t > > flat_2D_dirs
storage of indices of flat 2D directions in VEV basis
Definition minimum_tracer.h:491
std::vector< double > LocateMinimum(const std::vector< double > &guess_In, std::function< std::vector< double >(std::vector< double >)> &df, std::function< std::vector< std::vector< double > >(std::vector< double >)> &Hessian, const double &error=1e-4, const double &const_multiplier=1e-2, const int &maxiter=100)
Finds stationary points of a function (not only minimas).
Definition minimum_tracer.cpp:54
std::vector< Minimum > TrackPhase(double &globMinEndT, const std::vector< double > &point_In, const double &currentT_In, const double &finalT, const double &dT_In=1, const bool &output=true, const bool &unprotected=false)
TrackPhase with enforced global minimum tracing (= phase is checked if it is still the global minimum...
Definition minimum_tracer.cpp:255
std::vector< Eigen::MatrixXd > GroupElements
List of group elements allowed by the potential.
Definition minimum_tracer.h:502
std::vector< double > FindZeroSmallestEigenvalue(std::vector< double > point_1, double T_1, std::vector< double > point_2, double T_2)
FindZeroSmallestEigenvalue.
Definition minimum_tracer.cpp:148
void IsGlobMin(Minimum &min)
IsGlobMin checks whether current minimum is the global minimum.
Definition minimum_tracer.cpp:1095
std::shared_ptr< Class_Potential_Origin > modelPointer
modelPointer for the used parameter point
Definition minimum_tracer.h:286
void FindDiscreteSymmetries()
Calculates the list of symmetries that leave V unchanged.
Definition minimum_tracer.cpp:965
int IsThereEWSymmetryRestoration()
IsThereEWSymmetryRestoration checks if there is EW symmetry restoration at high temperatures.
Definition minimum_tracer.cpp:1174
std::vector< std::vector< std::size_t > > flat_3D_dirs
storage of indices of flat 3D directions in VEV basis
Definition minimum_tracer.h:496
StatusNLOStability GetStatusNLOVEV(const bool &out)
GetStatusNLOVEV convert bool output of CheckNLOVEV to status string.
Definition minimum_tracer.cpp:1129
std::vector< double > GetGlobalMinimum(const double &Temp, std::vector< double > &check, const std::vector< double > &start)
get global minimum of effective potential
Definition minimum_tracer.cpp:1068
std::vector< std::string > GetLegend(const int &num_coex_phases, const bool &do_gw_calc)
GetLegend derive legend.
Definition minimum_tracer.cpp:2800
std::vector< double > ConvertToVEVDim(const std::vector< double > &point)
ConvertToVEVDim converts point from full to reduced (VEV) dimension.
Definition minimum_tracer.cpp:1054
void FindFlatDirections()
Calculates flat field directions.
Definition minimum_tracer.cpp:776
std::vector< int > NonFlatDirections
storage of all non-flat VEV-directions
Definition minimum_tracer.h:481
bool flat_dirs_found
bool to store whether flat directions are found
Definition minimum_tracer.h:476
double HessianDiagonalShift
Add a constant to the diagonals of the hessian matrix in the LocateMinimum function....
Definition minimum_tracer.h:300
void ConvertToNonFlatDirections(std::vector< double > &point)
Convert point into minimal non-flat space, reduces dimension in case of flat directions,...
Definition minimum_tracer.cpp:948
std::vector< Minimum > SavedMinimaFromVEVSplitting
Vector to store minima that appeared from VEV splittings.
Definition minimum_tracer.h:312
const std::vector< std::vector< double > > WarpPath(const std::vector< std::vector< double > > &path, const std::vector< double > &T1, const std::vector< double > &F1, const std::vector< double > &T2, const std::vector< double > &F2)
WarpPath.
Definition minimum_tracer.cpp:735
void ReduceVEV(std::vector< double > &vev)
Reduce the VEV into the same principal quadrant.
Definition minimum_tracer.cpp:700
std::vector< double > HighTemperatureVEV
Minimum found in IsThereEWSymmetryRestoration()
Definition minimum_tracer.h:306
std::vector< std::size_t > flat_1D_dirs
storage of indices of flat 1D directions in VEV basis
Definition minimum_tracer.h:486
double SmallestEigenvalue(const std::vector< double > &point, const std::function< std::vector< std::vector< double > >(std::vector< double >)> &Hessian)
SmallestEigenvalue calculate Eigenvalues of Hessian and returns smallest.
Definition minimum_tracer.cpp:124
double GradientThreshold
Threshold for the acceptable gradient.
Definition minimum_tracer.h:293
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
const std::unordered_map< StatusEWSR, std::string > StatusEWSRToString
Map to convert StatusEWSRToString to strins.
Definition minimum_tracer.h:74
const std::unordered_map< StatusCrit, std::string > StatusCritToString
Map to convert StatusCritToString to strings.
Definition minimum_tracer.h:140
StatusNLOStability
Possible NLO stability status.
Definition minimum_tracer.h:40
const double EmptyValue
Value to be store in the columns without any values.
Definition minimum_tracer.h:34
const std::unordered_map< StatusGW, std::string > StatusGWToString
Map to convert StatusGWToString to strings.
Definition minimum_tracer.h:181
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
const std::unordered_map< StatusTemperature, std::string > StatusTemperatureToString
Map to convert StatusTemperature to strings.
Definition minimum_tracer.h:163
TransitionTemperature
Possible transitions temperatures.
Definition minimum_tracer.h:191
StatusCrit
Possible status for the critical temperature.
Definition minimum_tracer.h:129
StatusTemperature
Possible status for the approximated nucleation, exact nucleation, percolation and completion tempera...
Definition minimum_tracer.h:152
bool almost_the_same(const double &a, const double &b, const double &rel_precision=0.01, const double &num_zero=1e-10)
Definition minimum_tracer.cpp:1428
const std::unordered_map< StatusNLOStability, std::string > StatusNLOStabilityToString
Map to convert StatusNLOStability to strins.
Definition minimum_tracer.h:51
const std::unordered_map< StatusCoexPair, std::string > StatusCoexPairToString
Map to convert StatusCoexPairToString to strings.
Definition minimum_tracer.h:120
std::ostream & operator<<(std::ostream &os, const StatusNLOStability &status)
Override << operator to handle StatusNLOStability.
Definition minimum_tracer.cpp:18
const std::unordered_map< StatusTracing, std::string > StatusTracingToString
Map to convert StatusTracingToString to strins.
Definition minimum_tracer.h:99
std::vector< std::vector< double > > Create1DimGrid(const std::vector< double > &point, const int k, const double low_value, const double high_value, const int nsteps=100)
Create1DimGrid creates a 1-dim grid of given size in index-direction.
Definition minimum_tracer.cpp:1381
CoexPhases struct to save pair of coexisting phases (false and true phase)
Definition minimum_tracer.h:748
void CalculateTc()
CalculateTc critical temperature for coexising phase pair.
Definition minimum_tracer.cpp:1291
CoexPhases()
empty constructor
Definition minimum_tracer.cpp:1272
struct to store minimum and temperature
Definition minimum_tracer.h:266
Phase object.
Definition minimum_tracer.h:619
void Add(Minimum min)
Function that adds min to MinimumPhaseVector.
Definition minimum_tracer.cpp:1719
Phase()
empty constructor
Definition minimum_tracer.cpp:1474
double T_low
Lowest temperature of the phase.
Definition minimum_tracer.h:628
double T_high
Highest temperature of the phase.
Definition minimum_tracer.h:633
Minimum Get(double T)
Calculates the minimum of the phase at temperature T. This function assumes that T is inside the temp...
Definition minimum_tracer.cpp:1667
std::shared_ptr< MinimumTracer > MinTracer
MinTracer object.
Definition minimum_tracer.h:643
std::vector< Minimum > MinimumPhaseVector
Set of Minimum that compose the phase.
Definition minimum_tracer.h:638
Complete vacuum structure of the theory for this parameter point.
Definition minimum_tracer.h:782
void MultiStepPTMode0(const std::vector< double > &LowTempPoint, const std::vector< double > &HighTempPoint)
MultiStepPTMode0 single-step PT mode.
Definition minimum_tracer.cpp:1767
void addPhase(Phase &phase)
Adds a phase to the phase list.
Definition minimum_tracer.cpp:2684
int MinimumFoundAlready(const Minimum &minimum)
This function checks if the minimum already exists in one of the phases in the phase list.
Definition minimum_tracer.cpp:2776
void PrintPhasesDiagram(int size=100)
prints the phases from T_low up to T_high on the terminal
Definition minimum_tracer.cpp:2192
std::vector< CoexPhases > CoexPhasesList
List of different phase pairs.
Definition minimum_tracer.h:847
void MultiStepPTTracer(const double &Temp, const double &deltaT=0)
MultiStepPTTracer traces all phases between T_high and T_low assuming that we start and end in a glob...
Definition minimum_tracer.cpp:2423
double T_high
Highest temperature, 300 GeV or set in input file.
Definition minimum_tracer.h:793
StatusCoexPair status_coex_pairs
coexisting phases status code = success, no_coex_pairs
Definition minimum_tracer.h:823
std::shared_ptr< MinimumTracer > MinTracer
MinTracer object.
Definition minimum_tracer.h:829
int num_points
number of equally-spaced intermediate points to check for new phases
Definition minimum_tracer.h:813
std::shared_ptr< Class_Potential_Origin > modelPointer
Model pointer.
Definition minimum_tracer.h:835
void MultiStepPTMode2(const std::vector< double > &LowTempPoint, const std::vector< double > &HighTempPoint)
MultiStepPTMode2 multi-step global minimum coverage PT mode.
Definition minimum_tracer.cpp:2080
void print(const Phase &phase)
print info on phase
Definition minimum_tracer.cpp:2516
double T_high_lowTempPhase
Highest temperature at which low-temperature phase is found to exist.
Definition minimum_tracer.h:807
void setCoexPhases()
setCoexPhases Calculates all coexisting phase pairs irrespective of borders of coexisiting phase regi...
Definition minimum_tracer.cpp:2527
bool DoGlobMinOverlap(const Phase &new_phase, const Phase &old_phase)
DoGlobMinOverlap check for global minimum at left-/rightmost overlap and choose endpoint of previous ...
Definition minimum_tracer.cpp:1863
double T_low
Lowest temperature 0 GeV.
Definition minimum_tracer.h:787
double T_low_highTempPhase
Lowest temperature at which high-temperature phase is found to exist.
Definition minimum_tracer.h:800
std::vector< Phase > PhasesList
List of different phases.
Definition minimum_tracer.h:841
bool DoPhasesOverlap(Phase &new_phase, Phase &old_phase)
DoPhasesOverlap checks if two phases overlap.
Definition minimum_tracer.cpp:1848
void setCoexRegion(const int &UseMultiStepPTMode)
setCoexRegion Calculates all coexisting phase regions with phase pairs included from the phase vector
Definition minimum_tracer.cpp:2564
StatusTracing status_vacuum
vacuum status code = success, no_coverage, no_glob_min_coverage
Definition minimum_tracer.h:818
void MultiStepPTMode1(const std::vector< double > &LowTempPoint, const std::vector< double > &HighTempPoint)
MultiStepPTMode1 multi-step coverage PT mode.
Definition minimum_tracer.cpp:1906
Definition transition_tracer.h:157