Skip to content

Commit

Permalink
Reintroduced some cxx conversion function calls that for some weird r…
Browse files Browse the repository at this point in the history
…eason got lost along the way...
  • Loading branch information
iolojz committed Jan 21, 2017
1 parent 1c9cd4e commit 265d93a
Showing 1 changed file with 10 additions and 6 deletions.
16 changes: 10 additions & 6 deletions meta/EDM.m
Expand Up @@ -369,6 +369,9 @@ If you add new kinds of vertices (e.g for new diagram types):
decl
];

GetComplexScalarCType[] :=
CConversion`CreateCType[CConversion`ScalarType[CConversion`complexScalarCType]];

(* ParsedVertex structure:
ParsedVertex[
{numP1Indices, numP2Indices, ...},
Expand Down Expand Up @@ -400,22 +403,23 @@ If you add new kinds of vertices (e.g for new diagram types):
"SingleComponentedVertex",
expr = (SARAH`Cp @@ fields) /. vertexRules;
expr = TreeMasses`ReplaceDependenciesReverse[expr];
"std::complex<double> result;\n\n" <>
declareIndices <>
Parameters`CreateLocalConstRefs[expr] <> "\n" <>
Parameters`ExpressionToString[expr, "result"] <> "\n" <>
"const " <> GetComplexScalarCType[] <> " result = " <>
Parameters`ExpressionToString[expr] <> ";\n\n" <>
"return vertex_type(result);",

"LeftAndRightComponentedVertex",
exprL = SARAH`Cp[Sequence @@ fields][SARAH`PL] /. vertexRules;
exprR = SARAH`Cp[Sequence @@ fields][SARAH`PR] /. vertexRules;
exprL = TreeMasses`ReplaceDependenciesReverse[exprL];
exprR = TreeMasses`ReplaceDependenciesReverse[exprR];
"std::complex<double> left, right;\n\n" <>
declareIndices <>
Parameters`CreateLocalConstRefs[exprL + exprR] <> "\n" <>
Parameters`ExpressionToString[exprL, "left"] <> "\n" <>
Parameters`ExpressionToString[exprR, "right"] <> "\n" <>
"const " <> GetComplexScalarCType[] <> " left = " <>
Parameters`ExpressionToString[exprL] <> ";\n\n" <>
"const " <> GetComplexScalarCType[] <> " right = " <>
Parameters`ExpressionToString[exprR] <> ";\n\n" <>
"return vertex_type(left, right);"];

sarahFields = SARAH`getParticleName /@ fields;
Expand Down

0 comments on commit 265d93a

Please sign in to comment.