Skip to content

Commit

Permalink
Merge remote-tracking branch 'organization/feature-2.0' into feature-…
Browse files Browse the repository at this point in the history
…higgs-2l

Conflicts:
	meta/SelfEnergies.m
  • Loading branch information
Alexander Voigt authored and Alexander Voigt committed Mar 22, 2017
2 parents 7f11afc + 0cb758e commit a349972
Show file tree
Hide file tree
Showing 87 changed files with 638 additions and 654 deletions.
2 changes: 1 addition & 1 deletion examples/standalone-model/standalone.cpp
Expand Up @@ -130,7 +130,7 @@ void self_energy_example()
// INFO(mssm);

double p = Electroweak_constants::MZ;
double self_energy_VZ = Re(mssm.self_energy_VZ(p));
double self_energy_VZ = Re(mssm.self_energy_VZ_1loop(p));

double vertex_barFe_VZ_Fe_PR = mssm.CpbarFeVZFePR(0, 0);
double vertex_barFe_VZ_Fe_PL = mssm.CpbarFeVZFePL(0, 0);
Expand Down
12 changes: 6 additions & 6 deletions meta/FlexibleEFTHiggsMatching.m
Expand Up @@ -70,9 +70,9 @@
"\
if (i == " <> iStr <> ") {
const double p = model_0l.get_M" <> mq <> "();
const auto self_energy_1 = Re(model_0l.self_energy_" <> mq <> "_1(p));
const auto self_energy_PL = Re(model_0l.self_energy_" <> mq <> "_PL(p));
const auto self_energy_PR = Re(model_0l.self_energy_" <> mq <> "_PR(p));
const auto self_energy_1 = Re(model_0l.self_energy_" <> mq <> "_1loop_1(p));
const auto self_energy_PL = Re(model_0l.self_energy_" <> mq <> "_1loop_PL(p));
const auto self_energy_PR = Re(model_0l.self_energy_" <> mq <> "_1loop_PR(p));
const auto M_tree = model_0l.get_mass_matrix_" <> mq <> "();
const auto M_loop = M_tree - self_energy_1 - M_tree * (self_energy_PR + self_energy_PL);
Expand All @@ -85,9 +85,9 @@
result =
"\
const double p = model_0l.get_M" <> mq <> "(i);
const auto self_energy_1 = Re(model_0l.self_energy_" <> mq <> "_1(p));
const auto self_energy_PL = Re(model_0l.self_energy_" <> mq <> "_PL(p));
const auto self_energy_PR = Re(model_0l.self_energy_" <> mq <> "_PR(p));
const auto self_energy_1 = Re(model_0l.self_energy_" <> mq <> "_1loop_1(p));
const auto self_energy_PL = Re(model_0l.self_energy_" <> mq <> "_1loop_PL(p));
const auto self_energy_PR = Re(model_0l.self_energy_" <> mq <> "_1loop_PR(p));
const auto M_tree = model_0l.get_mass_matrix_" <> mq <> "();
const auto M_loop = (M_tree - self_energy_PR * M_tree
- M_tree * self_energy_PL - self_energy_1).eval();
Expand Down
60 changes: 30 additions & 30 deletions meta/LoopMasses.m
Expand Up @@ -115,9 +115,9 @@
qcdOneLoop, qcdTwoLoop, qcdThreeLoop
},
massName = ToValidCSymbolString[FlexibleSUSY`M[particle]];
topSelfEnergyFunctionS = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[1]];
topSelfEnergyFunctionPL = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[PL]];
topSelfEnergyFunctionPR = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[PR]];
topSelfEnergyFunctionS = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[1], 1];
topSelfEnergyFunctionPL = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[PL], 1];
topSelfEnergyFunctionPR = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[PR], 1];
qcdOneLoop = N[-TwoLoopQCD`GetDeltaMPoleOverMRunningQCDOneLoop[particle, Global`currentScale, FlexibleSUSY`FSRenormalizationScheme]];
qcdTwoLoop = N[Expand[(-TwoLoopQCD`GetDeltaMPoleOverMRunningQCDTwoLoop[particle, Global`currentScale, FlexibleSUSY`FSRenormalizationScheme]) /. Log[m_/Global`currentScale^2] :> -Log[Global`currentScale^2/m]]];
qcdThreeLoop = If[FlexibleSUSY`FSRenormalizationScheme === FlexibleSUSY`MSbar,
Expand Down Expand Up @@ -166,7 +166,7 @@
massNameReordered = massName <> "_reordered";
mixingMatrix = FindMixingMatrixSymbolFor[particle];
massMatrixStr = "get_mass_matrix_" <> ToValidCSymbolString[particle];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle, 1];
selfEnergyMatrixType = TreeMasses`GetMassMatrixType[particle];
selfEnergyMatrixCType = CreateCType[selfEnergyMatrixType];
tadpoleMatrix = FillTadpoleMatrix[tadpoles, "tadpoles"];
Expand Down Expand Up @@ -239,9 +239,9 @@
mixingMatrix = FindMixingMatrixSymbolFor[particle];
selfEnergyMatrixType = TreeMasses`GetMassMatrixType[particle];
selfEnergyMatrixCType = CreateCType[selfEnergyMatrixType];
selfEnergyFunctionS = SelfEnergies`CreateSelfEnergyFunctionName[particle[1]];
selfEnergyFunctionPL = SelfEnergies`CreateSelfEnergyFunctionName[particle[PL]];
selfEnergyFunctionPR = SelfEnergies`CreateSelfEnergyFunctionName[particle[PR]];
selfEnergyFunctionS = SelfEnergies`CreateSelfEnergyFunctionName[particle[1], 1];
selfEnergyFunctionPL = SelfEnergies`CreateSelfEnergyFunctionName[particle[PL], 1];
selfEnergyFunctionPR = SelfEnergies`CreateSelfEnergyFunctionName[particle[PR], 1];
reorderMasses = CreateCType[CConversion`ArrayType[realScalarCType, dim]] <> " " <>
massNameReordered <> "(" <> massName <> ");\n" <>
"reorder_vector(" <> massNameReordered <> ", " <>
Expand Down Expand Up @@ -320,7 +320,7 @@ be set to the (positive) tree-level mass. M_tree
particleName = ToValidCSymbolString[particle];
massName = ToValidCSymbolString[FlexibleSUSY`M[particle]];
mixingMatrix = ToValidCSymbolString[FindMixingMatrixSymbolFor[particle]];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle, 1];
selfEnergyMatrixType = TreeMasses`GetMassMatrixType[particle];
selfEnergyMatrixCType = CreateCType[selfEnergyMatrixType];
If[IsUnmixed[particle] && GetMassOfUnmixedParticle[particle] === 0,
Expand Down Expand Up @@ -390,7 +390,7 @@ be set to the (positive) tree-level mass. M_tree
IndentText["PHYSICAL(" <> U <> ") = " <> Utemp <> ";\n"];
];
];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle, 1];
tadpoleMatrix = FillTadpoleMatrix[tadpole, "tadpoles"];
massMatrixStr = "get_mass_matrix_" <> ToValidCSymbolString[particle];
(* fill self-energy and do diagonalisation *)
Expand Down Expand Up @@ -469,9 +469,9 @@ be set to the (positive) tree-level mass. M_tree
eigenArrayType = CreateCType[CConversion`ArrayType[CConversion`realScalarCType, dim]];
topTwoLoop = particle === SARAH`TopQuark;
If[topTwoLoop,
topSelfEnergyFunctionS = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[1]];
topSelfEnergyFunctionPL = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[PL]];
topSelfEnergyFunctionPR = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[PR]];
topSelfEnergyFunctionS = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[1], 1];
topSelfEnergyFunctionPL = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[PL], 1];
topSelfEnergyFunctionPR = SelfEnergies`CreateHeavySelfEnergyFunctionName[particle[PR], 1];
thirdGenMass = TreeMasses`GetThirdGenerationMass[particle];
qcdOneLoop = N[-TwoLoopQCD`GetDeltaMPoleOverMRunningQCDOneLoop[particle, Global`currentScale, FlexibleSUSY`FSRenormalizationScheme]];
qcdTwoLoop = N[Expand[(-TwoLoopQCD`GetDeltaMPoleOverMRunningQCDTwoLoop[particle, Global`currentScale, FlexibleSUSY`FSRenormalizationScheme]) /. Log[m_/Global`currentScale^2] :> -Log[Global`currentScale^2/m]]];
Expand All @@ -484,9 +484,9 @@ be set to the (positive) tree-level mass. M_tree
AddMtPoleQCDCorrections[2, qcdTwoLoop /. FlexibleSUSY`M[particle] -> thirdGenMass] <> "\n" <>
AddMtPoleQCDCorrections[3, qcdThreeLoop /. FlexibleSUSY`M[particle] -> thirdGenMass] <> "\n";
];
selfEnergyFunctionS = SelfEnergies`CreateSelfEnergyFunctionName[particle[1]];
selfEnergyFunctionPL = SelfEnergies`CreateSelfEnergyFunctionName[particle[PL]];
selfEnergyFunctionPR = SelfEnergies`CreateSelfEnergyFunctionName[particle[PR]];
selfEnergyFunctionS = SelfEnergies`CreateSelfEnergyFunctionName[particle[1], 1];
selfEnergyFunctionPL = SelfEnergies`CreateSelfEnergyFunctionName[particle[PL], 1];
selfEnergyFunctionPR = SelfEnergies`CreateSelfEnergyFunctionName[particle[PR], 1];
If[dim > 1,
result = qcdCorrections <>
"const " <> selfEnergyMatrixCType <> " M_tree(" <> massMatrixStr <> "());\n" <>
Expand Down Expand Up @@ -605,7 +605,7 @@ be set to the (positive) tree-level mass. M_tree
massName = ToValidCSymbolString[FlexibleSUSY`M[particle]];
If[inputMomentum == "", momentum = massName];
mixingMatrix = ToValidCSymbolString[FindMixingMatrixSymbolFor[particle]];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle, 1];
selfEnergyMatrixType = TreeMasses`GetMassMatrixType[particle];
selfEnergyMatrixCType = CreateCType[selfEnergyMatrixType];
If[IsUnmixed[particle] && GetMassOfUnmixedParticle[particle] === 0,
Expand Down Expand Up @@ -721,7 +721,7 @@ be set to the (positive) tree-level mass. M_tree
If[!IsMassless[particle],
particleName = ToValidCSymbolString[particle];
massName = ToValidCSymbolString[FlexibleSUSY`M[particle]];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle, 1];
(* vector bosons are always unmixed -> make sure the
right mass eigenvalue is used. The mass matrix might
contain mixing matrix elements, which can result in
Expand Down Expand Up @@ -878,9 +878,9 @@ be set to the (positive) tree-level mass. M_tree
dimParticle, treeLevelMass},
dimParticle = TreeMasses`GetDimension[particle];
treeLevelMass = TreeMasses`GetThirdGenerationMass[particle] /. a_[i_?IntegerQ] :> a[Global`idx];
selfEnergyFunctionS = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[1]];
selfEnergyFunctionPL = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PL]];
selfEnergyFunctionPR = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PR]];
selfEnergyFunctionS = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[1], 1];
selfEnergyFunctionPL = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PL], 1];
selfEnergyFunctionPR = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PR], 1];
name = ToValidCSymbolString[FlexibleSUSY`M[particle]];
If[IsMassless[particle],
If[dimParticle == 1,
Expand Down Expand Up @@ -922,9 +922,9 @@ be set to the (positive) tree-level mass. M_tree
selfEnergyFunctionPR, name, drbarConversion, gPrime,
dimParticle},
dimParticle = TreeMasses`GetDimension[particle];
selfEnergyFunctionS = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[1]];
selfEnergyFunctionPL = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PL]];
selfEnergyFunctionPR = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PR]];
selfEnergyFunctionS = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[1], 1];
selfEnergyFunctionPL = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PL], 1];
selfEnergyFunctionPR = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PR], 1];
name = ToValidCSymbolString[FlexibleSUSY`M[particle]];
If[IsMassless[particle],
If[dimParticle == 1,
Expand Down Expand Up @@ -965,9 +965,9 @@ be set to the (positive) tree-level mass. M_tree
dimParticle, treeLevelMass},
dimParticle = TreeMasses`GetDimension[particle];
treeLevelMass = TreeMasses`GetThirdGenerationMass[particle] /. a_[i_?IntegerQ] :> a[Global`idx];
selfEnergyFunctionS = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[1]];
selfEnergyFunctionPL = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PL]];
selfEnergyFunctionPR = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PR]];
selfEnergyFunctionS = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[1], 1];
selfEnergyFunctionPL = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PL], 1];
selfEnergyFunctionPR = SelfEnergies`CreateHeavyRotatedSelfEnergyFunctionName[particle[PR], 1];
name = ToValidCSymbolString[FlexibleSUSY`M[particle]];
If[IsMassless[particle],
If[dimParticle == 1,
Expand Down Expand Up @@ -1026,9 +1026,9 @@ be set to the (positive) tree-level mass. M_tree
twoLoopCorrection, twoLoopCorrectionDecl = "", addTwoLoopCorrection = False,
dimParticle},
dimParticle = TreeMasses`GetDimension[particle];
selfEnergyFunctionS = SelfEnergies`CreateSelfEnergyFunctionName[particle[1]];
selfEnergyFunctionPL = SelfEnergies`CreateSelfEnergyFunctionName[particle[PL]];
selfEnergyFunctionPR = SelfEnergies`CreateSelfEnergyFunctionName[particle[PR]];
selfEnergyFunctionS = SelfEnergies`CreateSelfEnergyFunctionName[particle[1], 1];
selfEnergyFunctionPL = SelfEnergies`CreateSelfEnergyFunctionName[particle[PL], 1];
selfEnergyFunctionPR = SelfEnergies`CreateSelfEnergyFunctionName[particle[PR], 1];
name = ToValidCSymbolString[FlexibleSUSY`M[particle]];
twoLoopCorrection = 0; (* disable corrections until checked against Softsusy *)
(* twoLoopCorrection = TwoLoopQCD`GetDeltaMQCD[particle, Global`displayMu[]] /. *)
Expand Down Expand Up @@ -1073,7 +1073,7 @@ be set to the (positive) tree-level mass. M_tree

CreateRunningDRbarMassFunction[particle_, _] :=
Module[{result, body, selfEnergyFunction, name, particleName},
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle];
selfEnergyFunction = SelfEnergies`CreateSelfEnergyFunctionName[particle, 1];
particleName = ToValidCSymbolString[particle];
name = ToValidCSymbolString[FlexibleSUSY`M[particle]];
If[IsMassless[particle],
Expand Down

0 comments on commit a349972

Please sign in to comment.