Skip to content

Commit

Permalink
correcting counting of EWSB eqs and phases
Browse files Browse the repository at this point in the history
  • Loading branch information
Alexander Voigt authored and Alexander Voigt committed Jul 13, 2015
1 parent c2875be commit ef2c3f5
Showing 1 changed file with 10 additions and 1 deletion.
11 changes: 10 additions & 1 deletion meta/Constraint.m
Expand Up @@ -491,7 +491,9 @@
StringJoin[CheckPerturbativityForParameter[#,thresh]& /@ pars];

GetNumberOfParameters[FlexibleSUSY`FSSolveEWSBFor[pars_List]] :=
Plus @@ (BetaFunction`CountNumberOfParameters[Parameters`GetType[#]]& /@ pars);
Length[pars];

GetNumberOfParameters[{FlexibleSUSY`Phase[_], _}] := 1;

GetNumberOfParameters[{par_[indices__] /; And @@ (IsIndex /@ {indices}), _}] :=
BetaFunction`CountNumberOfParameters[CConversion`GetScalarElementType[Parameters`GetType[par]]];
Expand All @@ -502,6 +504,12 @@
CalculateNumberOfParameters[settings_List] :=
ToString[Plus @@ (GetNumberOfParameters /@ settings)];

(* phases are equal if their real parts are equal *)
CalculateDifference[{p:FlexibleSUSY`Phase[_], value_}, offset_Integer, vector_String, type_] :=
vector <> "(" <> ToString[offset] <> ") = Re(" <>
CConversion`ToValidCSymbolString[p] <> " - " <>
CConversion`RValueToCFormString[value] <> ");\n";

CalculateDifference[{par_, Automatic}, offset_Integer, vector_String, type_] :=
"calculate_" <> CConversion`ToValidCSymbolString[par] <> "_DRbar();\n" <>
CalculateDifference[{par, "MODELPARAMETER(" <> CConversion`ToValidCSymbolString[par] <> ")"}, offset, vector, type];
Expand Down Expand Up @@ -553,6 +561,7 @@
CalculateDifference[{par_, value_}, offset_Integer, vector_String] :=
CalculateDifference[{par,value}, offset, vector, Parameters`GetType[par]];

(* @todo: handle case of complex parameters and/or Re[Mu] etc. *)
CalculateDifference[FlexibleSUSY`FSSolveEWSBFor[pars_List], offset_Integer, vector_String] :=
Module[{i, currentOffset = offset, result = "", parStr},
For[i = 1, i <= Length[pars], i++,
Expand Down

0 comments on commit ef2c3f5

Please sign in to comment.