Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update of IDM #328

Closed
wants to merge 37 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
97e93cc
added out-of-equilibrium particle for A and Hpm
jorindevandevis Oct 21, 2024
343f5eb
some updates in exampleCollisionDefs
jorindevandevis Oct 21, 2024
b17f2af
add matrix elements for idm
pschicho Oct 21, 2024
48e97ed
include vev as paramter in json ouput parameter list
pschicho Oct 21, 2024
ec76076
thermal masses for all particles
jorindevandevis Oct 21, 2024
3bea945
set couplings lam1, lam4 and lam5 to zero
jorindevandevis Oct 21, 2024
3382c19
particle definitions in collision model
jorindevandevis Oct 21, 2024
0eaf3d5
renamed some things to be consistent with the WallGoMatrix names
jorindevandevis Oct 21, 2024
6795b8a
renamed heavyScalar to A
jorindevandevis Oct 21, 2024
30bcbef
use a small collision multiplier
jorindevandevis Oct 22, 2024
03230b1
Looks like a typo
Oct 23, 2024
1ca70bd
Merge branch 'main' into completeIDM
jorindevandevis Oct 24, 2024
3a8d3f9
updated idm files
jorindevandevis Oct 24, 2024
d027f24
added the leptons which I had forgotten before
jorindevandevis Oct 24, 2024
96d422f
updated model file and collision file and new json file
jorindevandevis Oct 24, 2024
5376472
remove old matrixelements files
jorindevandevis Oct 24, 2024
526fb6d
Also created reduced set of matrix elements. Had to add AH interactio…
jorindevandevis Oct 25, 2024
842f48f
removed old N = 11 collision files
jorindevandevis Oct 25, 2024
8a13506
debugging
jorindevandevis Oct 25, 2024
50d0423
changed some things, still does not work
jorindevandevis Oct 25, 2024
4668553
forgot the vev-dependent couplings in the matrix elements
jorindevandevis Oct 25, 2024
47253d7
this works if the scalar is in equilibrium
jorindevandevis Oct 25, 2024
0fd187a
added a plot
jorindevandevis Oct 25, 2024
02a4993
Computed the N=11 collision files
benoitlaurent96 Oct 26, 2024
97cdfb6
modified mean free path and wallthicknessguess
jorindevandevis Oct 27, 2024
fb69c4b
Merge branch 'main' into completeIDM
jorindevandevis Oct 27, 2024
dfe3364
remove plot
jorindevandevis Oct 27, 2024
ddf6802
found a reasonable set of parameters
jorindevandevis Oct 27, 2024
5ccb99a
Update idm.m
jorindevandevis Oct 27, 2024
44889e2
Delete Models/InertDoubletModel/MatrixElements/matrixElements.idmRedu…
jorindevandevis Oct 27, 2024
d762a56
Delete Models/InertDoubletModel/MatrixElements/matrixElements.idm.json
jorindevandevis Oct 27, 2024
0345508
Delete Models/InertDoubletModel/MatrixElements/matrixElements.idmRedu…
jorindevandevis Oct 27, 2024
c925d4a
Rename matrixElements.SMA.json to matrixElements.idm.json
jorindevandevis Oct 27, 2024
45e577e
Update inertDoubletModel.py
jorindevandevis Oct 27, 2024
81cbe64
convert back to BMA and match config with results in draft
jorindevandevis Oct 27, 2024
98bcd00
Added N = 15 data files
jorindevandevis Oct 28, 2024
40525cf
Index change
Oct 29, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified Models/InertDoubletModel/CollisionOutput_N11/collisions_TopL_W.hdf5
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file modified Models/InertDoubletModel/CollisionOutput_N11/collisions_TopR_W.hdf5
Binary file not shown.
Binary file not shown.
Binary file modified Models/InertDoubletModel/CollisionOutput_N11/collisions_W_TopL.hdf5
Binary file not shown.
Binary file modified Models/InertDoubletModel/CollisionOutput_N11/collisions_W_TopR.hdf5
Binary file not shown.
Binary file modified Models/InertDoubletModel/CollisionOutput_N11/collisions_W_W.hdf5
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
209 changes: 209 additions & 0 deletions Models/InertDoubletModel/MatrixElements/idm.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,209 @@
(* ::Package:: *)

(*Quit[];*)


If[$InputFileName=="",
SetDirectory[NotebookDirectory[]],
SetDirectory[DirectoryName[$InputFileName]]
];
(*Put this if you want to create multiple model-files with the same kernel*)
$GroupMathMultipleModels=True;
$LoadGroupMath=True;
Check[
Get["WallGoMatrix`"],
Message[Get::noopen, "WallGoMatrix` at "<>ToString[$UserBaseDirectory]<>"/Applications"];
Abort[];
]


(* ::Chapter:: *)
(*Inert doublet model*)


(*See 2211.13142 for implementation details -- note our different normalization in the
quartic couplings*)


(* ::Section:: *)
(*Model*)


Group={"SU3","SU2"};
RepAdjoint={{1,1},{2},0};
HiggsDoublet1={{{0,0},{1}},"C"};
HiggsDoublet2={{{0,0},{1}},"C"};
RepScalar={HiggsDoublet1,HiggsDoublet2};
CouplingName={g3,gw};


Rep1={{{1,0},{1}},"L"};
Rep2={{{1,0},{0}},"R"};
Rep3={{{1,0},{0}},"R"};
Rep4={{{0,0},{1}},"L"};
Rep5={{{0,0},{0}},"R"};
RepFermion1Gen={Rep1,Rep2,Rep3,Rep4,Rep5};


(* ::Text:: *)
(*The input for the gauge interactions to DRalgo are then given by*)


RepFermion3Gen={RepFermion1Gen,RepFermion1Gen,RepFermion1Gen}//Flatten[#,1]&;


(* ::Text:: *)
(*The first element is the vector self-interaction matrix:*)


{gvvv,gvff,gvss,\[Lambda]1,\[Lambda]3,\[Lambda]4,\[Mu]ij,\[Mu]IJ,\[Mu]IJC,Ysff,YsffC}=AllocateTensors[Group,RepAdjoint,CouplingName,RepFermion3Gen,RepScalar];


InputInv={{1,1},{True,False}};
MassTerm1=CreateInvariant[Group,RepScalar,InputInv]//Simplify//FullSimplify;
InputInv={{2,2},{True,False}};
MassTerm2=CreateInvariant[Group,RepScalar,InputInv]//Simplify//FullSimplify;
InputInv={{1,2},{True,False}};
MassTerm3=CreateInvariant[Group,RepScalar,InputInv]//Simplify//FullSimplify;
InputInv={{2,1},{True,False}};
MassTerm4=CreateInvariant[Group,RepScalar,InputInv]//Simplify//FullSimplify;


VMass=(
+m1*MassTerm1
+m2*MassTerm2
);


\[Mu]ij=GradMass[VMass[[1]]]//Simplify//SparseArray;


QuarticTerm1=MassTerm1[[1]]^2;
QuarticTerm2=MassTerm2[[1]]^2;
QuarticTerm3=MassTerm1[[1]]*MassTerm2[[1]];
QuarticTerm4=MassTerm3[[1]]*MassTerm4[[1]];
QuarticTerm5=(MassTerm3[[1]]^2+MassTerm4[[1]]^2)//Simplify;


VQuartic=(
+lam1H*QuarticTerm1
+lam2H*QuarticTerm2
+lam3H*QuarticTerm3
+lam4H*QuarticTerm4
+lam5H/2*QuarticTerm5
);


\[Lambda]4=GradQuartic[VQuartic];


InputInv={{1,1,2},{False,False,True}};
YukawaDoublet1=CreateInvariantYukawa[Group,RepScalar,RepFermion3Gen,InputInv]//Simplify;


Ysff=-GradYukawa[yt1*YukawaDoublet1[[1]]];


YsffC=SparseArray[Simplify[Conjugate[Ysff]//Normal,Assumptions->{yt1>0}]];


ImportModel[Group,gvvv,gvff,gvss,\[Lambda]1,\[Lambda]3,\[Lambda]4,\[Mu]ij,\[Mu]IJ,\[Mu]IJC,Ysff,YsffC,Verbose->False];


(* ::Section:: *)
(*SM quarks + gauge bosons + leptons*)


(* ::Subsection:: *)
(*SymmetryBreaking*)


vev={0,v,0,0,0,0,0,0};
SymmetryBreaking[vev,VevDependentCouplings->True]


(* ::Subsection:: *)
(*UserInput*)


(*
In DRalgo fermions are Weyl.
So to create one Dirac we need
one left-handed and
one right-handed fermoon
*)


(*left-handed top-quark*)
ReptL=CreateParticle[{{1,1}},"F"];

(*right-handed top-quark*)
ReptR=CreateParticle[{{2,1}},"F"];

(*light quarks*)
RepLightQ = CreateParticle[{{1,2},3,6,7,8,11,12,13},"F"];

(*left-handed leptons*)
RepLepL = CreateParticle[{4,9,14},"F"];

(*right-handed leptons -- these don't contribute*)
RepLepR = CreateParticle[{5,10,15},"F"];

(*Vector bosons*)
RepGluon=CreateParticle[{1},"V"];

(*We are approximating the W and the Z as the same particle*)
RepW=CreateParticle[{{2,1}},"V"];

(*Higgs*)
RepHiggs = CreateParticle[{1},"S"];

RepH=CreateParticle[{{2,2}},"S"]; (*CP-even inert scalar*)
RepA=CreateParticle[{{2,3},{2,1}},"S"]; (*CP-odd inert and charged scalars.
Note that when lambda4 = lambda5, they have the same mass*)


(*
These particles do not necessarily have to be out of equilibrium
the remainin particle content is set as light
*)
ParticleList={ReptL,ReptR,RepLightQ,RepLepL,RepLepR,RepGluon,RepW, RepHiggs,RepH, RepA};


(*Defining various masses and couplings*)


VectorMass=Join[
Table[mg2,{i,1,RepGluon[[1]]//Length}],
Table[mw2,{i,1,RepW[[1]]//Length}]
];
(*First we give all the leptons the same mass*)
FermionMass=Table[mq2,{i,1,Length[gvff[[1]]]}];
(*Now we replace the entries with the lefthanded lepton indices by the lepton mass*)
(*We don't care about the right-handed leptons, because they don't appear in the diagrams*)
FermionMass[[RepLepL[[1]]]]=ml2;
ScalarMass={mh2,mh2,mh2,mh2,mA2,mH2,mA2,mA2};
ParticleMasses={VectorMass,FermionMass,ScalarMass};
(*
up to the user to make sure that the same order is given in the python code
*)
UserMasses={mq2,ml2,mg2,mw2,mh2,mA2};
UserCouplings=Variables@Normal@{Ysff,gvss,gvff,gvvv,\[Lambda]4,\[Lambda]3,vev}//DeleteDuplicates


(*
output of matrix elements
*)
OutputFile="matrixElements.idm";
SetDirectory[NotebookDirectory[]];
ParticleName={"TopL","TopR","LightQuark","LepL","LepR","Gluon","W","Higgs","H","A"};
MatrixElements=ExportMatrixElements[
OutputFile,
ParticleList,
UserMasses,
UserCouplings,
ParticleName,
ParticleMasses,
{TruncateAtLeadingLog->True,Replacements->{lam1H->0,lam2H->0,lam4H->0,lam5H->0},Format->{"json","txt"}}];


Loading
Loading