Este es mi reporte de la quinta parte del proyecto de ciencia ciudadana. En la parte anterior, usamos MadAnalysis5 para analizar los datos que habíamos obtenido en la segunda parte. Para más detalles, pueden leer mi reporte o el de cualquiera de mis compañeros de proyecto en la etiqueta #citizenscience. En esta parte, simularemos la señal de neutrinos que vamos a estudiar. Si quieren conocer más sobre este proyecto, pueden ingresar a este post de @lemouth, que es quien está liderando este experimento en Hive.
This is my report of the fifth part of the citizen science project. In the previous part, we used MadAnalysis5 to analyze the data we had obtained in the second part. For more details, you can read my report or that of any of my colleagues in the project under the hashtag #citizenscience. In this part, we are going to simulate the neutrino signal that we are going to study. If you want to learn more about this project, you can go to this post by @lemouth, who is leading this experiment at Hive.
Tarea 1 - Instalación de un modelo de física de partículas en MG5aMC
Installation of a particle physics model in MG5aMC - task 1
La primera tarea consistía en agregar a MG5aMC una extensión del Modelo Estándar que incluye nuevos neutrinos masivos. Para ello había que situarse dentro de la carpeta models de la instalación de MG5aMC y correr un comando con curl. En mi caso, no tenía instalado curl, así que tuve que instalarlo primero:
The first task was to add to MG5aMC an extension of the Standard Model that includes new massive neutrinos. To do this, we had to go to the models folder of the MG5aMC installation and run a command with curl. In my case, I did not have curl installed, so I had to install it first:
Ya con curl instalado, pude agregar el modelo a MG5aMC.
With curl installed, I was able to add the model to MG5aMC.
Y SM_HeavyN_NLO ya aparece dentro de la carpeta models.
And SM_HeavyN_NLO already appears inside the models folder.
Preparación de la simulación de una señal de neutrinos pesados - tarea 2
Preparing the simulation of a heavy neutrino signal - task 2
Antes de pasar a la segunda tarea, voy a tratar de explicar con mis palabras lo que vamos a hacer. Pueden leerlo mejor explicado en el artículo de lemouth que cité en la introducción, pero reformularlo me ayuda a comprender mejor qué estoy haciendo, en lugar de solo repetir comandos en la terminal de linux. Lo que vamos a simular es la colisión de dos quarks a altas energías, tal como ocurre en el LHC. En esa colisión, cada quark tiene una determinada probabilidad de emitir un bosón W. Estos, a su vez, intercambian un neutrino pesado (para eso instalamos la extensión del modelo estándar) y se producen dos leptones (electrones, muones, taus, neutrinos, y sus antipartículas) con la misma carga eléctrica. En una investigación del año 2020, lemouth y sus colaboradores analizaron el caso de la producción de dos muones o antimuones. La idea es que nosotros en Hive estudiemos el resto de las combinaciones de leptones. Antes de dar ese paso, sin embargo, vamos a tratar de reproducir los resultados de la investigación ya realizada con los muones, para testear que todo esté funcionando correctamente.
Before moving on to the second task, I will try to explain in my own words what we are going to do. You can read it better explained in the lemouth article I quoted in the introduction, but rephrasing it helps me to better understand what I am doing, instead of just repeating commands in the linux terminal. What we are going to simulate is the collision of two quarks at high energies, as occurs at the LHC. In that collision, each quark has a certain probability of emitting a W boson. These, in turn, exchange a heavy neutrino (for that we installed the standard model extension) and two leptons (electrons, muons, taus, neutrinos, and their antiparticles) with the same electric charge are produced. In a 2020 investigation, lemouth and his collaborators analyzed the case of the production of two muons or anti-muons. The idea is for us at Hive to study the rest of the lepton combinations. Before taking that step, however, we will try to reproduce the results of the research already carried out with muons, to test that everything is working correctly.
Ahora sí, entonces, volvamos a la terminal de linux para iniciar MG5aMC. La idea es convertir el modelo que descargamos en una versión para Python 3. Como no recordaba qué versión de Python tenía, primero lo comprobé de este modo:
Now then, let's go back to the linux terminal to start MG5aMC. The idea is to convert the model we downloaded into a version for Python 3. Since I didn't remember which version of Python I had, I first checked it this way:
Luego, convertí el modelo:
Then, I converted the model:
Y lo importé:
And I imported it:
El siguiente paso es excluir la posibilidad de tener un bottom quark en los protones que van a colisionar, ya que estos quarks no se consideran sin masa como los otros (que en realidad tienen una masa, pero insignificante). Para ello escribí los siguientes comandos en la terminal:
The next step is to exclude the possibility of having a bottom quark in the protons that are going to collide, since these quarks are not considered massless like the others (which actually have a mass, but negligible). To do this I typed the following commands in the terminal:
Luego, generé la colisión de dos protones que produce dos antimuones y dos jets:
Then, I generated the collision of two protons that produces two anti-muons and two jets:
Y le agregué la colisión que produce dos muones y dos jets:
And I added the collision that produces two muons and two jets:
Con esto, entonces, tenemos ya los casos estudiados en la publicación de 2020, es decir, aquellos en que la colisión de dos quarks (que no son bottom) producen dos muones o dos antimuones. Finalmente, creé la carpeta test_signal con los resultados.
With this, then, we already have the cases studied in the 2020 publication, that is, those in which the collision of two quarks (which are not bottom) produce two muons or two antimuons. Finally, I created the test_signal folder with the results.
En el siguiente paso, tipeé “open index.html” para acceder a los 80 diagramas generados, que se encuentran en el enlace “Process Information”.
In the next step, I typed "open index.html" to access the 80 generated diagrams, which are located in the "Process Information" link.
Algunos de los diagramas generados:
Some of the generated diagrams:
Diagramas de Feynman - ejercicio 1
Feynman diagrams - assignment 1
¿Cuáles son las diferencias entre los diagramas generados? ¿Por qué hay tantos diagramas?
Los diagramas generados son muy similares. En principio, veo que hay dos grandes grupos de diagramas, aquellos en los que se generan dos muones (mu- mu-) y aquellos en los que se generan dos antimuones (mu+ mu+), que es justamente lo que buscábamos. En cada uno de estos grupos hay diferentes diagramas según el tipo de quark que se considere en cada caso (u, d, c, s y u~, d~, c~, s~). No hay bottom quark porque lo excluimos en uno de los pasos anteriores. ¿Por qué no hay quark top? Revisando los pasos anteriores veo que tampoco lo habíamos incluido, pero desconozco la razón de ello. ¿lemouth?
What are the differences between the generated diagrams? Why are there so many diagrams?
The generated diagrams are very similar. In principle, I see that there are two large groups of diagrams, those in which two muons are generated (mu- mu-) and those in which two anti-muons are generated (mu+ mu+), which is exactly what we were looking for. In each of these groups there are different diagrams according to the type of quark considered in each case (u, d, c, s and u~, d~, c~, s~). There is no bottom quark because we excluded it in one of the previous steps. Why there is no top quark? Reviewing the previous steps I see that we had not included it either, but I don't know the reason for that. lemouth?
Cálculo de la tasa de producción de señales - tarea 3
Calculation of the signal production rate - task 3
Para calcular la tasa a la que se produce el proceso en el LHC Run 2, escribí el comando “launch” en MG5aMC y luego “0”, ya que no es necesario activar ninguna de las opciones que aparecen.
To calculate the rate at which the process occurs in LHC Run 2, I typed the command "launch" in MG5aMC and then "0", since it is not necessary to activate any of the options that appear.
Luego, escribí “1” para poder modificar los parámetros del archivo “param_card.dat”. En esta parte, hay que usar VI, al cual no estoy acostumbrado, pero voy aprendiendo de a poco.
Then, I wrote “1” to be able to modify the parameters of the "param_card.dat" file. In this part, I had to use VI, which I am not used to, but I am learning little by little.
Como solo queremos que esté activo un neutrino pesado, seteé la masa del primer neutrino con un valor pequeño y la de los demás con un valor grande.
Since we only want one heavy neutrino to be active, I set the mass of the first neutrino to a small value and the others to a large value.
Luego, en la parte de “Information for numixing”, seteé “VmuN1” con un valor de “1” y todo el resto con “0”.
Then, in the "Information for numixing" part, I set "VmuN1" with a value of "1" and all the rest with "0".
Por último, en “Information for decay” configuré WN1 como “Auto”.
Finally, in "Information for decay" I configured WN1 as "Auto".
Luego, edité el archivo “run_card.dat”.
Then, I edited the "run_card.dat" file.
En la sección “PDF Choice” cambié los parámetros por “lhapdf” y “262000”.
In the "PDF Choice" section I changed the parameters to "lhapdf" and "262000".
En “Minimum and maximum pt’s” seteé “0.0 = ptl”.
In "Minimum and maximum pt's" I set "0.0 = ptl".
Finalmente, en “Store info for systematics studies” configuré “False = use_syst”.
Finally, in “Store info for systematics studies” I set "False = use_syst".
Al correr el programa, recibí un error de lhapdf.
When running the program, I received an error from lhapdf.
Hice una búsqueda por internet, instalé python3.7-distutils y luego volví a instalar lhapdf. Corrí otra vez el comando launch y esta vez sí funcionó.
I did an internet search, installed python3.7-distutils and then reinstalled lhapdf. I ran the launch command again and this time it worked.
El valor, sin embargo, no se parece al esperado.
The value, however, does not resemble the expected one.
Así que salí de MG5aMC y realicé todo el proceso nuevamente. El error estaba en la información de la masa.
So I exited MG5aMC and did the whole process again. The error was in the mass information.
Esta vez los resultados fueron los siguientes.
This time the results were as follows.
Como se puede ver en la imagen el proceso demoró 21 minutos (estoy en una máquina virtual con poca memoria) y obtuve una cross-section de 0.0123 pb, que era lo esperado.
As you can see in the image the process took 21 minutes (I am in a virtual machine with little memory) and I obtained a cross-section of 0.0123 pb, which was expected.
Dependencia de la tasa de señalización de la masa del neutrino - ejercicio 2
Signal rate dependence on the neutrino mass - assignment 2
Para este ejercicio, modifiqué los valores de la masa de este modo:
For this exercise, I modified the mass values in this way:
Este proceso demoró mucho tiempo, alrededor de 50 minutos para cada valor de masa. Con los resultados obtenidos, creé un gráfico. En mi caso, lo hice con un compilador online de Matplotlib. No sé cómo usar Matplotlib, así que tuve que aprender un poco y no estoy seguro de haberlo hecho bien. El resultado fue el siguiente:
This process took a long time, about 50 minutes for each mass value. With the results obtained, I created a graph. In my case, I did it with an online Matplotlib compiler. I don't know how to use Matplotlib, so I had to learn a bit and I'm not sure I did it right. The result was as follows:
El gráfico no es igual al de la publicación, mi curva es más pronunciada, pero no llego a darme cuenta del porqué.
The graph is not the same as in the publication, my curve is steeper, but I can't figure out why.
Tasa de señal en el LHC run 3 - ejercicio final
Signal rate at LHC run 3 - final assignment
Finalmente, repetí el ejercicio, pero simulando el LHC run 3, en el cual la energía se incrementa a 13,600 GeV. Para ello, cambié los valores en la sección “Collider type and energy” de run_card.dat a 6,800 cada uno. El resultado fue el siguiente:
Finally, I repeated the exercise, but simulating LHC run 3, in which the energy is increased to 13,600 GeV. To do this, I changed the values in the "Collider type and energy" section of run_card.dat to 6,800 each. The result was as follows:
Los resultados son los que esperaba, sin muchas diferencias, ya que el incremento de la energía no es muy grande.
The results are what I expected, without much difference, since the increase in energy is not very large.
Edit 1.
Estos son los valores numéricos de las secciones que computé.
These are the numerical values of the cross sections I computed.
13 TeV
run_name | mass#9900012 | cross
run_02 | 5.000000e+01 | 3.571500e-03
run_03 | 2.500000e+02 | 1.486460e-02
run_04 | 5.000000e+02 | 1.612570e-02
run_05 | 1.000000e+03 | 1.236940e-02
run_06 | 2.500000e+03 | 4.945940e-03
run_07 | 5.000000e+03 | 1.700190e-03
run_08 | 7.500000e+03 | 8.291700e-04
run_09 | 1.000000e+04 | 4.824600e-04
run_10 | 1.500000e+04 | 2.222810e-04
run_11 | 2.000000e+04 | 1.257860e-04
13.6 TeV
run_name | mass#9900012 | cross
run_12 | 5.000000e+01 | 3.826500e-03
run_13 | 2.500000e+02 | 1.624760e-02
run_14 | 5.000000e+02 | 1.797650e-02
run_15 | 1.000000e+03 | 1.389010e-02
run_16 | 2.500000e+03 | 5.726200e-03
run_17 | 5.000000e+03 | 2.006680e-03
run_18 | 7.500000e+03 | 9.817200e-04
run_19 | 1.000000e+04 | 5.714330e-04
run_20 | 1.500000e+04 | 2.623340e-04
run_21 | 2.000000e+04 | 1.496460e-04
Edit 2.
Gracias a @travelingmercies, pude rehacer mis gráficos de modo que se parezcan más a los de la publicación de referencia.
Thanks to @travelingmercies, I was able to redo my graphics so that they more closely resemble those in the reference publication.
Original en español. Traducido con Deepl.
Todas las imágenes son capturas de pantallas tomadas en mi computadora.
Original in Spanish. Translated with Deepl.
All images are screenshots taken on my computer.
~~~ embed:1549411193348993024 twitter metadata:SGl2ZVRyZW5kaW5nfHxodHRwczovL3R3aXR0ZXIuY29tL0hpdmVUcmVuZGluZy9zdGF0dXMvMTU0OTQxMTE5MzM0ODk5MzAyNHw= ~~~
The rewards earned on this comment will go directly to the people( @lemouth, @hivetrending ) sharing the post on Twitter as long as they are registered with @poshtoken. Sign up at https://hiveposh.com.
good job on the report!
!1UP
Click this banner to join "The Cartel" discord server to know more.
thanks for your support!
oh just one ps : You can use " python --version" to check the version of your python ;) , sometimes we have more than one version of python installed in the linux so a ls wouldn't solve which one is being used
Yes, I figured there was a better way to do it, thank you very much! I'm writing it down for next time.
I am sure that you meant: amazing job! ^^
oh yeah ! it was amazing!
You have received a 1UP from @gwajnberg!
@stem-curator, @vyb-curator, @pob-curator, @neoxag-curator
And they will bring !PIZZA 🍕.
Learn more about our delegation service to earn daily rewards. Join the Cartel on Discord.
Congratulations @agreste! You have completed the following achievement on the Hive blockchain and have been rewarded with new badge(s):
Your next target is to reach 1250 replies.
You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word
STOP
PIZZA Holders sent $PIZZA tips in this post's comments:
@emic(1/5) tipped @agreste (x1)
curation-cartel tipped agreste (x1)
Please vote for pizza.witness!
Thanks for your contribution to the STEMsocial community. Feel free to join us on discord to get to know the rest of us!
Please consider delegating to the @stemsocial account (85% of the curation rewards are returned).
Thanks for including @stemsocial as a beneficiary, which gives you stronger support.
¡Muy interesante!
!PIZZA !LOLZ
¡Muchas gracias! Todavía estás a tiempo de unirte al proyecto.
Congratulations @agreste!
You raised your level and are now a Minnow!