Neutrino Propagation in Supernovae with Nonstandard Interactions

A lesson on how the Wolfram Language can be used to create a simple toy model that can efficiently guide toward understanding general features of complex systems.
June 19, 2017—Daavid Väänänen

Setting Up a System of Interacting Neutrinos and Antineutrinos with Two Distinct Types

COMMENT:
If you would like to learn more about the system, please visit the APS Journal.
First, we define a toy function to describe the shape of the background potential caused by neutrinos interacting with other non-neutrino background particles (including nonstandard interaction contributions, which are assumed to behave similarly as weak interactions):
In[]:=
potBG[yshiftBG_,xshiftBG_,widthBG_,r_]:=(yshiftBG-((r-xshiftBG)/widthBG)^2);​​(*​​yshiftBGcanbeusedtoadjustashiftalongy-axis,​​xshiftBGcanbeusedtoadjustashigtalongx-axis,​​widthBGcanbbeusedtoadjustwidthofthepotential,​​rdescribestheradialdistancefromtheemissionlocation​​*)
Next, we define a function to describe the shape of the background potential caused by neutrinos interacting with other surrounding neutrinos and antineutrinos:
In[]:=
potNu[scaleNu_,steepnessNu_,r_]:=scaleNuExp[-r/steepnessNu];​​potAnu[asymmetry_,scaleNu_,steepnessNu_,r_]:=-asymmetrypotNu[scaleNu,steepnessNu,r];​​(*​​potNu[scaleNu_,steepnessNu_,r_]describestheneutrinopotential,​​scaleNucanbeusedtoadjustintialscalingofthepotential,​​steepnessNucanbeusedtoadjuststeepnessofthepotential,​​potAnu[asymmetry_,scaleNu_,steepnessNu_,r_]describestheantineutrinopotential(whichisassumedtoscalelinearlywithrespecttotheneutrinopotential),​​asymmetrydescribestheinitialasymmetrybetweenneutrinosandantineutrinos,​​rdescribestheradialdistancefromtheemissionlocation​​*)
Now we can visualize the different possible extreme configurations for the potentials with some interesting input values:
In[]:=
yBG=400(*anexamplevalueforyshiftBG*);​​xBG=500(*anexamplevalueforxshiftBG*);​​wBG=8(*anexamplevalueforwidthBG*);​​​​scNu=25000(*anexamplevalueforscaleNu*);​​stNu=80(*anexamplevalueforsteepnessNu*);​​as=0.9(*anexamplevaluefortheinitialneutrino-antineutrinoasymmetry*);​​​​rmin=20(*initialradialevaluationpoint*);​​rmax=700(*finalradialevaluationpoint*);​​​​Plot[{​​potBG[xBG,yBG,wBG,r](*backgroundpotential*),​​-potBG[xBG,yBG,wBG,r](*inverseofbackgroundpotential*),​​potNu[scNu,stNu,r]+potAnu[as,scNu,stNu,r](*totalneutrinopotential,bothwithelectrontypeneutrinoandantineutrino*),​​-potNu[scNu,stNu,r]-potAnu[as,scNu,stNu,r](*totalneutrinopotential,bothwithnon-electrontypeneutrinoandantineutrino*),​​potNu[scNu,stNu,r]-potAnu[as,scNu,stNu,r](*totalneutrinopotentialwithelectrontypeneutrinoandnon-electrontypeantineutrino*),​​-potNu[scNu,stNu,r]+potAnu[as,scNu,stNu,r]}(*totalneutrinopotentialwithnon-electrontypeneutrinoandelectrontypeantineutrino*),​​{r,rmin,rmax},FrameTrue,​​PlotStyle{Cyan,{Cyan,Dashed},Red,{Red,Dashed},{Red,DotDashed},{Red,Dotted}},​​FrameLabel{"Radial Distance [a.u.]","Interaction Potential [a.u.]"},​​FrameTicksStyleThick,​​LabelStyleDirective[FontSize20],PlotLegends{"Background Potential","Inverse Background Potential","Neutrino Potential (both electron type)","Neutrino Potential (both non-electron type)","Neutrino Potential (electron neutrino, non-electron antineutrino)","Neutrino Potential (non-electron neutrino, electron antineutrino)"}​​]
Out[]=
Background Potential
Inverse Background Potential
Neutrino Potential (both electron type)
Neutrino Potential (both non-electron type)
Neutrino Potential (electron neutrino, non-electron antineutrino)
Neutrino Potential (non-electron neutrino, electron antineutrino)

Simulating the Evolution of Neutrinos and Antineutrinos

AUTHORSHIP INFORMATION
Daavid Väänänen
6/19/17