Chapter 8: Particle Physics

Example 8.5.1, Page 360

In [1]:
#Variable declaration
# Proton and antiproton annihilate to produced three pions
E_p = 938; # Energy of proton, MeV
E_pi = 139.5; # Energy of pions, MeV
E_pi_0 = 134.9; # Energy of pi_0_ion, MeV

#Calculations
E_KE = (2*E_p-(2*E_pi+E_pi_0))/3; # The average kinetic energy of each pions, MeV

#Result
print "The average kinetic energy of each pions : %5.1f MeV"%E_KE
The average kinetic energy of each pions : 487.4 MeV

Example 8.5.2, Page 360

In [3]:
#Variable declaration
# Here r_1 and r_2 are two decay rates are given
# Declare the cell
R1 = [[0,0],[0,0]]
R1[0][0] = 'r_1'
R1[0][1] = 'r_2'

#Calculations&Results
print "The inherent uncertainity in mass of particle = h(%s + %s) "%(R1[0][0], R1[0][1]) 
The inherent uncertainity in mass of particle = h(r_1 + r_2) 

Example 8.7.3, Page 362

In [2]:
#Variable declaration
# Declare cell for the given reaction
R1 = [[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0]]
# Enter data for the cell
R1[0][0] = 'p'
R1[0][1] = 1 
R1[0][2] = 1
R1[0][3] = 0
R1[0][4] = 1./2
R1[1][0] = 'K_+'
R1[1][1] = 1
R1[1][2] = 0
R1[1][3] = 1
R1[1][4] = 1./2
R1[2][0] = 'S_+'
R1[2][1] = 1
R1[2][2] = 1
R1[2][3] = -1
R1[2][4] = 1
R1[3][0] = 'pi_-'
R1[3][1] = -1
R1[3][2] = 0
R1[3][3] = 0
R1[3][4] = 1
R1[4][0] = 'S_0'
R1[4][1] = 0
R1[4][2] = 1
R1[4][3] = -1
R1[4][4] = 0
R1[5][0] = 'p_-'
R1[5][1] = -1
R1[5][2] = -1
R1[5][3] = 0
R1[5][4] = 1./2
R1[6][0] = 'n_0'
R1[6][1] = 0
R1[6][2] = 0
R1[6][3] = 0
R1[6][4] = 0


#Calculations&Results
def check_Isotopic_no(Ir_sum,Ip_sum):
    if Ir_sum == Ip_sum:
        f = 1;
    else: 
        f = 0;
    return f


# Declare a function returning equality status of proton number
def check_strangeness(sr_sum,sp_sum):
    if sr_sum == sp_sum:
        f = 1;
    else:
        f = 0;
    return f
        
def check_charge(cr_sum,cp_sum):
    if cr_sum == cp_sum:
        f = 1;
    else:
        f = 0;
    return f
        
# Declare a function returning equality status of lepton number
          
#Reaction-I
print "\n\nReaction-I:\n\n"
Ir_sum = R1[0][4]+R1[0][4];
Ip_sum = R1[1][4]+R1[2][4];
if (check_Isotopic_no(Ir_sum,Ip_sum) == 0):
    print "The Reaction\n"
    print "\t%s + %s --> %s + %s \nis  not possible"%(R1[0][0],R1[0][0],R1[1][0],R1[2][0])

#Reaction-II
print "\n\nReaction-II"
sr_sum = R1[0][3]+R1[3][3];
sp_sum = R1[4][3]+R1[6][3];
if (check_strangeness(sr_sum,sp_sum)== 0):
    print "\nThe Reaction\n"
    print "\t%s + %s --> %s + %s \nis not possible"%(R1[0][0],R1[3][0],R1[4][0],R1[6][0])

#Reaction-III
print "\n\nReaction-III:\n\n"
cr_sum = R1[0][1]+R1[0][1];
cp_sum = R1[0][1]+R1[0][1]+R1[0][1]+R1[5][1]; 
if (check_charge(cr_sum,cp_sum) == 1):
    print "The Reaction\n"
    print "\t%s + %s --> %s + %s + %s \nis possible"%(R1[0][0],R1[0][0],R1[0][0],R1[0][0],R1[5][0]) 
       

Reaction-I:


The Reaction

	p + p --> K_+ + S_+ 
is  not possible


Reaction-II

The Reaction

	p + pi_- --> S_0 + n_0 
is not possible


Reaction-III:


The Reaction

	p + p --> p + p + p_- 
is possible