SOLARIS_Web_Simulation/simpleSim.html
2023-01-16 01:07:57 -05:00

340 lines
14 KiB
HTML

<!DOCTYPE html>
<html>
<head>
</head>
<style>
body {
font-family: Arial, Helvetica, sans-serif;
background: #6DB33E;
}
</style>
<body>
<h1>DWBA and Monte Carlo Simulation</h1>
<button onclick="GetClipBoard()">Paste Settings from clipboard</button>
<form action = "simpleInput.py" method = "POST" target = "uploaded">
<h3>Reaction: </h3>
<table>
<tr>
<td>Beam Energy</td>
<td><input type = "text" name = "KEA" size="5" value="10" /></td>
<td style="text-align:left">MeV/u</td>
</tr>
<tr>
<td>Beam </td>
<td><input type = "text" name = "beam_AZ" size="5" value="16O"/></td>
<td style="text-align:right">J<sup>&pi;</sup></td>
<td><input type = "text" name = "beam_Jpi" size="5" value="0+"/><td>
<td style="text-align:right">Ex:</td>
<td><input type = "text" name = "beam_Ex" size="5" value="0.00"/></td>
<td style="text-align:left">MeV</td>
</tr>
<tr>
<td>Target</td>
<td><input type = "text" name = "target_AZ" size="5" value="d"/></td>
</tr>
<tr>
<td>Light recoil</td>
<td><input type = "text" name = "lRecoil_AZ" size="5" value="p"/></td>
</tr>
<tr>
<td> Number of events </td>
<td><input type = "text" name = "numEvent" size="6" value="100000"/></td>
</tr>
</table>
<h3>Detector:</h3>
<table>
<tr>
<input type="radio" name="SSType" value="HELIOS"/>HELIOS
<br>
<input type="radio" name="SSType" value="SOLARIS" checked="checked"/>SOLARIS
</tr>
<tr>
<td>B-field </td>
<td><input type = "text" name = "BField" size="5" value="-2.5"/></td>
<td style="text-align:left">T (minus sign = field point to upstream)</td>
</tr>
<tr>
<td>Array Pos.</td>
<td><input type = "text" name = "posArray" size="5" value="-100"/></td>
<td style="text-align:left">mm (negative for upstream)</td>
</tr>
<tr>
<td>Recoil Pos.</td>
<td><input type = "text" name = "posRecoil" size="5" value="500"/></td>
<td style="text-align:left">mm (negative for upstream)</td>
</tr>
</table>
<h3>DWBA and E<sub>x</sub> List:</h3>
<p> for 2-nucleon transfer, Orbital take the form nL=X, where n is number of node, X is momnetum number.</p>
<p> TODO: add button to add known states with parity selection</p>
<table id="ExTable">
<tr>
<td> E<sub>x</sub> [MeV]</td>
<td> J<sup>&#960;</sup></td>
<td> Orbital </td>
</tr>
</tr>
<td><input type="text" name="Ex" size="5" value="0"/></td>
<td><input type="text" name="Jpi" size="5" value="3/2+"/></td>
<td><input type="text" name="Orb" size="5" value="0d3/2"/></td>
</tr>
<tr>
<td><button type="button" onclick="addRow()">Add Ex</button></td>
<td></td>
<td><button type="button" onclick="deleteRow()">Remove Ex</button></td>
</tr>
</table>
<p></p>
<input type="checkbox" name="DWBA" value="On"/>Cal. DWBA
<table>
<tr>
<td>Incoming Channel</td>
<td>
<select name="op1">
<option value="A" selected>D | An & Cai (2006) E < 183 | 12 < A < 238</option>
<option value="H">D | Han, Shi, & Shen (2006) E < 200 | 12 < A < 209</option>
<option value="B">D | Bojowald et al. (1988) 50 < E < 80 | 27 < A < 208</option>
<option value="D">D | Daehnick, Childs, Vrcelj (1980) 11.8 < E < 80 | 27 < A < 238 (REL) </option>
<option value="C">D | Daehnick, Childs, Vrcelj (1980) 11.8 < E < 80 | 27 < A < 238 (NON-REL) </option>
<option value="L">D | Lohr and Haeberli (1974) 9 < E < 13 | 40 < A </option>
<option value="Q">D | Perey and Perey (1963) 12 < E < 25 | 40 < A </option>
<option value="Z">D | Zhang, Pang, Lou (2016) 5 < E < 170 | A < 18, spe 6-7Li </option>
<option value="K">P | Koning & Delaroche (2009) E < 200 | 24 < A < 209 | Iso.Dep.</option>
<option value="V">P | Varner et al. (1991) 16 < E < 65 | 4 < A < 209</option>
<option value="M">P | Menet et al. (1971) 30 < E < 60 | 40 < A </option>
<option value="G">P | Becchetti and Greenlees (1969) E < 50 | 40 < A </option>
<option value="P">P | Perey (1963) E < 20 | 30 < A < 100 </option>
<option value="x">A=3 | Xu, Guo, Han, & Shen (2011) E < 250 | 20 < A < 209 </option>
<option value="l">A=3 | Liang, Li, & Cai (2009) E < 270 | All masses </option>
<option value="p">A=3 | Perey (1963) E < 20 | 30 < A < 100 | Iso. Dep. </option>
<option value="c">A=3 | Li, Liang, Cai (2007), E < 40 | 48 < A < 232 | Tritons </option>
<option value="t">A=3 | Trost et al. (1987) 10 < E < 220 | 10 < A < 208 </option>
<option value="h">A=3 | Hyakutake et al. (1980) 90 < E < 120 | About 58 < A < 92 </option>
<option value="b">A=3 | Becchetti and Greenlees (1971), E < 40 | 40 < A | Iso. Dep. </option>
<option value="s">A=4 | Su & Han (2015) E < 398 | 20 < A < 209 </option>
<option value="a">A=4 | Avrigeanu et al. (2009) </option>
<option value="f">A=4 | Bassani and Picard (1969) 24 < E < 31 | A = 90 </option>
</select>
<td>
</tr>
<tr>
<td>Outgoing Channel</td>
<td>
<select name="op2">
<option value="A">D | An & Cai (2006) E < 183 | 12 < A < 238</option>
<option value="H">D | Han, Shi, & Shen (2006) E < 200 | 12 < A < 209</option>
<option value="B">D | Bojowald et al. (1988) 50 < E < 80 | 27 < A < 208</option>
<option value="D">D | Daehnick, Childs, Vrcelj (1980) 11.8 < E < 80 | 27 < A < 238 (REL) </option>
<option value="C">D | Daehnick, Childs, Vrcelj (1980) 11.8 < E < 80 | 27 < A < 238 (NON-REL) </option>
<option value="L">D | Lohr and Haeberli (1974) 9 < E < 13 | 40 < A </option>
<option value="Q">D | Perey and Perey (1963) 12 < E < 25 | 40 < A </option>
<option value="Z">D | Zhang, Pang, Lou (2016) 5 < E < 170 | A < 18, spe 6-7Li </option>
<option value="K" selected>P | Koning & Delaroche (2009) E < 200 | 24 < A < 209 | Iso.Dep.</option>
<option value="V">P | Varner et al. (1991) 16 < E < 65 | 4 < A < 209</option>
<option value="M">P | Menet et al. (1971) 30 < E < 60 | 40 < A </option>
<option value="G">P | Becchetti and Greenlees (1969) E < 50 | 40 < A </option>
<option value="P">P | Perey (1963) E < 20 | 30 < A < 100 </option>
<option value="x">A=3 | Xu, Guo, Han, & Shen (2011) E < 250 | 20 < A < 209 </option>
<option value="l">A=3 | Liang, Li, & Cai (2009) E < 270 | All masses </option>
<option value="p">A=3 | Perey (1963) E < 20 | 30 < A < 100 | Iso. Dep. </option>
<option value="c">A=3 | Li, Liang, Cai (2007), E < 40 | 48 < A < 232 | Tritons </option>
<option value="t">A=3 | Trost et al. (1987) 10 < E < 220 | 10 < A < 208 </option>
<option value="h">A=3 | Hyakutake et al. (1980) 90 < E < 120 | About 58 < A < 92 </option>
<option value="b">A=3 | Becchetti and Greenlees (1971), E < 40 | 40 < A | Iso. Dep. </option>
<option value="s">A=4 | Su & Han (2015) E < 398 | 20 < A < 209 </option>
<option value="a">A=4 | Avrigeanu et al. (2009) </option>
<option value="f">A=4 | Bassani and Picard (1969) 24 < E < 31 | A = 90 </option>
</select>
<td>
</tr>
</table>
<h3> Plot config:</h3>
<table>
<tr>
<td><input type="checkbox" name="plot" value="pEZ" checked/>E vs Z</td>
<td><input type="checkbox" name="plot" value="pExCal" checked/>Ex (cal.)</td>
<td><input type="checkbox" name="plot" value="pThetaCM" checked/>ThetaCM</td>
</tr>
<tr>
<td><input type="checkbox" name="plot" value="pThetaCM_Z" checked/>ThetaCM vs Z</td>
<td><input type="checkbox" name="plot" value="pRecoilXY" checked/>Recoil X vs Y</td>
<td><input type="checkbox" name="plot" value="pRecoilRThetaCM"/>Recoil-R vs ThetaCM</td>
</tr>
<tr>
<td><input type="checkbox" name="plot" value="pRecoilRZ"/>Recoil R vs Z</td>
<td><input type="checkbox" name="plot" value="pTDiffZ"/>Time diff vs Z</td>
<td><input type="checkbox" name="plot" value="pArrayXY"/>Array X vs Y</td>
</tr>
</table>
<p></p>
<input type="checkbox" name="gate" value="hit==1" checked/>Array Hit<br>
<input type="checkbox" name="gate" value="loop<=1" checked/>Loop = 1<br>
<input type="checkbox" name="gate" value="thetaCM>10" checked/> ThetaCM > 10 deg<br>
<p></p>
<input type = "submit" value = "Submit and Run Simulation" style="width:200px;height:60px;" formtarget="_blank"/>
</form>
<hr style="height:4px;background-color:#F7CF3C; border-style:none; border-width:none">
<h2>Advanced control</h2>
<!-- ////////////////////////////////////////// -->
<table>
<tr>
<td>Download Sample files:</td>
<td style="text-align:left">
<a href="sample_files/reactionConfig_sample.txt" download="reactionConfig.txt">Reaction File</a>
</td>
</tr>
<tr>
<td></td>
<td style="text-align:left">
<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>
<td></td>
<td style="text-align:left">
<a href="sample_files/Ex_sample.txt" download="Ex.txt">Ex File</a>
</td>
</tr>
<tr>
<td></td>
<td style="text-align:left">
<a href="sample_files/DWBA_sample.txt" download="DWBA">DWBA File</a>
</td>
</tr>
<tr>
<td></td>
<td style="text-align:left">
<a href="sample_files/PlotConfig_sample.txt" download="PlotConfig.txt">Plot Config File</a>
</td>
</tr>
</table>
<p></p><!-- ////////////////////////////////////////// -->
<form enctype = "multipart/form-data" action = "Simulation_gateway.py" method = "post" target="uploaded">
<table>
<tr>
<td style="text-align:right" width="200">Reaction File </td>
<td><input type = "file" name = "filename1" /> </td>
</tr>
<tr>
<td style="text-align:right" width="200">DetectorGeo File </th>
<td><input type = "file" name = "filename2" /> </td>
</tr>
<tr>
<td style="text-align:right" width="200">Ex File </th>
<td><input type = "file" name = "filename3" /> </td>
</tr>
<tr>
<td style="text-align:right" width="200">DWBA File ^ </th>
<td><input type = "file" name = "filename4" /> </td>
</tr>
<tr>
<td style="text-align:right" width="200">*.in File ^ </th>
<td><input type = "file" name = "filename4a" /> </td>
</tr>
<tr>
<td style="text-align:right" width="200">Plot Config File * </th>
<td><input type = "file" name = "filename5" /> </td>
</tr>
<tr>
<td>^ can be alone <br>* can be omitted</th>
<td><input type = "submit" value = "Upload & Run Simulation" style="height:50px; width:200px" formtarget="_blank"/> </td>
</tr>
</table>
</form>
<ul>
<li>File name can be customized.</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>If reactionConfig.txt, detectorGeo.txt, and DWBA file are presented, will do DWBA and use the result for simulation.</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>User can use a customs in File for DWBA calculation. Once the in File exist, it ignores the DWBA file.</li>
<li>To change DWBA angular range, download the in file, edit it. But becareful, DWBA for kinematic simulation must be 0 -180 deg.</li>
</ul>
<hr style="height:4px;background-color:#F7CF3C; border-style:none; border-width:none">
The source code for calculation can be found in <a href="https://github.com/calemhoffman/digios/tree/master/analysis/Cleopatra/Transfer.C" target="_blank">Here</a>
</body>
<script>
function GetClipBoard(){
navigator.clipboard.readText().then(
function(result){
heliosText = result;
console.log(result);
if( result.substring(0,16) == "====HELIOSMATICS" ){
let haha = result.substring(17).split(', ');
console.log(haha);
document.getElementsByName('beam_AZ')[0].value = haha[0];
document.getElementsByName('beam_Ex')[0].value = haha[1];
document.getElementsByName('target_AZ')[0].value = haha[2];
document.getElementsByName('lRecoil_AZ')[0].value = haha[3];
document.getElementsByName('KEA')[0].value = haha[5];
document.getElementsByName('BField')[0].value = haha[4];
document.getElementsByName('posArray')[0].value = haha[6];
document.getElementsByName('posRecoil')[0].value = haha[7];
}
}
);
}
GetClipBoard();
function addRow() {
var table = document.getElementById("ExTable");
var nRow = table.rows.length;
var row = table.insertRow(nRow-1);
row.innerHTML = '<td><input type="text" name="Ex" size="5" /></td> \
<td><input type="text" name="Jpi" size="5"/></td> \
<td><input type="text" name="Orb" size="5"/></td>';
}
function deleteRow(){
var table = document.getElementById("ExTable");
var nRow = table.rows.length;
if ( nRow > 3){
table.deleteRow(nRow-2);
}
}
</script>
</html>