diff --git a/get_nuclear_data.py b/get_nuclear_data.py index a5a7b98..895caaa 100755 --- a/get_nuclear_data.py +++ b/get_nuclear_data.py @@ -35,7 +35,7 @@ temp = lc_read_csv(query); print( "Content-type:text/html\r\n\r\n") print("") -print("") +print("") print("") print("
========================= " + AZ ) @@ -67,12 +67,12 @@ except : 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)') +result=subprocess.run(['../Cleopatra/IsotopeShort', AZ], stdout=subprocess.PIPE).stdout.decode('utf-8') +p1 = result.find('Sn:') +print("
" + result[p1:p1+16]) +p1 = result.find('Sp') +print("
" + result[p1:p1+16]) +p1 = result.find('Sa') print("
" + result[p1:p1+16]) print("
=============================") diff --git a/heliosmatics.html b/heliosmatics.html new file mode 100644 index 0000000..ca0552d --- /dev/null +++ b/heliosmatics.html @@ -0,0 +1,451 @@ + + + +Heliosmatics + + + + + + + +

HELIOSmatics (experimental...)

+

24F(d,p)25F@10MeV/u

+ + + + + + +
+ HELIOS + + SOLARIS + + ISS +
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Beam (A): Beam Ex:MeV
Target (a): Beam Energy:MeV/u
Light (b): min Beam Energy:-1.107MeV/u
Heavy (B):25F Q-value:2.057MeV
B-field:T
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Ex [MeV] θcm[deg]Eb[MeV]Zb0[mm]Zb[mm]2*ρb[mm]θLabb[deg]Tb[ns]EB[MeV]θLabB[deg]ZB0/2[mm]2*ρB[mm]
+ + + +
+ +

+

+ + + + + + + + + + + diff --git a/index.html b/index.html index 5e9bcae..46b390e 100644 --- a/index.html +++ b/index.html @@ -50,6 +50,8 @@ margin-left : 0; } article { + float: left; + margin-left : 0px; width: 100%; height: 100vh; margin-left : 0; @@ -157,6 +159,10 @@   Misc. Calulations : Click Here. + + HELIOSmatics : + Click Here. +

diff --git a/massProxy.py b/massProxy.py new file mode 100755 index 0000000..3fa6750 --- /dev/null +++ b/massProxy.py @@ -0,0 +1,58 @@ +#!/usr/bin/python3 + +import cgi, cgitb + +form = cgi.FieldStorage() + +AZ = form.getvalue('AZ') +A=form.getvalue('A') +Z=form.getvalue('Z') + +import os, subprocess +os.chdir(r"files") + +result = ""; + +if 'AZ' in form: + result=subprocess.run(['../Cleopatra/IsotopeShort', AZ], stdout=subprocess.PIPE).stdout.decode('utf-8') + +if 'A' in form: + result=subprocess.run(['../Cleopatra/IsotopeShort', A, Z], stdout=subprocess.PIPE).stdout.decode('utf-8') + + + +print( "Content-type:text/html\r\n\r\n") +#print("") +#print("") + +if result != "": + + pA = result.find('A:') + pZ = result.find('Z:') + p1 = result.find('Mass:') + p2 = result.find('Name:') + p2a = result.find('|') + print(int(result[pA+2:pA+5]), ",", int(result[pZ+2:pZ+5]), ",", float(result[p1+5:p1+13+5]), ",", result[p2+5: p2a]) + +else: + print("error"); +#print("
" + result[p1:p1+13+5]) +#p1 = result.find('Sn:') +#print("
" + result[p1:p1+16]) +#p1 = result.find('Sp') +#print("
" + result[p1:p1+16]) +#p1 = result.find('Sa') +#print("
" + result[p1:p1+16]) +#print("
=============================") + + +#print("") +#print("") + + + +#import plotly.express as px + +#fig = px.scatter(x=range(10), y = range(10)) +#fig.write_html("test.html") + diff --git a/simpleInput.py b/simpleInput.py index 33a83ca..54b2730 100755 --- a/simpleInput.py +++ b/simpleInput.py @@ -4,25 +4,34 @@ import cgi, cgitb import subprocess -def findName(A, Z): - result = subprocess.run(["../Cleopatra/Isotope", str(A), str(Z)], stdout=subprocess.PIPE).stdout.decode('utf-8') - ppp1 = result.find('31m') - ppp2 = result.find('[m') - return result[ppp1+3:ppp2-1] +def FindName(A, Z): + result = subprocess.run(["../Cleopatra/IsotopeShort", str(A), str(Z)], stdout=subprocess.PIPE).stdout.decode('utf-8') + ppp1 = result.find('Name:') + ppp2 = result.find('|') + return result[ppp1+5:ppp2] + +def FindAZ(AZ): + result = subprocess.run(["../Cleopatra/IsotopeShort", AZ], stdout=subprocess.PIPE).stdout.decode('utf-8') + pA = result.find('A:') + pZ = result.find('Z:') + return [int(result[pA+2:pA+5]), int(result[pZ+2:pZ+5])] form = cgi.FieldStorage() -beam_A = form.getvalue('beam_A') -beam_Z = form.getvalue('beam_Z') +beam_AZ = form.getvalue('beam_AZ') +#beam_A = form.getvalue('beam_A') +#beam_Z = form.getvalue('beam_Z') beam_Jpi = form.getvalue('beam_Jpi') beam_Ex = form.getvalue('beam_Ex') -target_A = form.getvalue('target_A') -target_Z = form.getvalue('target_Z') +target_AZ = form.getvalue('target_AZ') +#target_A = form.getvalue('target_A') +#target_Z = form.getvalue('target_Z') -lRecoil_A = form.getvalue('lRecoil_A') -lRecoil_Z = form.getvalue('lRecoil_Z') +lRecoil_AZ = form.getvalue('lRecoil_AZ') +#lRecoil_A = form.getvalue('lRecoil_A') +#lRecoil_Z = form.getvalue('lRecoil_Z') KEA = form.getvalue('KEA') BField = form.getvalue('BField') @@ -51,15 +60,19 @@ gate = form.getvalue('gate') os.chdir(r"files") #================== write reactionConfig.txt +beam = FindAZ(beam_AZ) +target = FindAZ(target_AZ) +lRecoil = FindAZ(lRecoil_AZ) + fn1 = "sim_reactionConfig.txt" f = open(fn1, "w") -f.write("%s //beam_A\n" % beam_A) -f.write("%s //beam_Z\n" % beam_Z) -f.write("%s //target_A\n" % target_A) -f.write("%s //target_Z\n" % target_Z) -f.write("%s //recoil_light_A\n" % lRecoil_A) -f.write("%s //recoil_light_Z\n" % lRecoil_Z) +f.write("%s //beam_A\n" % beam[0]) +f.write("%s //beam_Z\n" % beam[1]) +f.write("%s //target_A\n" % target[0]) +f.write("%s //target_Z\n" % target[1]) +f.write("%s //recoil_light_A\n" % lRecoil[0]) +f.write("%s //recoil_light_Z\n" % lRecoil[1]) f.write("%.3f //beam_energy_in_MeV/u\n" % float(KEA)) f.write("0.000 //beam_energy_sigma_in_MeV/u\n") f.write("0.000 //beam_angle_in_mrad\n") @@ -124,6 +137,7 @@ f.close() #================== if DWBA, write DWBA.txt, else write Ex.txt fn4 = "sim_DWBA.txt" +''' beamName="" hRecoil_A = int(beam_A) + int(target_A) - int(lRecoil_A) hRecoil_Z = int(beam_Z) + int(target_Z) - int(lRecoil_Z) @@ -158,27 +172,25 @@ if lRecoil_A == "3" and lRecoil_Z == "2": lRecoilName="3He" if lRecoil_A == "4" and lRecoil_Z == "2": lRecoilName="a" +''' + +hRecoil = [ beam[0] + target[0] - lRecoil[0], beam[1] + target[1] - lRecoil[1] ] +hRecoil_AZ = FindName(hRecoil[0], hRecoil[1]); if isDWBA : - #===== check if the reaction DWBA support - if targetName=="" or lRecoilName=="" : - isDWBA = False - else: - #===== find the symbol of Beam - beamName=findName(beam_A, beam_Z) - hRecoilName=findName(hRecoil_A, hRecoil_Z) - reactionName = beamName + "(" + targetName +","+lRecoilName+")" + hRecoilName; + #===== find the symbol of Beam + reactionName = beam_AZ + "(" + target_AZ +","+lRecoil_AZ+")" + hRecoil_AZ; - f = open(fn4, "w") + f = open(fn4, "w") - if isinstance(ExList, list): - nState = len(ExList) - for i in range(0, nState): - f.write("%s %s %s %s %.3f %sMeV/u %s%s\n" % (reactionName, beam_Jpi, OrbList[i], JpiList[i], float(ExList[i]), KEA, op1, op2)) - else : - f.write("%s %s %s %s %.3f %sMeV/u %s%s\n" % (reactionName, beam_Jpi, OrbList, JpiList, float(ExList), KEA, op1, op2)) + if isinstance(ExList, list): + nState = len(ExList) + for i in range(0, nState): + f.write("%s %s %s %s %.3f %sMeV/u %s%s\n" % (reactionName, beam_Jpi, OrbList[i], JpiList[i], float(ExList[i]), KEA, op1, op2)) + else : + f.write("%s %s %s %s %.3f %sMeV/u %s%s\n" % (reactionName, beam_Jpi, OrbList, JpiList, float(ExList), KEA, op1, op2)) - f.close() + f.close() fnEx="sim_Ex.txt" diff --git a/simpleSim.html b/simpleSim.html index 660fefb..ff1c99a 100644 --- a/simpleSim.html +++ b/simpleSim.html @@ -19,16 +19,12 @@
- - - - - + @@ -37,17 +33,11 @@ - - - - + - - - - +
Beam Energy MeV/u
Beam A:Z: Jπ Ex:
TargetA:Z:
Light recoilA:Z: