~maddm/maddm/question_696371

« back to all changes in this revision

Viewing changes to example_id.py

  • Committer: Mihailo Backovic
  • Date: 2016-03-23 13:58:45 UTC
  • Revision ID: mbackovic@gmail.com-20160323135845-mwczlbvipu0j6rnz
added example_id.py

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#! /usr/bin/env python
 
2
from init import *
 
3
from darkmatter import *
 
4
from numpy import loadtxt
 
5
 
 
6
#Create the relic density object.
 
7
dm=darkmatter()
 
8
#Initialize it from the rsxSM model in the MadGraph model folder,
 
9
#and store all the results in the Projects/rsxSM subfolder.
 
10
dm.init_from_model('DMsimp_UFO', 'DMsimp_loopinduced_aa')
 
11
 
 
12
 
 
13
# Determine the dark matter candidate...
 
14
dm.FindDMCandidate(prompts=False, dm_candidate='xd')
 
15
 
 
16
#...and all the coannihilation partners with the mass splitting
 
17
# defined by |mX0 - mX1| / mX0 < coann_eps.
 
18
#dm.FindCoannParticles(prompts = False, coann_eps = 0.1)
 
19
 
 
20
#Get the project name with the set of DM particles and see
 
21
#if it already exists.
 
22
dm.GetProjectName()
 
23
 
 
24
dm.GenerateDiagramsIDLoopIndiced(finalstate='g g', excluded_particles='')
 
25
 
 
26
#Generate all 2-2 diagrams DM annihilation diagrams for relic density.
 
27
#dm.GenerateDiagramsRelicDensity()
 
28
 
 
29
#Generate the diagrams for direct detection.
 
30
#print "Generating direct detection diagrams..."
 
31
#dm.GenerateDiagramsDirDetect()
 
32
 
 
33
#Switch to turn on directional detection and recoil rate calculations
 
34
#dm._do_directional_detection = True
 
35
 
 
36
# print "Relic density? -"+str(dm._do_relic_density)
 
37
# print "Direct detection? - "+str(dm._do_direct_detection)
 
38
# print "Recoil & directional rates? -"+str(dm._do_directional_detection)
 
39
#
 
40
# #Print some dark matter properties in the mean time.
 
41
# print "------ Testing the darkmatter object properties ------"
 
42
# print "Calc. Omega: "+str(dm._do_relic_density)
 
43
# print "Calc. DD: "+str(dm._do_direct_detection)
 
44
# print "DM name: "+dm._dm_particles[0].get('name')
 
45
# print "DM spin: "+str(dm._dm_particles[0].get('spin'))
 
46
# print "DM mass var: "+dm._dm_particles[0].get('mass')
 
47
# print "Mass: "+ str(dm.GetMass(dm._dm_particles[0].get('pdg_code')))+"\n"
 
48
# print "Project: "+dm._projectname
 
49
#
 
50
# #Output the FORTRAN version of the matrix elements
 
51
# #and compile the numerical code.
 
52
# dm.CreateNumericalSession()
 
53
#
 
54
# #Calculate relic density, direct detection ...
 
55
# [omegah2, x_freezeout, wimp_mass, sigmav_xf, sigmaN_SI_proton, sigmaN_SI_neutron, \
 
56
#                     sigmaN_SD_proton, sigmaN_SD_neutron, Nevents, sm_switch]\
 
57
#                       = dm.Calculate()
 
58
#
 
59
# #See if the model point is exluded by relic density or LUX
 
60
# LUX_data='./ExpData/LUX_data.dat'
 
61
# LUX_x, LUX_y = loadtxt(LUX_data, unpack=True, usecols=[0,1])
 
62
# excluded = dm.is_excluded(omega_min = 0., omega_max = 0.1, si_limit_x=LUX_x, si_limit_y=LUX_y)
 
63
#
 
64
# print " Done! \n"
 
65
# print "\n\n       RESULTS: \n\n"
 
66
# print "NOTE: If a value -1 appears, it means MadDM did not calculate the quantity."
 
67
# print "----------------------------------------------"
 
68
# print "Relic Density: %.2e" % omegah2
 
69
# print "x_f: %.2f" % x_freezeout
 
70
# print "sigmav(xf): %.2e GeV^-2    =    %.2e pb" % (sigmav_xf, sigmav_xf*GeV2pb)
 
71
# print "----------------------------------------------"
 
72
# print "Nucleon cross sections: \n"
 
73
# print "sigma_SI(proton): %.2e GeV^-2    =    %.2e pb" % (sigmaN_SI_proton, sigmaN_SI_proton*GeV2pb)
 
74
# print "sigma_SI(neutron): %.2e GeV^-2   =     %.2e pb"% (sigmaN_SI_neutron, sigmaN_SI_neutron*GeV2pb)
 
75
# print "sigma_SD(proton): %.2e GeV^-2    =    %.2e pb" %(sigmaN_SD_proton, sigmaN_SD_proton*GeV2pb)
 
76
# print "sigma_SD(neutron): %.2e GeV^-2    =    %.2e pb"% (sigmaN_SD_neutron, sigmaN_SD_neutron*GeV2pb)
 
77
# print "----------------------------------------------"
 
78
# if excluded:
 
79
#       print "       The parameter point is "+bcolors.FAIL+"Excluded."+bcolors.ENDC
 
80
# else:
 
81
#       print "       The parameter point is "+bcolors.OKGREEN+"Allowed."+bcolors.ENDC
 
82
# print"-----------------------------------------------"
 
83
# print "All results are written in the output directory of the project!"