MG5_aMC v3.3.0 Fails to Import Custom ALP-HNL UFO Due to CTParameters Generated by FeynRules Couplings

Asked by zhangjiatong

Dear MadGraph Experts,
I am trying to simulate processes at the LHC and muon collider, specifically:pp → a → NN → ℓ W ℓ W,μμ → a → NN → ℓ W ℓ W,where the main goal is to produce heavy neutral leptons (Majorana-type HNL) via an ALP mediator.
I built a custom UFO model based on the official FeynRules models heavyN.fr and ALP_linear.fr. I redefined a new ALP-HNL coupling Lagrangian and the associated parameters (see my model files pasted at the end). I exported the UFO using Mathematica 13.0 on Linux.
When importing the model in MG5_aMC v3.3.0 for the first time using:import model alphnl1_UFO/I encountered the following error:
Command "import model alphnl1_UFO/" interrupted with error:
UFOError : invalid syntax (object_library.py, line 268)
Please report this bug on https://bugs.launchpad.net/mg5amcnlo
More information is found in 'MG5_debug'.
Please attach this file to your report.
The relevant snippet in object_library.py around line 268 is:CTparam=None
for param in all_CTparameters:
    pattern=re.compile(r"(?P<first>\A|\*|\+|\-|\()(?P<name>"+param.name+r")(?P<second>\Z|\*|\+|\-|\))")
    numberOfMatches=len(pattern.findall(self.value))
    if numberOfMatches==1:
        if not CTparam:
            CTparam=param
        else:
            raise UFOError("UFO does not support yet more than one occurence of CTParameters in the couplings values.")
    elif numberOfMatches>1:
        raise UFOError("UFO does not support yet more than one occurence of CTParameters in the couplings values.")
When I try to import the model a second time, I get a different error:
Error detected in "import model alphnl1_UFO/"
write debug file MG5_debug
str : name cAN1 define multiple time. Please correct the UFO model!
My questions are:
 1.Could these errors be caused by my FeynRules implementation of the new ALP-HNL couplings, which inadvertently generated CTParameters in the UFO, leading to the import errors in MG5?
 2.Is this a compatibility issue with MG5_aMC v3.3.0 and Mathematica 13.0 exported UFOs?
 3.Are there recommended ways to modify my UFO so that MG5 can import it correctly, avoiding both the CTParameters and multiple-definition errors?

Thank you very much for your guidance.
The following are my model file:
(* ===================================== *)
(* ALP + Heavy Neutral Lepton *)
(* ===================================== *)

M$ModelName = "ALP_HNL30";

FeynmanGauge = True;

(* -------------------- *)
(* Indices *)
(* -------------------- *)
IndexRange[Index[Colour]] = Range[3];
IndexRange[Index[Gluon]] = Range[8];
IndexRange[Index[SU2W]] = Range[3];

(* -------------------- *)
(* Parameters *)
(* -------------------- *)
M$Parameters = {

  fa == {
      ParameterType -> External,
      BlockName -> ALPPARAM,
      OrderBlock -> 1,
      Value -> 1000.,
      TeX -> Subscript[f,a]
  },

   (* Wilson coefficients *)

  CGtil == {
    ParameterType -> External,
    BlockName -> ALPPARS,
    Value -> 1.,
    InteractionOrder -> {NP, 1},
    ComplexParameter -> False,
    TeX -> Subscript[c,OverTilde[G]]
  },
  CWtil == {
    ParameterType -> External,
    BlockName -> ALPPARS,
    Value -> 1.,
    InteractionOrder -> {NP, 1},
    ComplexParameter -> False,
    TeX -> Subscript[c,OverTilde[W]]
  },
  CBtil == {
    ParameterType -> External,
    BlockName -> ALPPARS,
    Value -> 1.,
    InteractionOrder -> {NP, 1},
    ComplexParameter -> False,
    TeX -> Subscript[c,OverTilde[B]]
  },
  CaPhi == {
    ParameterType -> External,
    BlockName -> ALPPARS,
    Value -> 1.,
    InteractionOrder -> {NP, 1},
    ComplexParameter -> False,
    TeX -> Subscript[c,a\[Phi]]
  },

  cN1 == {
       ParameterType -> External,
       BlockName -> ALPPARAM,
       OrderBlock -> 1,
       Value -> 1.0,
       InteractionOrder -> {NP, 1},
       TeX -> Subscript[c,N1]
  },
  VeN1 == {
     ParameterType -> External,
 BlockName -> NUMIXING,
     OrderBlock -> 1,
     Value -> 1.0,
 ComplexParameter -> False,
 TeX -> Subscript[V,eN1],
     Description -> "Mixing between ve flavor/gauge state and N1 mass state"
 },
  VmuN1 == {
     ParameterType -> External,
 BlockName -> NUMIXING,
     OrderBlock -> 2,
     Value -> 1.0,
 ComplexParameter -> False,
 TeX -> Subscript[V,muN1],
     Description -> "Mixing between vm flavor/gauge state and N1 mass state"
 },
  VtaN1 == {
     ParameterType -> External,
 BlockName -> NUMIXING,
     OrderBlock -> 3,
     Value -> 1.0,
 ComplexParameter -> False,
 TeX -> Subscript[V,taN1],
     Description -> "Mixing between vt flavor/gauge state and N1 mass state"
 },

  gN == {
  ParameterType -> Internal,
  Value -> ee/sw,
  InteractionOrder -> {NP,1},
  TeX -> Subscript[g,N]}
};

M$InteractionOrderHierarchy = {
  {QCD, 1},
  {QED, 2}
};

(* -------------------- *)
(* Particle classes *)
(* -------------------- *)
M$ClassesDescription = {

  (* ALP *)
  S[100] == {
    ClassName -> ALP,
    SelfConjugate -> True,
    Mass -> {Ma, 0.001},
    Width -> 1.0,
    PDG -> 9000001,
    ParticleName -> "ax",
    FullName -> "ALP"
  },

  (* Heavy Neutral Lepton *)
  F[100] == {
    ClassName -> N1,
    SelfConjugate -> True,
    Mass -> {mN1, 300.},
    Width -> {WN1, 1.0},
    PDG -> 9900012,
    ParticleName -> "N1",
    FullName -> "HeavyNeutralLepton"
  }
};

(* -------------------- *)
(* Lagrangian *)
(* -------------------- *)

LAlp := Block[{mu}, 1/2 del[ALP,mu].del[ALP,mu] - Ma^2/2 ALP^2];

OBtil := Block[{mu,nu},
ExpandIndices[ - Bmunu[mu,nu] Btilde[mu,nu] ALP/fa , FlavorExpand -> SU2D]
];

OWtil := Block[{mu,nu},
ExpandIndices[ - 2 * Tr[Wmunumatrix[mu,nu].Wtildematrix[mu,nu]] ALP/fa , FlavorExpand -> SU2D]
];

OGtil := Block[{mu,nu,ro,sig,aa},
ExpandIndices[ - Eps[mu,nu,ro,sig]/2 FS[G,mu,nu,aa] FS[G,ro,sig,aa] ALP/fa , FlavorExpand -> SU2D]
];

(* the operator O_aPhi is defined in the fermionic form (using EOMs) *)

LY := Block[{sp,ii,ff1,ff2,ff3,aa,feynmangaugerules},
    feynmangaugerules = If[Not[FeynmanGauge], {G0|GP|GPbar ->0}, {}];
   ExpandIndices[(
    yd[ff2, ff3] CKM[ff1, ff2] QLbar[sp, ii, ff1, aa].dR [sp, ff3, aa] Phi[ii] +
    yl[ff1, ff3] LLbar[sp, ii, ff1].lR [sp, ff3] Phi[ii] -
    yu[ff1, ff2] QLbar[sp, ii, ff1, aa].uR [sp, ff2, aa] Phibar[jj] Eps[ii, jj]
    ), FlavorExpand->{SU2D,SU2W}]/.feynmangaugerules
];

OaPhi := -I LY ALP/fa + HC[ -I LY ALP/fa];

LAlp1 := CBtil OBtil + CWtil OWtil + CGtil OGtil + CaPhi OaPhi;

LAlpN := I*(cN1*mN1/fa) * ALP * N1bar.(ProjP - ProjM).N1;

LNKin := I/2 N1bar[s1].Ga[v,s1,s2].del[N1[s2],v] - 1/2 mN1 N1bar[s1]N1[s1];

(* Charge Current *)
LNCCbare := gN/Sqrt[2] *( VeN1 * N1bar.Ga[mu].ProjM.e W[mu] \
                + VmuN1 * N1bar.Ga[mu].ProjM.mu W[mu] \
     + VtaN1 * N1bar.Ga[mu].ProjM.ta W[mu]);
LNCC := LNCCbare + HC[LNCCbare];

(* Neutral Current *)
LNNCBare := 1/2 * gN/cw *( VeN1 * N1bar.Ga[mu].ProjM.ve Z[mu] \
                  + VmuN1 * N1bar.Ga[mu].ProjM.vm Z[mu] \
                + VtaN1 * N1bar.Ga[mu].ProjM.vt Z[mu]);
LNNC := LNNCBare + HC[LNNCBare];
(* Higgs Interaction *)
LNHbare := - gN*mN1/(2*MW) *( VeN1 * N1bar.ProjM.ve H \
    + VmuN1 * N1bar.ProjM.vm H \
    + VtaN1 * N1bar.ProjM.vt H);
LNH := LNHbare + HC[LNHbare];
(* Goldstone Interaction *)
LNGbare := I *gN*mN1/(2*MW) *( VeN1 * vebar.ProjP.N1 G0 \
     + VmuN1 * vmbar.ProjP.N1 G0 \
     + VtaN1 * vtbar.ProjP.N1 G0) \
  + I *gN*mN1/(Sqrt[2]*MW) *( VeN1 * ebar.ProjP.N1 GPbar \
     + VmuN1 * mubar.ProjP.N1 GPbar \
     + VtaN1 * tabar.ProjP.N1 GPbar);
LNG := LNGbare + HC[LNGbare];

LN := LNKin + LNCC + LNNC + LNH + LNG;

LTotal := LSM + LAlp + LAlp1 + LAlpN + LN;

Question information

Language:
English Edit question
Status:
Solved
For:
MadGraph5_aMC@NLO Edit question
Assignee:
No assignee Edit question
Solved by:
Olivier Mattelaer
Solved:
Last query:
Last reply:
Revision history for this message
Best Olivier Mattelaer (olivier-mattelaer) said :
#1

As said in the previous post, maybe worth to try up to date version of MG5aMC just in case.

But the more likely issue is that your UFO model has a definition issue related to can1
(but I do not see such symbol in the feynrules input), since I do not know Feynrules code (and that I do not have a mathematica license) the only other advise I can give you is to
1) check the UFO model to see if the issue is that madgraph does not support one syntax (which is possible) or if it is FeynRules producing wrong formatting. In the second case, you should contact FR author.

Cheers,

Olivier

Revision history for this message
zhangjiatong (jiatong1014) said :
#2

Dear Olivier,

Thank you very much for your detailed explanation and helpful suggestions.

Following your advice, I carefully revised my FeynRules implementation of the ALP–HNL couplings, removed the terms that inadvertently generated CTParameters, and regenerated the UFO model. After these modifications, the model can now be successfully imported into MG5_aMC v3.3.0, and the processes run as expected.

My issue has now been fully resolved. I sincerely appreciate your time and support.

Best regards,
Zhangjitong