#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])