Skip to content

Commit

Permalink
split automatic Yukawa coupling calculation function
Browse files Browse the repository at this point in the history
into three parts for the top, bottom and electron Yukawa.
  • Loading branch information
Expander authored and Expander committed Nov 2, 2014
1 parent c11fd4e commit 221d998
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 15 deletions.
12 changes: 10 additions & 2 deletions meta/FlexibleSUSY.m
Expand Up @@ -366,7 +366,11 @@
calculateDeltaAlphaEm = ThresholdCorrections`CalculateDeltaAlphaEm[];
calculateDeltaAlphaS = ThresholdCorrections`CalculateDeltaAlphaS[];
calculateGaugeCouplings = ThresholdCorrections`CalculateGaugeCouplings[];
setDRbarYukawaCouplings = ThresholdCorrections`SetDRbarYukawaCouplings[];
setDRbarYukawaCouplings = {
ThresholdCorrections`SetDRbarYukawaCouplingTop[],
ThresholdCorrections`SetDRbarYukawaCouplingBottom[],
ThresholdCorrections`SetDRbarYukawaCouplingElectron[]
};
saveEwsbOutputParameters = Parameters`SaveParameterLocally[FlexibleSUSY`EWSBOutputParameters, "old_", "MODELPARAMETER"];
restoreEwsbOutputParameters = Parameters`RestoreParameter[FlexibleSUSY`EWSBOutputParameters, "old_", "model"];
WriteOut`ReplaceInFiles[files,
Expand All @@ -390,7 +394,11 @@
Module[{initialGuessAtLowScale, initialGuessAtHighScale, setDRbarYukawaCouplings},
initialGuessAtLowScale = Constraint`ApplyConstraints[lowScaleGuess];
initialGuessAtHighScale = Constraint`ApplyConstraints[highScaleGuess];
setDRbarYukawaCouplings = ThresholdCorrections`SetDRbarYukawaCouplings[];
setDRbarYukawaCouplings = {
ThresholdCorrections`SetDRbarYukawaCouplingTop[],
ThresholdCorrections`SetDRbarYukawaCouplingBottom[],
ThresholdCorrections`SetDRbarYukawaCouplingElectron[]
};
WriteOut`ReplaceInFiles[files,
{ "@initialGuessAtLowScale@" -> IndentText[WrapLines[initialGuessAtLowScale]],
"@initialGuessAtHighScale@" -> IndentText[WrapLines[initialGuessAtHighScale]],
Expand Down
34 changes: 21 additions & 13 deletions meta/ThresholdCorrections.m
Expand Up @@ -4,7 +4,9 @@
CalculateGaugeCouplings::usage="";
CalculateDeltaAlphaEm::usage="";
CalculateDeltaAlphaS::usage="";
SetDRbarYukawaCouplings::usage="";
SetDRbarYukawaCouplingTop::usage="";
SetDRbarYukawaCouplingBottom::usage="";
SetDRbarYukawaCouplingElectron::usage="";

Begin["`Private`"];

Expand Down Expand Up @@ -218,22 +220,28 @@
InvertRelation[matrixExpression, fermion / prefactor, yukawa]
];

SetDRbarYukawaCouplings[] :=
Module[{result, yTop, top, yBot, bot, yTau, tau},
SetDRbarYukawaCouplingTop[] :=
Module[{yTop, top},
{yTop, top} = InvertMassRelation[SARAH`TopQuark , SARAH`UpYukawa];
{yBot, bot} = InvertMassRelation[SARAH`BottomQuark, SARAH`DownYukawa];
{yTau, tau} = InvertMassRelation[SARAH`Electron , SARAH`ElectronYukawa];
top = top /. SARAH`TopQuark -> Global`topDRbar;
Parameters`CreateLocalConstRefs[top] <>
Parameters`SetParameter[SARAH`UpYukawa, top, "MODEL"]
];

SetDRbarYukawaCouplingBottom[] :=
Module[{yBot, bot},
{yBot, bot} = InvertMassRelation[SARAH`BottomQuark, SARAH`DownYukawa];
bot = bot /. SARAH`BottomQuark -> Global`bottomDRbar;
Parameters`CreateLocalConstRefs[bot] <>
Parameters`SetParameter[SARAH`DownYukawa, bot, "MODEL"]
];

SetDRbarYukawaCouplingElectron[] :=
Module[{yTau, tau},
{yTau, tau} = InvertMassRelation[SARAH`Electron , SARAH`ElectronYukawa];
tau = tau /. SARAH`Electron -> Global`electronDRbar;
result = {
Parameters`CreateLocalConstRefs[top] <>
Parameters`SetParameter[SARAH`UpYukawa, top, "MODEL"],
Parameters`CreateLocalConstRefs[bot] <>
Parameters`SetParameter[SARAH`DownYukawa, bot, "MODEL"],
Parameters`CreateLocalConstRefs[tau] <>
Parameters`SetParameter[SARAH`ElectronYukawa, tau, "MODEL"] };
Return[result];
Parameters`CreateLocalConstRefs[tau] <>
Parameters`SetParameter[SARAH`ElectronYukawa, tau, "MODEL"]
];

CalculateGaugeCouplings[] :=
Expand Down

0 comments on commit 221d998

Please sign in to comment.