finsihed all basic functions

This commit is contained in:
Ryan@fsunuc 2022-12-09 17:11:04 -05:00
parent 6a37f038d2
commit 4ca97d9a60
7 changed files with 136 additions and 18 deletions

View File

@ -6,6 +6,8 @@ import subprocess
cgitb.enable()
cgi.maxlen=1024 * 1024
form = cgi.FieldStorage()
fn1=""
@ -18,6 +20,7 @@ message1=""
message2=""
message3=""
message4=""
message5=""
fileitem = form['filename1']
if fileitem.filename:
@ -82,36 +85,70 @@ else:
##change to files directory
os.chdir(r"files")
## remove files ?
pngName=""
result=""
haha=""
dwba_1=""
dwba_2=""
dwba_3=""
dwba_4=""
dwbaPNG=""
inFile=""
outFile=""
isDWBA=False
dwbaExFile=""
dwbaRootFile=""
isTransferOK=False
#------- if only DWBA
if fn4!="" :
dwba_1 = subprocess.run(["../Cleopatra/InFileCreator", fn4, "0", "180", "0.1"] , stdout=subprocess.PIPE).stdout.decode('utf-8')
#result = dwbs_1.find('.in')
#dwba_2 = subprocess.run(["../Cleopatra/ptolemy", , "0", "180", "0.1"] , stdout=subprocess.PIPE).stdout.decode('utf-8')
outFile = fn4+ ".out"
cmd = "../Cleopatra/ptolemy <%s.in> %s.out" % (fn4, fn4)
os.system(cmd)
if os.path.exists(outFile) :
dwba_2 = outFile
dwba_3 = subprocess.run(["../Cleopatra/ExtractXSec", outFile, "1"], stdout=subprocess.PIPE).stdout.decode('utf-8')
dwbaRootFile = fn4 + ".root"
dwbaExFile = fn4 + ".Ex.txt"
dwba_4 = subprocess.run(["../Cleopatra/PlotTGraphTObjArray", dwbaRootFile, "1"], stdout=subprocess.PIPE).stdout.decode('utf-8')
dwbaPNG = dwba_4.splitlines().pop()
isDWBA = True
'''
if fn1=="" or fn2=="" or fn3=="" :
result = "imcomplete input files"
if fn1=="" or fn2=="":
result = "imcomplete input files for kinematocs Simulation"
pngName = ""
haha = ""
else:
result = subprocess.run(["../Cleopatra/Transfer", fn1, fn2, fn3, "0"], stdout=subprocess.PIPE).stdout.decode('utf-8')
haha = subprocess.run(["../Cleopatra/PlotSimulation", "transfer.root"], stdout=subprocess.PIPE).stdout.decode('utf-8')
pngName=haha.splitlines().pop()
'''
if isDWBA :
result = subprocess.run(["../Cleopatra/Transfer", fn1, fn2, dwbaExFile, dwbaRootFile, "transfer.root", "reaction.dat", "0"], stdout=subprocess.PIPE).stdout.decode('utf-8')
isTransferOK = True
else:
if fn3=="" :
result = "missing Ex.txt"
else:
result = subprocess.run(["../Cleopatra/Transfer", fn1, fn2, fn3, "", "transfer.root", "reaction.dat", "0"], stdout=subprocess.PIPE).stdout.decode('utf-8')
isTransferOK = True
if isTransferOK :
if fn5 =="":
haha = subprocess.run(["../Cleopatra/PlotSimulation", "transfer.root"], stdout=subprocess.PIPE).stdout.decode('utf-8')
else:
haha = subprocess.run(["../Cleopatra/PlotSimulation", "transfer.root", fn5], stdout=subprocess.PIPE).stdout.decode('utf-8')
pngName=haha.splitlines().pop()
print ("Content-Type: text/html\r\n\r\n")
print ("<html>")
print ("<style> img {max-width: 100%} </style>")
print ("<style> body { font-family: courier, courier new, serif;} </style>")
print ("<body>")
if dwbaPNG != "" :
print ("<img src=\"files/%s\">" % dwbaPNG)
if pngName != "" :
print ("<img src=\"files/%s\">" % pngName)
@ -121,6 +158,9 @@ print ("<br>Ex File : %s" % message3)
print ("<br>DWBA File : %s" % message4)
print ("<br>Plot Config File : %s" % message5)
print ("<br><span style=\"white-space: pre-line\"> %s </span>" % dwba_1)
print ("<br><span style=\"white-space: pre-line\"> %s </span>" % dwba_2)
print ("<br><span style=\"white-space: pre-line\"> %s </span>" % dwba_3)
print ("<br><span style=\"white-space: pre-line\"> %s </span>" % dwba_4)
print ("<br><span style=\"white-space: pre-line\"> %s </span>" % result)
print ("<br><span style=\"white-space: pre-line\"> %s </span>" % haha)
print ("</body>")

2
digios

@ -1 +1 @@
Subproject commit d251aa1a3533d669cd24f5d932fab3dc160a4dc7
Subproject commit 6c2c8950171e13ab858e61e1bc75c5d4283c7cb0

View File

@ -54,7 +54,17 @@
<section>
<nav>
<p>Some descriptions/Intructions here...</p>
<p>
<ul>
<li>The kenimatic calculation is documented in <a href="https://wiki.anl.gov/wiki_heliosdaq/images/3/3f/Kinematics_of_HELIOS.pdf" >Here</a>.</li>
<li>The DWBA calucation is using Ptolemy. <a href="https://www.phy.anl.gov/theory/research/ptolemy/">Here</a> for more detail. </li>
<li>For kinematic simulation, only the reactionConfig.txt, detectorGeo.txt, and Ex.txt are needed.</li>
<li>For DWBA calculation, only the DWBA file is needed.</li>
<li>When the DWBA file is presented, the kinematic simulation will use the DWBA result and also the excitation energy. i.e. the user provide Ex.txt will not be used.</li>
<li>This page is created and hosted by FSU</li>
</ul>
</p>
<!-- ////////////////////////////////////////// -->
<table>
@ -67,7 +77,13 @@
<tr>
<td></td>
<td style="text-align:left">
<a href="sample_files/detectorGeo_sample.txt" download="detectorGeo.txt">DetectorGeo File</a>
<a href="sample_files/detectorGeo_SOLARIS_sample.txt" download="detectorGeo_SOLAIRS.txt">DetectorGeo (SOLARIS) File</a>
</td>
</tr>
<tr>
<td></td>
<td style="text-align:left">
<a href="sample_files/detectorGeo_HELIOS_sample.txt" download="detectorGeo_HELIOS.txt">DetectorGeo (HELIOS) File</a>
</td>
</tr>
<tr>
@ -85,7 +101,7 @@
<tr>
<td></td>
<td style="text-align:left">
<a href="sample_files/PlotConfig_sample.txt" download="DWBA">Plot Config File</a>
<a href="sample_files/PlotConfig_sample.txt" download="PlotConfig.txt">Plot Config File</a>
</td>
</tr>
</table>
@ -140,7 +156,7 @@
</table>
</form>
<iframe name="NuclearData" style="border:none" width="400" height="80%"></iframe>
<iframe name="NuclearData" style="border:none" width="400" height="40%"></iframe>
</nav>

View File

@ -42,3 +42,4 @@
#32Si(t,p)34Si 0 0L=0 0+ 0.000 8MeV/u lA #two-nucleon_transfer
#36Ar(d,a)34Cl 0 4L=2 3+ 0.000 8MeV/u As # (d,a) reaction
32Si(d,p)33Si 0 1p3/2 3/2- 0.000 8.8MeV/u AK

View File

@ -0,0 +1,30 @@
/////enum plotID { pEZ, /// 0
///// pRecoilXY, /// 1
///// pRecoilXY1, /// 2
///// pRecoilXY2, /// 3
///// pRecoilRZ, /// 4
///// pRecoilRTR, /// 5
///// pTDiffZ, /// 6
///// pThetaCM, /// 7
///// pThetaCM_Z, /// 8
///// pExCal, /// 9
///// pRecoilRThetaCM, /// 10
///// pArrayXY, /// 11
///// pInfo, /// 12
///// pHitID, /// 13
///// pElum1XY, /// 14
///// pEElum1R, /// 15
///// pElum1RThetaCM, /// 16
///// pEmpty }; /// 17
/////=============================================== User Config
{pEZ, pExCal, pThetaCM, pRecoilRZ, break, pThetaCM_Z, pRecoilXY, pInfo, pRecoilRThetaCM} //Canvas config
hit == 1 && loop <= 1 && thetaCM > 10
60 //elum range
{0,50} //thetaCM range
false //shownKELines
false //isOverRideEx
{-0.5, 4.0} // over-rdied Ex range
///============================== example of gate
hit == 1 && loop <= 1 && thetaCM > 10 && detRowID == 0
hit == 1 && loop <= 1
15 < rhoElum1 && rhoElum1 < 50 && rhoElum2 > 60

View File

@ -1,4 +1,4 @@
-4.00 //Bfield_[T]
-2.50 //Bfield_[T]
0.00 //Bfield_direction_to_z-axis_[deg]_should_not_use
462.5 //bore_[mm]
11.5 //distance_from_axis_[mm]
@ -23,5 +23,5 @@ Out //detector_facing_Out_or_In
117.9
176.8
235.8 //5th_det
290.0
294.0
#============= end of file

View File

@ -0,0 +1,31 @@
-2.50 //Bfield_[T]
0.00 //Bfield_direction_to_z-axis_[deg]_should_not_use
462.5 //bore_[mm]
11.5 //distance_from_axis_[mm]
10.0 //width_of_detector_[mm]
50 //length_of_detector_[mm]
1000 //recoil_position_+_for_downstream_[mm]
10.0 //inner_radius_of_recoil_detector_[mm]
40.2 //outter_radius_of_recoil_detector_[mm]
false //is_coincident_with_recoil
0 //Recoil_1_position_[mm]_when_0_disable_tree_branch
0 //Recoil_2_position_[mm]
0.00 //Elum_1_position_[mm]_(just_another_recoil_detector_but_for_light_recoil)
0.00 //Elum_2_position_[mm]_when_Elum=0_disable_tree_branch
0 //support_length_[mm]
-121 //first_position_-_for_upstream_[mm]
0.03 //energy_resolution_of_PSD_array_[MeV]
1.00 //position_resolution_of_PSD_array_[mm]
Out //detector_facing_Out_or_In
6 //number_of_detector_as_same_side
0.00 //1st_detector_near_position_in_reference_to_det6_[mm]
58.6 //2nd_det
117.9
176.8
235.8 //5th_det
294.0
353.2
412.1
471.0
530.0
#============= end of file