|
|
---
|
|
|
title: MicrOmegas
|
|
|
permalink: /MicrOmegas/
|
|
|
---
|
|
|
|
|
|
About MicrOmegas
|
|
|
----------------
|
|
|
|
|
|
MicrOmegas is a tool which not only calculates the relic density for one or more dark matter candidates, but it also gives cross sections for direct and indirect DM searches. To enable these calculations, MicrOmegas needs in general three inputs
|
|
|
|
|
|
1. The model files to implement a new model
|
|
|
2. A steering file to coordinate the different calculations
|
|
|
3. Numerical values for all parameters
|
|
|
|
|
|
Implementing new models in MicrOmegas
|
|
|
-------------------------------------
|
|
|
|
|
|
The calculation of the cross section and all necessary decay widths are done by CalcHep which comes together with MicrOmegas. Thus, a new model in MicrOmegasis implemented by providing the corresponding CalcHepmodel files. That means, one can use the SARAH output for CalcHep to work with MicrOmegas:
|
|
|
|
|
|
### Mass spectrum
|
|
|
|
|
|
By using `SLHAinput -> True` the model files are written in a way that CalcHep respectively MicrOmegas expect all input parameters to be provided in a spectrum file which is called `SPheno.spc.BLSSM`. CalcHep and MicrOmegas are going to read this file and extract all important information using the `SLHA+` functionality from it. With the other options MicrOmegas/CalcHep expect either all masses and rotation matrices given in the file `vars.mdl` (`SLHAinput -> False, CalculateMasses -> False`), or it expects all fundamental parameters (soft-terms, couplings and VEVs) as input and diagonalizes the mass matrices internally (`SLHAinput -> False, CalculateMasses -> True`).
|
|
|
|
|
|
### Dark Matter candidates
|
|
|
|
|
|
One can work either with one or two dark matter candidates in MicrOmegas. The first DM candidate is the lightest particle of all states having a particular charge under a discrete symmetry. To define the symmetry and the charge, the option `DMcandidate1->Value` is used. There are two possibilities for `Value`:
|
|
|
|
|
|
1. when set to `Default`, the DM candidate is the lightest odd particle odd under the first*Z*<sub>2</sub> defined as global symmetry\#
|
|
|
2. for any other choice, one can give first the name of the global symmetry and then the quantum number with respect to that symmetry `GlobalSymmetry == Charge`.
|
|
|
|
|
|
#### Examples
|
|
|
|
|
|
- **One dark matter candidate**
|
|
|
|
|
|
<!-- -->
|
|
|
|
|
|
MakeCHep[DMcandidate1 -> RParity == -1];
|
|
|
|
|
|
is equivalent to
|
|
|
|
|
|
MakeCHep[]
|
|
|
|
|
|
If `RParity` is the first or only discrete symmetry.
|
|
|
|
|
|
- **Two dark matter candidates**
|
|
|
|
|
|
<!-- -->
|
|
|
|
|
|
MakeCHep[DMcandidate1 -> RParity == -1, DMcandidate2 -> ExtraZ2 == -1];
|
|
|
|
|
|
would work for a model with two*Z*<sub>2</sub> symmetries called `RParity` and `ExtraZ2`.
|
|
|
|
|
|
### Output and compilation
|
|
|
|
|
|
When SARAHis finished with `MakeCHep`, the CalcHep model files are located in the directory
|
|
|
|
|
|
$PATH/SARAH/Output/B-L-SSM/EWSB/CHep/
|
|
|
|
|
|
To implement the model in MicrOmegas, a new project has to be created and the files have to be copied in the working directory of this project:
|
|
|
|
|
|
$ cd $PATH/MICROMEGAS
|
|
|
$ ./newProject BLSSM
|
|
|
$ cd BLSSM
|
|
|
$ cp $PATH/SARAH/Output/B-L-SSM/EWSB/CHep/* work/models
|
|
|
|
|
|
Setting up the DM calculations
|
|
|
------------------------------
|
|
|
|
|
|
To use the model with MicrOmegas a steering or ’main’ file has to be provided either in `Fortran`or `C` language, and must be compiled. Examples for these files are delivered with MicrOmegasand called `main.F` and `main.c`. SARAHwrites also two examples which can be used for the following calculations:
|
|
|
|
|
|
- `CalcOmega.cpp`: this file calculates only the DM relic density*Ω**h*<sup>2</sup> and prints the result at the screen and into a file called `omg.out`
|
|
|
- `CalcOmega_with_DDetection.cpp`: this file calculates the DM relic density*Ω**h*<sup>2</sup> and in addition some direct detection rates:
|
|
|
|
|
|
<!-- -->
|
|
|
|
|
|
- Relic density*Ω**h*<sup>2</sup>
|
|
|
- Spin independent cross section with proton in pb
|
|
|
- Spin dependent cross section with proton in pb
|
|
|
- Spin independent cross section with neutron in pb
|
|
|
- Spin dependent cross section with neutron in pb
|
|
|
- Recoil at<sup>73</sup>Ge: number of events in 10 - 50 keV region
|
|
|
- Recoil at<sup>131</sup>Xe: number of events in 10 - 50 keV region
|
|
|
- Recoil at<sup>23</sup>Na: number of events in 10 - 50 keV region
|
|
|
- Recoil at<sup>127</sup>I: number of events in 10 - 50 keV region
|
|
|
|
|
|
There are even more calculations MicrOmegas can do like indirect detection rates. Those can be added as well to the main file provided by SARAH or the user can write an own file. For this purpose, it might be helpful to take a look at `main.F` or `main.c` which show the different options to turn on specific calculations and outputs.
|
|
|
|
|
|
The steering files written by SARAH were copied together with all model files into the working directory of the current project. One can move it to the main project directory and compile it, e.g.
|
|
|
|
|
|
$ mv work/models/CalcOmega_with_DDetection.cpp .
|
|
|
$ make main=CalcOmega_with_DDetection.cpp
|
|
|
|
|
|
A new binary `CalcOmega_with_DDetection` is now available. The only missing piece are the input parameters.
|
|
|
|
|
|
Running MicrOmegas with SPheno spectrum files
|
|
|
---------------------------------------------
|
|
|
|
|
|
Providing the numerical parameters is pretty easy because MicrOmegas/CalcHepcan read the SPhenospectrum file. However, the user must make sure that no complex rotation matrices show up in the spectrum file: in the case of Majorana matrices and no CP violation, there are two equivalent outputs:
|
|
|
|
|
|
1. all Majorana masses are positive, but some entries of the corresponding rotation matrices are complex
|
|
|
2. all mixing matrices are real, but some masses are negative.
|
|
|
|
|
|
CalcHep can just handle the second case with real matrices. Hence, one has to use the flag
|
|
|
|
|
|
[style=file,numbers=none,title=\hspace{12cm}LesHouches.in.BLSSM]
|
|
|
Block SPhenoInput # SPheno specific input
|
|
|
...
|
|
|
50 0 # Majorana phases: use only positive masses
|
|
|
|
|
|
to get the spectrum according to that convention. Afterwards, the spectrum file just has to be moved to the same directory as `CalcOmega_with_DDetection`. In order to do that one has copy it there and start the calculation:
|
|
|
|
|
|
$ cp $PATH/SPHENO/SPheno.spc.BLSSM .
|
|
|
$ ./CalcOmega_with_DDetection
|
|
|
|
|
|
The first run can take some time, even up to several hours depending on the computer power: MicrOmegas has to compile all necessary annihilation channels of the DM candidate for that particular parameter point. All further evaluations of similar points are done in a second or less. However, as soon as new channels are needed, MicrOmegas has to compile new amplitudes and the computation slows down extremely again. This can happen for instance, if the DM candidate changes or if the second lightest state becomes close in mass and co-annihilation has to be included.
|
|
|
|
|
|
See also
|
|
|
-------- |
|
|
\ No newline at end of file |