Skip to content

Commit

Permalink
Rearrange parts of main routine
Browse files Browse the repository at this point in the history
so that closely related steps are done together
  • Loading branch information
Dylan Harries committed Dec 7, 2016
1 parent 9eea004 commit bc8a5a4
Showing 1 changed file with 35 additions and 34 deletions.
69 changes: 35 additions & 34 deletions meta/FlexibleSUSY.m
Original file line number Diff line number Diff line change
Expand Up @@ -2147,14 +2147,6 @@ corresponding tadpole is real or imaginary (only in models with CP
SARAH`Xip = 1;
SARAH`rMS = SelectRenormalizationScheme[FlexibleSUSY`FSRenormalizationScheme];

(* collect input parameters from MINPAR and EXTPAR lists *)
inputParameters = Join[
DeleteDuplicates[{#[[2]], {"MINPAR", #[[1]]}, Parameters`GuessInputParameterType[#[[2]]]}& /@ Utils`ForceJoin[SARAH`MINPAR]],
DeleteDuplicates[{#[[2]], {"EXTPAR", #[[1]]}, Parameters`GuessInputParameterType[#[[2]]]}& /@ Utils`ForceJoin[SARAH`EXTPAR]]
];

Parameters`SetInputParameters[inputParameters];

If[FlexibleSUSY`UseSM3LoopRGEs,
Print["Adding SM 3-loop beta-functions from ",
"[arxiv:1303.4364v2, arXiv:1307.3536v4,",
Expand Down Expand Up @@ -2206,17 +2198,10 @@ corresponding tadpole is real or imaginary (only in models with CP
susyBetaFunctions = DeleteBuggyBetaFunctions /@ susyBetaFunctions;
susyBreakingBetaFunctions = DeleteBuggyBetaFunctions /@ susyBreakingBetaFunctions;

(* backwards compatibility replacements in constraints *)
backwardsCompatRules = {
Global`topDRbar -> Global`upQuarksDRbar,
Global`bottomDRbar -> Global`downQuarksDRbar,
Global`electronDRbar -> Global`downLeptonsDRbar
};
FlexibleSUSY`LowScaleInput = FlexibleSUSY`LowScaleInput /. backwardsCompatRules;
FlexibleSUSY`SUSYScaleInput = FlexibleSUSY`SUSYScaleInput /. backwardsCompatRules;
FlexibleSUSY`HighScaleInput = FlexibleSUSY`HighScaleInput /. backwardsCompatRules;
FlexibleSUSY`InitialGuessAtLowScale = FlexibleSUSY`InitialGuessAtLowScale /. backwardsCompatRules;
FlexibleSUSY`InitialGuessAtHighScale = FlexibleSUSY`InitialGuessAtHighScale /. backwardsCompatRules;
(* identify real parameters *)
If[Head[SARAH`RealParameters] === List,
Parameters`AddRealParameter[SARAH`RealParameters];
];

(* store all model parameters *)
allParameters = StripSARAHIndices[((#[[1]])& /@ Join[Join @@ susyBetaFunctions, Join @@ susyBreakingBetaFunctions])];
Expand All @@ -2229,29 +2214,48 @@ corresponding tadpole is real or imaginary (only in models with CP
Parameters`SetModelParameters[allParameters];
DebugPrint["model parameters: ", allParameters];

(* collect all phases from SARAH *)
phases = DeleteDuplicates @ Join[
ConvertSarahPhases[SARAH`ParticlePhases],
Exp[I #]& /@ GetVEVPhases[FlexibleSUSY`FSEigenstates]];
Parameters`SetPhases[phases];
anomDim = AnomalousDimension`ConvertSarahAnomDim[SARAH`Gij];

susyBetaFunctions = BetaFunction`ConvertSarahRGEs[susyBetaFunctions];
susyBetaFunctions = Select[susyBetaFunctions, (BetaFunction`GetAllBetaFunctions[#]!={})&];

numberOfSusyParameters = BetaFunction`CountNumberOfParameters[susyBetaFunctions];
anomDim = AnomalousDimension`ConvertSarahAnomDim[SARAH`Gij];

susyBreakingBetaFunctions = ConvertSarahRGEs[susyBreakingBetaFunctions];
susyBreakingBetaFunctions = Select[susyBreakingBetaFunctions, (BetaFunction`GetAllBetaFunctions[#]!={})&];

If[Head[SARAH`RealParameters] === List,
Parameters`AddRealParameter[SARAH`RealParameters];
];

allBetaFunctions = Join[susyBetaFunctions, susyBreakingBetaFunctions];

numberOfSusyParameters = BetaFunction`CountNumberOfParameters[susyBetaFunctions];
numberOfSusyBreakingParameters = BetaFunction`CountNumberOfParameters[susyBreakingBetaFunctions];
numberOfModelParameters = numberOfSusyParameters + numberOfSusyBreakingParameters;

(* collect all phases from SARAH *)
phases = DeleteDuplicates @ Join[
ConvertSarahPhases[SARAH`ParticlePhases],
Exp[I #]& /@ GetVEVPhases[FlexibleSUSY`FSEigenstates]];
Parameters`SetPhases[phases];

FlexibleSUSY`FSLesHouchesList = SA`LHList;

(* collect input parameters from MINPAR and EXTPAR lists *)
inputParameters = Join[
DeleteDuplicates[{#[[2]], {"MINPAR", #[[1]]}, Parameters`GuessInputParameterType[#[[2]]]}& /@ Utils`ForceJoin[SARAH`MINPAR]],
DeleteDuplicates[{#[[2]], {"EXTPAR", #[[1]]}, Parameters`GuessInputParameterType[#[[2]]]}& /@ Utils`ForceJoin[SARAH`EXTPAR]]
];

Parameters`SetInputParameters[inputParameters];

(* backwards compatibility replacements in constraints *)
backwardsCompatRules = {
Global`topDRbar -> Global`upQuarksDRbar,
Global`bottomDRbar -> Global`downQuarksDRbar,
Global`electronDRbar -> Global`downLeptonsDRbar
};
FlexibleSUSY`LowScaleInput = FlexibleSUSY`LowScaleInput /. backwardsCompatRules;
FlexibleSUSY`SUSYScaleInput = FlexibleSUSY`SUSYScaleInput /. backwardsCompatRules;
FlexibleSUSY`HighScaleInput = FlexibleSUSY`HighScaleInput /. backwardsCompatRules;
FlexibleSUSY`InitialGuessAtLowScale = FlexibleSUSY`InitialGuessAtLowScale /. backwardsCompatRules;
FlexibleSUSY`InitialGuessAtHighScale = FlexibleSUSY`InitialGuessAtHighScale /. backwardsCompatRules;

(* search for unfixed parameters *)
Constraint`CheckConstraint[FlexibleSUSY`LowScaleInput, "LowScaleInput"];
Constraint`CheckConstraint[FlexibleSUSY`SUSYScaleInput, "SUSYScaleInput"];
Expand Down Expand Up @@ -2411,9 +2415,6 @@ corresponding tadpole is real or imaginary (only in models with CP
FlexibleSUSY`HighScaleFirstGuess = FlexibleSUSY`HighScaleFirstGuess /.
lesHouchesInputParameterReplacementRules;

numberOfSusyBreakingParameters = BetaFunction`CountNumberOfParameters[susyBreakingBetaFunctions];
numberOfModelParameters = numberOfSusyParameters + numberOfSusyBreakingParameters;

PrintHeadline["Creating model parameter classes"];
Print["Creating class for susy parameters ..."];
WriteRGEClass[susyBetaFunctions, anomDim,
Expand Down

0 comments on commit bc8a5a4

Please sign in to comment.