checklist.php 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="generator" content="GitLab Pages">
  6. <title>KATRIN remote analysis shift</title>
  7. <link rel="shortcut icon" href="https://ikp-neu-katrin.ikp.kit.edu/routine/pics/KATRINlogo.ico" />
  8. <link rel="stylesheet" href="style.css">
  9. <script>
  10. function WelcomeMessage() {
  11. document.getElementById("result").innerHTML = "Welcome" + localStorage.getItem('author');
  12. }
  13. </script>
  14. </head>
  15. <body>
  16. <iframe src="navbar.html" onload="this.before((this.contentDocument.body||this.contentDocument).children[0]);this.remove()"></iframe>
  17. <br>
  18. <center>
  19. <h1>Checklist for remote analysis shifts</h1>
  20. <p style="color:#eb4670"> If you have questions, problems, or findings regarding the remote analysis shift, write into the <a href="https://iap-katrin-chat.iap.kit.edu/channel/remote.monitoring" target="_blank">#remote.monitoring</a> group on RocketChat</p>
  21. </center>
  22. <hr>
  23. <h2 style="text-align:right">Step 2/3</h2>
  24. <center>
  25. <body onload="document.getElementById('result').innerHTML = 'Welcome ' + localStorage.getItem('author') + '<br><br>The last check has been performed based on:<br><br>' + localStorage.getItem('lastChecked')">
  26. <h3 id="result"></h3>
  27. </body>
  28. <?php
  29. $datetime = new DateTime($dateTimeString);
  30. $Year = $datetime->format('Y');
  31. $Day = $datetime->format('d')-1;
  32. $Month = $datetime->format('m');
  33. $url = "http://katrin:tritium.Otten@2022@kdb.kaas.kit.edu/kdb-api.fcgi/json?run&system=fpd&from=".$Year."-".$Month."-".$Day;
  34. //call api
  35. $jsonData = file_get_contents($url);
  36. $json = array_values(json_decode($jsonData, true));
  37. print("<h3>Last run that has been added to <a href='https://kdb.kaas.kit.edu' target='_blank'>kdb</a> is run# ".end($json[1]['Run'])['Number']."</h3>");
  38. ?>
  39. <p>Please check the following parameters and values. <br>If any runs are effected, note down the run numbers in the comments and contact the corresponding system expert. </p>
  40. <br>
  41. <hr>
  42. <br>
  43. <h3>General information:</h3>
  44. <table width="50%" id="table" align="center">
  45. <tr>
  46. <td style="text-align:center"><b>First run</b></td>
  47. <td style="text-align:center"><input type="text" min="1" oninput="this.value=this.value.replace(/[^0-9]/g,'');" placeholder ="Run number" id="First_run"></td>
  48. </tr>
  49. <tr>
  50. <td style="text-align:center"><b>Last run</b></td>
  51. <td style="text-align:center"><input type="text" min="1" oninput="this.value=this.value.replace(/[^0-9]/g,'');" placeholder ="Run number" id="Last_run"></td>
  52. </tr>
  53. </table>
  54. <p>Note: You can find the start and end time stamps of all runs in the <a href='https://kdb.kaas.kit.edu' target='_blank'>kdb</a> table.</p>
  55. <br>
  56. <hr>
  57. <br>
  58. <h3>Checks on <a href="https://webtrium.mpp.mpg.de" target="_blank">webtrium</a>:</h3>
  59. <p>Note: Make sure webtrium has been updated recently. </p>
  60. <table width="100%" id="table" align="center">
  61. <tr>
  62. <th>Parameter</th>
  63. <th>What to look for</th>
  64. <th>good (right/green) <br> or bad (left/red)</th>
  65. <th>Comment if bad</th>
  66. </tr>
  67. <tr>
  68. <td><b>Endpoint <br>Signal <br>Background</b></td>
  69. <td>Are there any jumps endpoint, signal, or background?</td>
  70. <td><label class="switch"><input type="checkbox" id="webtrium_checkbox"><span class="slider round"></span></label></td>
  71. <td style="text-align:center"><input type="text" placeholder ="Parameter" id="webtrium"></td>
  72. </tr>
  73. </table>
  74. <hr>
  75. <br>
  76. <h3>Checks on Adei:</h3>
  77. <p>Note: the timestamp on adei is giving in CET/CEST.</p>
  78. <table width="100%" id="table" align="center">
  79. <tr>
  80. <th>Subsystem</th>
  81. <th>What to look for</th>
  82. <th>good (right/green) <br> or bad (left/red)</th>
  83. <th>Comment if bad</th>
  84. </tr>
  85. <tr>
  86. <td><b>High Voltage <br>(K35/K65)</b></td>
  87. <td>Are there any unexpected spikes in the
  88. <a href="https://adei-katrin.kaas.kit.edu/adei/#module=graph&db_server=virtual&db_name=srctree&db_group=-3&control_group=-3&db_mask=all&experiment=-&window=86400&module=graph&virtual=srctree&srctree=hv__katrin-hv_rep__7__5" target="_blank">K35/K65 readback.</a>
  89. <br>(more details can be found <a href="https://ikp-katrin-wiki.ikp.kit.edu/katrin/images/0/05/Check-Controlroom.pdf" target="_blank">here</a>)</td>
  90. <td><label class="switch"><input type="checkbox" id="HV_K65_checkbox"><span class="slider round"></span></label></td>
  91. <td style="text-align:center"><input type="text" placeholder ="Comment" id="HV_K65"></td>
  92. </tr>
  93. <tr>
  94. <td><b>High Voltage <br>(absolute tank potential)</b></td>
  95. <td>Are there any unexpected spikes in the
  96. <a href="https://adei-katrin.kaas.kit.edu/adei/#module=graph&db_server=virtual&db_name=srctree&db_group=-3&control_group=-3&db_mask=all&experiment=-&window=86400&module=graph&virtual=srctree&srctree=hv__katrin-hv_rep__0__39&infomod=legend&history_id=1627290450297" target="_blank">tank potential readback.</a>
  97. <br>(more details can be found <a href="https://ikp-katrin-wiki.ikp.kit.edu/katrin/images/0/05/Check-Controlroom.pdf" target="_blank">here</a>)</td>
  98. <td><label class="switch"><input type="checkbox" id="HV_TankPotential_checkbox"><span class="slider round"></span></label></td>
  99. <td style="text-align:center"><input type="text" placeholder ="Comment" id="HV_TankPotential"></td>
  100. </tr>
  101. <tr>
  102. <td><b>BIXS</b></td>
  103. <td>Is the <a href="http://adei-katrin.kaas.kit.edu/adei/#module=graph&db_server=virtual&db_name=srctree&db_group=-3&control_group=-3&db_mask=all&experiment=-&window=86400&module=graph&virtual=srctree&srctree=bixs__131_BIXS__BIXS_10367__5&infomod=legend&history_id=1631292675774" target="_blank">BIXS signal</a>
  104. stable? If not, something is wrong.
  105. <br> Is there a long term trend visible?
  106. <td><label class="switch"><input type="checkbox" id="BIXS_checkbox"><span class="slider round"></span></label></td>
  107. <td style="text-align:center"><input type="text" placeholder ="Comment" id="BIXS"></td>
  108. </tr>
  109. <tr>
  110. <td><b>Tritium throughput</b></td>
  111. <td>Is the <a href="http://adei-katrin.kaas.kit.edu/adei/#module=graph&db_server=virtual&db_name=srctree&db_group=-3&control_group=-3&db_mask=all&experiment=-&window=86400&module=graph&virtual=srctree&srctree=cstloops__ControlSystem_Loop_ISS__610InnerLoop_CircIn__18&infomod=legend&history_id=1631539399883" target="_blank">tritium throughput</a>
  112. stable to within < 1 sccm? If not, something is wrong.
  113. <br> Is there a long term trend visible?
  114. <td><label class="switch"><input type="checkbox" id="LARA_checkbox"><span class="slider round"></span></label></td>
  115. <td style="text-align:center"><input type="text" placeholder ="Comment" id="LARA"></td>
  116. </tr>
  117. <tr>
  118. <td><b>FBM</b></td>
  119. <td>Are there outliers in the <a href="http://adei-katrin.kaas.kit.edu/adei/#module=graph&db_server=fbm0&db_name=FBT&db_group=FBM_pixel_rates&control_group=FBM_pixel_rates&db_mask=0&experiment=-&window=86400&module=graph&virtual=srctree&srctree=&infomod=legend&history_id=1631539548331" target="_blank">FBM rate</a>.
  120. Absolute values depend on pixel and KNMx period, keep in mind long term drift.
  121. <td><label class="switch"><input type="checkbox" id="FBM_checkbox"><span class="slider round"></span></label></td>
  122. <td style="text-align:center"><input type="text" placeholder ="Comment" id="FBM"></td>
  123. </tr>
  124. <tr>
  125. <td><b>RW current and voltage</b></td>
  126. <td>Were the IU scans performed roughly once per day (visible in the <a href="https://adei-katrin.kaas.kit.edu/adei/#module=graph&db_server=virtual&db_name=srctree&db_group=-3&control_group=-3&db_mask=all&experiment=-&window=604800&module=graph&virtual=srctree&srctree=egunrs__EgunRS__0__112,egunrs__EgunRS__0__113&infomod=legend&history_id=1634029641842" target="_blank">RW current and voltage (last week)</a>)?<br>
  127. <td><label class="switch"><input type="checkbox" id="RW_checkbox"><span class="slider round"></span></label></td>
  128. <td style="text-align:center"><input type="text" placeholder ="Comment" id="RW"></td>
  129. </tr>
  130. </table>
  131. <br>
  132. <hr>
  133. <br>
  134. <h3>Checks on <a href="http://katana.npl.washington.edu/~sanshiro/brew/KNM8/" target="_blank">brew</a>:</h3>
  135. <p>A guide on how to use brew can be found <a href="http://katana.npl.washington.edu/~sanshiro/brew/KNM8/doc/BrewManual.html" target="blank">here</a></p>
  136. <p>If one of the columns doesn't exist in the latest brew table, mark the corresponding question as ok.</p>
  137. <table width="100%" id="table" align="center">
  138. <tr>
  139. <th>Parameter</th>
  140. <th>What to look for</th>
  141. <th>good (right/green) <br> or bad (left/red)</th>
  142. <th>Comment if bad</th>
  143. </tr>
  144. <tr>
  145. <td><b>Run Length</b></td>
  146. <td>Do any runs have shorter run length? Shorter length indicates missing subruns.</td>
  147. <td><label class="switch"><input type="checkbox" id="Run_Length_checkbox"><span class="slider round"></span></label></td>
  148. <td style="text-align:center"><input type="text" placeholder ="Comment" id="Run_Length"></td>
  149. </tr>
  150. <tr>
  151. <td><b>Data Size</b></td>
  152. <td>Do any runs have a different data size? Smaller size indicates missing subruns.</td>
  153. <td><label class="switch"><input type="checkbox" id="Data_Size_checkbox"><span class="slider round"></span></label></td>
  154. <td style="text-align:center"><input type="text" placeholder ="Comment" id="Data_Size"></td>
  155. </tr>
  156. <tr>
  157. <td><b>FPD Energy Shift</b></td>
  158. <td>Are there peaks in the FPD energy shift? <br>Peaks in BREW plot of this value over time indicate rapid detector gain drifts, <br>likely caused by large temperature changes of the building.</td>
  159. <td><label class="switch"><input type="checkbox" id="FPD_Energy_checkbox"><span class="slider round"></span></label></td>
  160. <td style="text-align:center"><input type="text" placeholder ="Comment" id="FPD_Energy"></td>
  161. </tr>
  162. <tr>
  163. <td><b>Grid-Sync Gap</b></td>
  164. <td>Are there non-zero values in the grid-sync gap? <br> Non-zero values indicate dead-time in DAQ.</td>
  165. <td><label class="switch"><input type="checkbox" id="Grid_sync_checkbox"><span class="slider round"></span></label></td>
  166. <td style="text-align:center"><input type="text" placeholder ="Comment" id="Grid_sync"></td>
  167. </tr>
  168. <tr>
  169. <td><b>U-MTD Deviation</b></td>
  170. <td>Is the maximum deviation of U-MTD < 50 mV?</td>
  171. <td><label class="switch"><input type="checkbox" id="UMTD_checkbox"><span class="slider round"></span></label></td>
  172. <td style="text-align:center"><input type="text" placeholder ="Comment" id="UMTD"></td>
  173. </tr>
  174. <tr>
  175. <td><b>K35 Missing Points</b></td>
  176. <td>Are there missing K35 values (> 5)? <br><br>
  177. If there are runs with missing points, check the run individually (short subruns should have at least 10 points): <br>
  178. <center>
  179. KNM<input type="text" min="1" max="20" oninput="this.value=this.value.replace(/[^0-9]/g,'');" placeholder ="x" id="Campaign" size="2" style="text-align:center;">: <input type="text" min="1" oninput="this.value=this.value.replace(/[^0-9]/g,'');" placeholder ="Run number" id="CheckRun" size="10" style="text-align:center;"> <button type="submit" onclick="checkRun()" id="check">→ Check run</button>
  180. </center>
  181. <td><label class="switch"><input type="checkbox" id="MissingK35_checkbox"><span class="slider round"></span></label></td>
  182. <td style="text-align:center"><input type="text" placeholder ="Comment" id="MissingK35"></td>
  183. </tr>
  184. <tr>
  185. <td><b>Rate 300eV</b></td>
  186. <td>Is rate 300 eV comparable to other runs? (necessary for column density calculation).</td>
  187. <td><label class="switch"><input type="checkbox" id="Rate_300_checkbox"><span class="slider round"></span></label></td>
  188. <td style="text-align:center"><input type="text" placeholder ="Comment" id="Rate_300"></td>
  189. </tr>
  190. <tr>
  191. <td><b>Rate 90eV</b></td>
  192. <td>Is rate 90 eV comparable to other runs? (necessary for column density calculation).</td>
  193. <td><label class="switch"><input type="checkbox" id="Rate_90_checkbox"><span class="slider round"></span></label></td>
  194. <td style="text-align:center"><input type="text" placeholder ="Comment" id="Rate_90"></td>
  195. </tr>
  196. <tr>
  197. <td><b>Tritium Purity</b></td>
  198. <td>Is tritium purity estimated and around 98.6%? (necessary for column density calculation).</td>
  199. <td><label class="switch"><input type="checkbox" id="TritiumPurity_checkbox" value="good"><span class="slider round"></span></label></td>
  200. <td style="text-align:center"><input type="text" placeholder ="Comment" id="TritiumPurity"></td>
  201. </tr>
  202. <tr>
  203. <td><b>LARA Consistency Check</b></td>
  204. <td>Are all entries in the LARA consistency check column ok?</td>
  205. <td><label class="switch"><input type="checkbox" id="LARACrosscheck_checkbox" value="good"><span class="slider round"></span></label></td>
  206. <td style="text-align:center"><input type="text" placeholder ="Comment" id="LARACrosscheck"></td>
  207. </tr>
  208. <tr>
  209. <td><b>Analysis monitoring</b></td>
  210. <td>Manually mark the ckecked runs as good/bad in the "Analysis monitoring" column in the brew table.</td>
  211. <td><label class="switch"><input type="checkbox" id="generic" value="good"><span class="slider round"></span></label></td>
  212. <td> </td>
  213. </tr>
  214. </table>
  215. <br>
  216. <hr>
  217. <br>
  218. <h3>Additional comments</h3>
  219. <textarea name="multiliner" placeholder ="Add any additional comments or observations here ..." type="text" id="additional_comments" style="width:75%;height:100px;"></textarea>
  220. <br>
  221. <br>
  222. <hr>
  223. <br>
  224. <button type="submit" onclick="goBack()" id="Back">Go back</button>
  225. <button type="submit" onclick="submit()" id="Submit">Confirm & submit</button>
  226. <br><br><br><br>
  227. <script type="text/javascript">
  228. function goBack() {
  229. window.location.href="index.php";
  230. }
  231. function checkRun() {
  232. Campaign = "KNM" + document.getElementById('Campaign').value;
  233. runToCheck = document.getElementById('CheckRun').value;
  234. checkUrl = "http://katana.npl.washington.edu/~sanshiro/kaffee/" + Campaign + "/kaffee.cgi/attachment/fpd00" + runToCheck + "/RS/RsHv-SubRunVoltage-fpd00" + runToCheck + ".png"; //"http://katana.npl.washington.edu/~sanshiro/kaffee/KNM6/kaffee.cgi/attachment/fpd00"+document.getElementById('CheckRun').value;
  235. window.open(checkUrl, '_blank').focus();
  236. }
  237. function submit() {
  238. var VariableName = ["webtrium", "HV (K65)", "HV tank potential", "BIXS", "LARA", "FBM", "RW", "Run length", "Data size", "FPD energy", "Grid sync", "U MTD discrepancy", "Missing K35", "Rate 300", "Rate 90", "Tritium purity", "LARA consistency check" ];
  239. var sqlNAME = ["webtrium", "HV_K65", "HV_tank_potential", "BIXS", "LARA", "FBM", "RW", "Run_length", "Data_size", "FPD_energy", "Grid_sync", "U_MTD_discrepancy", "Missing_K35", "Rate_300", "Rate_90", "Tritium_purity", "LARA_crosscheck"];
  240. var Checkboxes = ["webtrium_checkbox", "HV_K65_checkbox", "HV_TankPotential_checkbox", "BIXS_checkbox", "LARA_checkbox", "FBM_checkbox", "RW_checkbox", "Run_Length_checkbox", "Data_Size_checkbox", "FPD_Energy_checkbox", "Grid_sync_checkbox", "UMTD_checkbox", "MissingK35_checkbox", "Rate_300_checkbox", "Rate_90_checkbox", "TritiumPurity_checkbox", "LARACrosscheck_checkbox"];
  241. var Comments = ["webtrium", "HV_K65", "HV_TankPotential", "BIXS", "LARA", "FBM", "RW", "Run_Length", "Data_Size", "FPD_Energy", "Grid_sync", "UMTD", "MissingK35", "Rate_300", "Rate_90", "TritiumPurity", "LARACrosscheck" ];
  242. var arrayLength = VariableName.length;
  243. var badFlags = 0;
  244. var date = new Date();
  245. var dateTime = (date.getUTCFullYear()).toString() + '-' + (("0" + (date.getUTCMonth() + 1)).slice(-2)) + '-' + (("0" + date.getUTCDate()).slice(-2)) + "," + (("0" + date.getUTCHours()).slice(-2)) + ':' + (("0" + date.getUTCMinutes()).slice(-2)) + ':' + (("0" + date.getUTCSeconds()).slice(-2));
  246. var runRange = document.getElementById('First_run').value + ' - ' + document.getElementById('Last_run').value;
  247. var Summary = ''
  248. Summary += 'Author: '+ localStorage.getItem('author')+'<br>';
  249. Summary += 'Submission time: ' + dateTime + '<br>';
  250. Summary += 'Measurement type: '+ localStorage.getItem('measurement')+'<br>';
  251. Summary += 'Run range: ' + runRange + '<br><br>';
  252. Summary += '<pre>Parameter summary:<br>';
  253. var forwardingInfo = "";
  254. forwardingInfo += "?Author=" + localStorage.getItem('author');
  255. forwardingInfo += "&Submitted=" + dateTime;
  256. forwardingInfo += "&Mode=" + localStorage.getItem('measurement')
  257. forwardingInfo += "&Run_Range=" + runRange;
  258. var temp = '';
  259. for (let i = 0; i < arrayLength; i++){
  260. var good = document.getElementById(Checkboxes[i]);
  261. var comment = document.getElementById(Comments[i])
  262. if (good.checked == true){
  263. forwardingInfo += "&"+sqlNAME[i]+"=good"
  264. //temp += '<pre> ' + VariableName[i] + ': <br> status = good <br>';
  265. }
  266. else{
  267. forwardingInfo += "&"+sqlNAME[i]+"=bad"
  268. temp += ' ' + VariableName[i] + ': <br> status = bad <br> comment = '+ comment.value +'<br>';
  269. badFlags += 1;
  270. }
  271. }
  272. Summary += ' ' + badFlags.toString() + ' item(s) have been makred as bad.<br><br>';
  273. if (badFlags > 0) {
  274. Summary += temp
  275. }
  276. if(additional_comments.value != ""){
  277. Summary += '<br>Additional comments: <br><br>'+additional_comments.value;
  278. }
  279. Summary += '</pre>';
  280. localStorage.setItem('summary', Summary);
  281. forwardingInfo += "&Summary=" + Summary;
  282. window.location.href="submit.php"+forwardingInfo;
  283. }
  284. </script>
  285. </center>
  286. </body>
  287. </html>