From 0128789b9142fcfb1c8b467763dfddc82878d051 Mon Sep 17 00:00:00 2001 From: "Ryan@fsunuc" Date: Sun, 11 Dec 2022 00:53:52 -0500 Subject: [PATCH] added Sn Sp and Sa --- get_nuclear_data.py | 73 ++++++++++----------------------------------- simpleSim.html | 52 ++++++++++++++++++++++++++------ 2 files changed, 58 insertions(+), 67 deletions(-) diff --git a/get_nuclear_data.py b/get_nuclear_data.py index 9fb01c6..a5a7b98 100755 --- a/get_nuclear_data.py +++ b/get_nuclear_data.py @@ -19,57 +19,6 @@ def lc_read_csv(url): mp = 938.27208816; #MeV/c^2 mn = 939.56542052; -''' -haha = lc_read_csv(livechart + 'fields=ground_states&nuclides=all') -def FindZ(AZ): - query = livechart + "fields=ground_states&nuclides=" + AZ - temp = lc_read_csv(query); - try : - return temp['z'] - except : - return 'na' -def FindSym(Z): - try: - return (haha['symbol'][haha['z']==Z]).iloc[0] - except: - return 'na' -def Mass(A, Z): - try : - BEA = float(haha['binding'][haha['z']==Z][haha['n']==(A-Z)])/1000 - return (A-Z)*mn + Z*mp - A * BEA - except : - return -404 -def MassSym(AZ): - query = livechart + "fields=ground_states&nuclides=" + AZ - temp = lc_read_csv(query); - Z = temp['z'] - N = temp['n'] - try : - return Z*mp + N*mn - (Z+N)*temp['binding']/1000 - except: - return -404 -def Sp(A,Z,a,z): - mA = Mass(A,Z) - mB = Mass(A-a, Z-z) - if z == 0 : - mb = a * mn - elif a == z : - mb = a * mp - else : - mb = Mass(a,z) - if (mB == -404 or mb == -404 or mA == -404) : - return -404 - else: - return mB + mb - mA - -def Ex(AZ, maxMeV): - query = livechart + "fields=levels&nuclides=" + AZ - tempEx = lc_read_csv(query); - try : - return tempEx[['energy', 'jp']][tempEx['energy']<= maxMeV * 1000] - except: - return -404 -''' #=================================================== import cgi, cgitb @@ -95,7 +44,7 @@ try : N = temp['n'][0] mass = Z*mp + N*mn - (Z+N)*temp['binding']/1000 halfLife = temp['half_life_sec'][0] - + print("
A : %3d, Z : %3d, N : %3d" % (Z+N, Z, N)) print("
Jpi : %3s" % (temp['jp'][0])) if halfLife != " " : @@ -103,10 +52,7 @@ try : print("
Mass : %.4f MeV" % (mass)) print("
Binding : %.4f MeV/A" % (temp['binding']/1000)) print("
Binding : %.4f MeV" % (temp['binding']/1000*(Z+N))) - #print("
Sn : %8.3f MeV, Sp : %8.3f MeV" % (Sp(Z+N,Z, 1, 0), Sp(Z+N,Z, 1, 1))) - #print("
S2n : %8.3f MeV, S2p : %8.3f MeV, Sd : %8.3f MeV" % (Sp(Z+N,Z, 2, 0), Sp(Z+N,Z, 2, 2), Sp(Z+N, Z, 2, 1))) - #print("
S3n : %8.3f MeV, S3p : %8.3f MeV, St : %8.3f MeV, S(3He) : %8.3f MeV" % (Sp(Z+N,Z, 3, 0), Sp(Z+N,Z, 3, 3), Sp(Z+N, Z, 3, 1), Sp(Z+N, Z, 3, 2))) - #print("
S4n : %8.3f MeV, S4p : %8.3f MeV, Sa : %8.3f MeV" % (Sp(Z+N,Z, 4, 0), Sp(Z+N,Z, 4, 4), Sp(Z+N, Z, 4, 2))) + #print(" magnetic dipole : " + temp['magnetic_dipole'][0] + " mu.N") #print("electric quadruple : " + temp['electric_quadrupole'][0] + " barn") #if halfLife > 0 : @@ -117,6 +63,17 @@ try : except : print("
No such Isotopes.") + +import os, subprocess +os.chdir(r"files") + +result=subprocess.run(['../Cleopatra/Isotope', AZ], stdout=subprocess.PIPE).stdout.decode('utf-8') +p1 = result.find('S1n:') +print("
" + result[p1:p1+13]) +p1 = result.find('S1p') +print("
" + result[p1:p1+13]) +p1 = result.find('S(4He)') +print("
" + result[p1:p1+16]) print("
=============================") if float(maxEx) > 0 : @@ -136,8 +93,8 @@ if float(maxEx) > 0 : print("") except: print("
cannot find Ex data") - - + + print("") print("") diff --git a/simpleSim.html b/simpleSim.html index 24e02b2..660fefb 100644 --- a/simpleSim.html +++ b/simpleSim.html @@ -29,7 +29,7 @@ Z: - J-pi + Jπ Ex: @@ -76,16 +76,12 @@ -

DWBA and Ex List:

- - Cal. DWBA +

DWBA and Ex List:

-

- - - + + @@ -101,6 +97,7 @@
Ex [MeV] J-pi Ex [MeV] Jπ Orbital

+ Cal. DWBA @@ -160,13 +157,47 @@ +

Simple kinematic Calculations (Experimental..)

+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Ex[MeV]θCM[deg]Eb[MeV]Zb0[mm]Zb[mm]2*ρb[mm]θLabbM[deg]Tb[ns]EB[MeV]θLabB[deg]ZB0/2[mm]2*ρB[mm]
0.00