		Files in micromegas_6.1

README     instructions for beginners
Makefile 	 instructions for make/gmake  to compile the kernel of the package
newProject	to create a new model directory substructure
calc        on-line calculator. Examples:   ./calc 2+2 ; /calc sin[0.1]*cos[1.9]
clean       auxiliary file for 'make clean'
history   contains a description of changes in recent versions
man/		 contains the manual (in .pdf and .tex) which describes the code


!Directories that contain all files to compute DM observables in different DM models, below we present the files and directories of the  IDM model, other models contain similar files.

IDM/              Inert Doublet Model.
       Makefile    instruction for 'make' to compile main.c, main.cpp
       main.c      sample main file to compute DM observables
       dataX.par	sample files with input parameters
       lib/		auxiliary files to compute additional observables in a given model
       work/
           Makefile  to compile the library work/work_aux.a
	         calchep   to run CalcHEP interactive session
           lanhep/ 	contains the source code to generate the model in lanhep format
	         models/   contains 5 files to define the model in CalcHEP format
              vars1.mdl  - independent variables of the model
              func1.mdl  - constrained parameters of the model
              prtcls1.mdl - list of particles
              lgrng1.mdl  - Feynman rules
              extlib1.mdl - external libraries
	   				results/  for C-codes of matrix elements
	   				so_generated/  storage of matrix elements generated by CalcHEP
	   				tmp/      auxiliary directory for CalcHEP session
MSSM/             MSSM
NMSSM/            Next-to-Minimal SUSY Model
LHM/              Little Higgs Model
Z3IDM/            Inert doublet model with Z3 symmetry
Z4IDSM/           Inert doublet + singlet model with Z4 symmetry
Z5M/              Two singlets model with Z5 symmetry
Z7M/              Three singlets model with Z7 symmetry
SingletDM/        Real singlet DM model
ZpPortal/         Z' portal model with fermion DM
LLL_scalar        Scalar DM and long-lived singlet lepton
RDM/              Scalar Leptoquark and two singlet fermions
STFM/             Singlet-triplet fermionic model
mdlIndep/         contain files to compute various observables in a model independent way

   Directories that contain  micrOMEGAs' internal code

include/
                    Header files for routines of   micrOMEGAs
   micromegas.h            main routines
   micromegas_aux.h        auxiliary routines
   ic22.h                  special header for routines of  Ice Cube analysis
   micromegas_f.h          C-headers for Fortran version of micrOMEGAs routines
   micromegas.fh           declaration of Fortran functions
   smodels_parameters.ini  Parameters needed for SModels
   modelMakefile           Universal makefile for all  micrOMEGAs model sections
   microPath.h            Path to micrOMEGAs code. Generated automatically upon installation
                   Files  included in main.c to realize interface with external packages. C and Fortran versions
   hBandS.inc  / hBandS.inc_f   for HiggsBounds and HiggsSignals
   Lilith.inc  / Lilith.inc_f   for Lilith
   SMODELS.inc / SMODELS.inc_f   for SMODELS

sources/
      new.tar        contains all files that will be placed in the directory of a new model upon using the command  ./newProject
		C-code of micrOMEGAs functions
      Collider  limits
        limits.c     Constraints from Z invisible width and production of neutralino/chargino at LEP2
        Zprimelim.c  Constraints on Z' from the dijet and dilepton channels at LHC

      Interface to external packages to obtain collider limits
         hbBlock.c   for HiggsBounds and HiggsSignal
         smodels.c   for SMODELS
         LilithMO.c  for Lilith
      	 superIso.c  for superISO
         SMhdecay.c  tables of Higgs width and branching ratios from HDECAY
         pythonversion.c  checks version of Python


      Calculation of collider signals
         cs22.c    	cross sections for 2->2 processes in pp, ppbar and e+e-
         lhapdf.c  	interface with LHAPDF routines.
         improveCS.c     code which is linked by default unless the user writes improved cross sections for DM annihilation for example to take into account higher order corrections
         pdt2.c       interface with CalcHEP routines for structure functions.

      Parameters of micromegas
         common.c      list of global parameters
         var_service.c functions to define and access numerical values of free parameters

      Direct detection
         directDet.c   computes the direct detection rate for DM scattering on nucleons and nuclei
         DDvelocity.c  contains DM velocity distributions (Maxwell and SHM++)
         DDexclusion.c to determine the 90%CL exclusion from recent experiments
         DDspinDep.c   Spin-dependent form factors
         maxGap.c      C-Fortran interfae for maxGap package disposed in Packages
      Indirect detection
         spectra.c    calculation of spectra of SM stable particles from annihilation of a pair of
                      DM particles. When DM annihilates into BSM particles the resulting spectra are
                      obtained after taking into account their branching ratio into SM particles.
         wPolar.c     for generation of matrix elements with polarized   W/Z bosons.

         propagate.c  setting the halo profile and computing the propagation of charged particles in the galaxy

      Neutrino signal
         neutrino.c    main routines to calculate neutrino signal.
         ic22.c        sets limits on DM annihilation in the Sun from the neutrino flux observed in
                       IceCube22

      Calculation of relic density
         tdUniverse.c   functions to set effective number of degrees of freedom (heff and geff)
      		        and to compute the Hubble parameter H(T)
         oddPrtcls.c    generation of list of odd particles and selection of lightest and next-to-lightest odd particles
         omega.c        calculation of relic density in freeze-out scenario
         vsigma.c       calculation of annihilation rate of pairs of DM particles
         22_par.c       cross sections for 2->2 annihilation of SM particles into DM relevant for freeze-in
         freezein.c     calculation of relic density in freeze-in scenario
         all_22_ploc.c  defines the list of all 2->2 processes  involving two  DM and two SM particles
         Sommerfeld.c   calculation of Sommerfeld enhancement

      Numerical tools
         tools.c        Bessel functions, Runge-Kutta, Interpolation of functions.
         stiff.c        Solution of stiff equations.
         lineq.c        Solution of linear equations

      Graphical service
        displayPlot.c

      Files which support C-Fortran interface.
      In many cases the  Fortran interface code in the same file as the original C-code.
      For some  functions the  interface  code is stored in
         fortran.c
         f2c2f.c           tools to transform Fortram text strings to C strings
      Other functions use  special Fortran interface code:
         directDetFort.c  for directDet.c
         spectraFort.c    for spectra.c
         decayFort.c      for decay routines in CalcHEP package

      Other routines
         dynamic_cs.c   information about matrix element code stored in dynamic library
         higgsmass.c    printing  masses and widths of Higgs particles
         kin23.c        calculation of 2->3 and 2->4 cross sections

      Not used
         Twidth22.c
         units.c
Data/
         hgEff/       contains tables with the temperature dependence for the effective number of
                      degrees of freedom in the early Universe.
         data_nu/     contains tabulated spectra of neutrinos originating from
                       DM annihilation in the center of the Sun and the Earth.

       Tabulated spectra of SM particles from DM pair annihilation in vacuum.
         spectPythia6/    arXiv:1004.1092
         woUncertainty/   arXiv:2202.11546,
				 wUncertainty/
         PPPC/            arXiv:1009.0224,  arXiv:1012.4515
				 CosmiXs/ arXiv:2312.01153

Packages/       external packages included in micrOMEGAs

    README
    CPsuperH2.3/      	        Code used for computing the spectrum and some constraints in the CPVMSSM
    LanHEP/			To generate model files for new models in CalcHEP format
    Lilith-2-2.1db19.09patch1/  To check the properties of the Higgs
    LoopTools-2.12-v0/          To compute loop-induced processes
    NMSSMTools_6.0.2/	        Code used for computing the spectrum and some constraints in the NMSSM
    SuSpect_2.41/		Code used for computing spectrum in the MSSM
    ID_MLFermiDwarfs/		Code used to derive limits from Fermi-LAT data on Dwarf Spheroidal Galaxies
    maxGap/                     directory which contains the Fortran code of the CernLib routine maxGap
    lf2c                        The library of auxillary funcnions needed to support f2c convertor 
    SMODELS.makef               instructions for 'make' to download the code SMODELS to check LHC constraints on new  particles
    SPHENO.makef                instructions for 'make' to download the code SPHENO to compute the spectrum and some constraints in the MSSM
    SSUSY.makef                 instructions for 'make' to download the code SoftSUSY to compute the spectrum and some constraints in the MSSM
    SUPERISO.makef              instructions for 'make' to download  the code superISO to compute flavour observables
    HBOUNDS.makef               instructions for 'make' to download  the code HiggsBounds to check collider constraints on new Higgs particles
    HSIGNALS.makef              instructions for 'make' to download  the code HiggsSignals to check collider constraints on the Higgs

CalcHEP_src/                    Source files for CalcHEP as described in CalcHEP_src/fileMap.txt
