diff --git a/EnergyLevelsPlot.js b/EnergyLevelsPlot.js
index fc9f588..331dc3a 100644
--- a/EnergyLevelsPlot.js
+++ b/EnergyLevelsPlot.js
@@ -1,6 +1,23 @@
var energy = [];
var jpi = [];
var Name;
+var A;
+var Sym;
+
+function breakdownName(str) {
+ const match = str.match(/^(\d+)([a-zA-Z]+)$/);
+ if (match) {
+ const numberPart = parseInt(match[1]);
+ const stringPart = match[2];
+ return { numberPart, stringPart };
+ } else {
+ return null; // If the input string doesn't match the expected format
+ }
+}
+
+var Sn = 999;
+var Sp = 999;
+var Sa = 999;
function GetData(){
@@ -19,6 +36,10 @@ function GetData(){
energy = [];
haha.forEach(line =>{
// console.log(line);
+ if( line.includes("Sn:") && line.length != 0 ){
+ Sn = line.substring(-8);
+ }
+
if( line.includes("
" + name2.numberPart +"" + name2.stringPart,
font: { size: 2 * fontSize },
showarrow: false
});
diff --git a/beamRate.py b/beamRate.py
index 112b789..322ec88 100755
--- a/beamRate.py
+++ b/beamRate.py
@@ -20,16 +20,16 @@ print( "Content-type:text/html\r\n\r\n")
#print("==== requesting FRIB rate for A = %s, Z = %s " % (A, Z))
-url = "https://groups.nscl.msu.edu/frib/rates/source/frib_yieldY.php?a="+A + "&z=" + Z + "&y=y"
+#url = "https://groups.nscl.msu.edu/frib/rates/source/frib_yieldY.php?a="+A + "&z=" + Z + "&y=y"
-fp = urllib.request.urlopen(url)
+#fp = urllib.request.urlopen(url)
-list = fp.read().decode("utf8").split(",")
+#list = fp.read().decode("utf8").split(",")
#for haha in list:
# print(haha)
-print(list[5])
+#print(list[5])
diff --git a/digios b/digios
index f50d916..f5eef9c 160000
--- a/digios
+++ b/digios
@@ -1 +1 @@
-Subproject commit f50d916d3814bbee8973336adff7c0ea4bec588a
+Subproject commit f5eef9c19afb833c4fa94ff5b88b4e602918733d
diff --git a/heliosmatics.html b/heliosmatics.html
index 5cfa15b..57774d5 100644
--- a/heliosmatics.html
+++ b/heliosmatics.html
@@ -75,7 +75,7 @@
MeV
-
+
Target (a):
diff --git a/heliosmatics.js b/heliosmatics.js
index e69d42e..b6f1b77 100644
--- a/heliosmatics.js
+++ b/heliosmatics.js
@@ -112,14 +112,15 @@ var color = ['rgb(31,119,180)', // muted blue
'rgb(23,190,207)']; // blue-teal
function GetYield(A,Z){
- let str = 'beamRate.py?A=' + A + '&Z=' + Z;
- let client = new XMLHttpRequest();
- client.onreadystatechange = function() {
- let haha = client.responseText.split(",");
- yield = haha[0]
- }
- client.open('GET', str, false);
- client.send();
+// let str = 'beamRate.py?A=' + A + '&Z=' + Z;
+// let client = new XMLHttpRequest();
+// client.onreadystatechange = function() {
+// let haha = client.responseText.split(",");
+// yield = haha[0]
+// }
+// client.open('GET', str, false);
+// client.send();
+// FRIB blocking the request....:(
}
function GetMassFromSym(AZ, id){
@@ -189,7 +190,7 @@ function GetMass(){
document.getElementById('heavySp').innerHTML = 'Sn: ' + heavy[4] + ' MeV, Sp: ' + heavy[5] + ' MeV, Sa : ' + heavy[6] + ' MeV';
//document.getElementById('beamSp').innerHTML = "haah";
- document.getElementById('beamYield').innerHTML = "FRIB ultimate yield : " + yield + " pps";
+ //document.getElementById('beamYield').innerHTML = "FRIB ultimate yield : " + yield + " pps";
//document.getElementById('n0').innerHTML = beam[0] + "," + beam[1] + "," + beam[2]
//document.getElementById('n1').innerHTML = target[0] + "," + target[1] + "," + target[2]
//document.getElementById('n2').innerHTML = light[0] + "," + light[1] + "," + light[2]
diff --git a/simpleInput.py b/simpleInput.py
index a5d88d8..cf88fa6 100755
--- a/simpleInput.py
+++ b/simpleInput.py
@@ -34,17 +34,28 @@ BField = form.getvalue('BField')
posArray = form.getvalue('posArray')
posRecoil = form.getvalue('posRecoil')
-isDWBA = form.getvalue('DWBA');
+isDWBA = form.getvalue('DWBA')
if isDWBA == "On" :
isDWBA = True
else:
isDWBA = False
-SSType = form.getvalue('SSType');
+onlyDWBA = form.getvalue('onlyDWBA')
+minAng = form.getvalue('minAng')
+maxAng = form.getvalue('maxAng')
-ExList = form.getvalue('Ex');
-JpiList = form.getvalue('Jpi');
-OrbList = form.getvalue('Orb');
+if onlyDWBA == "On" :
+ onlyDWBA = True
+ isDWBA = True
+else :
+ onlyDWBA = False
+
+
+SSType = form.getvalue('SSType')
+
+ExList = form.getvalue('Ex')
+JpiList = form.getvalue('Jpi')
+OrbList = form.getvalue('Orb')
op1 = form.getvalue('op1')
op2 = form.getvalue('op2')
@@ -216,7 +227,10 @@ haha=""
if isDWBA :
- dwba_1 = subprocess.run(["../Cleopatra/InFileCreator", fn4, "0", "180", "0.1"] , stdout=subprocess.PIPE).stdout.decode('utf-8')
+ if onlyDWBA :
+ dwba_1 = subprocess.run(["../Cleopatra/InFileCreator", fn4, minAng, maxAng, "0.1"] , stdout=subprocess.PIPE).stdout.decode('utf-8')
+ else :
+ dwba_1 = subprocess.run(["../Cleopatra/InFileCreator", fn4, "0", "180", "0.1"] , stdout=subprocess.PIPE).stdout.decode('utf-8')
cmd = "../Cleopatra/ptolemy <%s.in> %s.out" % (fn4, fn4)
outFile = fn4+ ".out"
if os.path.exists(outFile):
@@ -239,17 +253,18 @@ if isDWBA :
#if os.path.exists("transfer.root"):
# os.remove("transfer.root");
-if isDWBA :
- result = subprocess.run(["../Cleopatra/Transfer", fn1, fn2, dwbaExFile, dwbaRootFile, "transfer.root", "reaction.dat", "0"], stdout=subprocess.PIPE).stdout.decode('utf-8')
-else:
- result = subprocess.run(["../Cleopatra/Transfer", fn1, fn2, fnEx, "", "transfer.root", "reaction.dat", "0"], stdout=subprocess.PIPE).stdout.decode('utf-8')
+if onlyDWBA == False:
+ if isDWBA :
+ result = subprocess.run(["../Cleopatra/Transfer", fn1, fn2, dwbaExFile, dwbaRootFile, "transfer.root", "reaction.dat", "0"], stdout=subprocess.PIPE).stdout.decode('utf-8')
+ else:
+ result = subprocess.run(["../Cleopatra/Transfer", fn1, fn2, fnEx, "", "transfer.root", "reaction.dat", "0"], stdout=subprocess.PIPE).stdout.decode('utf-8')
-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()
+ 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()
@@ -310,6 +325,7 @@ if pngName != "" :
print (" Download the Ex file " % (fnEx, fnEx))
print (" Download the simulation root file ")
+
if fn5 != "" :
print (" Downlaod the Plot Config file " % (fn5, fn5))
diff --git a/simpleSim.html b/simpleSim.html
index 47bedd1..1995901 100644
--- a/simpleSim.html
+++ b/simpleSim.html
@@ -20,34 +20,34 @@
Reaction:
-
+
Detector:
@@ -76,21 +76,21 @@
-DWBA and Ex List:
+ DWBA and Ex List:
-For 2-nucleon transfer , Orbital take the form NL=X, where N is number of node, X is momentum number. n and L are related by Σi (2ni +li ) = 2N + X + 2n + l, where ni and li are the principle number and orbital angular momentum of the each transfered nucleon, and n and l are the internal quanta of the 2-nucleon. e.g. (t,p) reaction to 0f orbtial, the left-hand side would be ni = 0 and li = 3 and the sum is 3+3 = 6 = 2N + X + 2n+l. Assume n = l = 0, we have 6 = 2N+L. Thus, 3L=0, 2L=2,1L=4, 0L=6.
+ For 2-nucleon transfer , Orbital take the form NL=X, where N is number of node, X is momentum number. n and L are related by Σi (2ni +li ) = 2N + X + 2n + l, where ni and li are the principle number and orbital angular momentum of the each transfered nucleon, and n and l are the internal quanta of the 2-nucleon. e.g. (t,p) reaction to 0f orbtial, the left-hand side would be ni = 0 and li = 3 and the sum is 3+3 = 6 = 2N + X + 2n+l. Assume n = l = 0, we have 6 = 2N+L. Thus, 3L=0, 2L=2,1L=4, 0L=6.
-TODO: guess the orbital
-
- Positive parity
- Negative parity
- Unknown parity
-
-Add known states
-Isotope:
-Max Ex: MeV
+ TODO: guess the orbital
+
+ Positive parity
+ Negative parity
+ Unknown parity
+
+ Add known states
+ Isotope:
+ Max Ex: MeV
-
+
- Plot config:
+
+
+ Plot config: