Changes for page DEMO - Working with FLASH data
Last modified by makuadm on 2026-01-07 06:21
Summary
-
Page properties (3 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -DEMO - Working with FLASH data1 +DEMO - Documentation - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki.s ndueste1 +XWiki.cpassow - Content
-
... ... @@ -1,245 +1,32 @@ 1 -Experimental data is recorded as HDF files[link] on the GPFS file system[link]. The access rights[link to ACLs] are linked to the user's DESY account and can be managed by the PI via the GAMMA portal[link]. The experimental data can be downloaded via the GAMMA portal, but it is advised to use the DESY computing infrastructure. Access point are via ssh[link], Maxwell-Display Server[link] or JuyterHub[link]. We recommmend using the JupyterHub for data exploration and the SLURM resources[link] for high performances computing. 1 +(% style="list-style-type: square;" %) 2 +* Short descriptions including Links: 3 +(% style="list-style-type: square;" %) 4 +** GPFS 5 +** JupyterHub 6 +** conda ? 2 2 3 -For simplified acccess we provide a conda module flashh5[link] which can be installed in a personal conda environment[link] on the Maxwell Cluster. Example on the usage can be found here [link - repo + binder] 8 +(% style="list-style-type: square;" %) 9 +* Links Repository 10 +(% style="list-style-type: square;" %) 11 +** including Method Description 4 4 5 5 \\ 6 6 7 -{{expand title="How to login JupyterHub"}} 15 +(% style="list-style-type: square;" %) 16 +* Links to Binder 8 8 9 - 10 -{{view-file att--filename="tmp.mp4" height="250"/}} 11 -{{/expand}} 12 - 13 13 \\ 14 14 15 15 \\ 16 16 17 -{{info}} 18 -=== There are different options that help you to work with the FLASH HDF5 data in Python === 22 +Questions: 19 19 20 -The currently developed option for large data sets: [[the FAB package>>url:https://hasfcpkg.desy.de/fab/fab.html||shape="rect"]] ... see below 21 - 22 -and for smaller projects: (% class="Object" %)[[https:~~/~~/gitlab.desy.de/christopher.passow/flash-daq-hdf>>url:https://gitlab.desy.de/christopher.passow/flash-daq-hdf||shape="rect"]] 23 -{{/info}} 24 - 25 -\\ 26 - 27 -[[~[~[image:attach:image2023-9-29_11-1-37.png~]~]>>url:https://hasfcpkg.desy.de/fab/fab.html||shape="rect"]] 28 - 29 -\\ 30 - 31 -{{expand title="older ideas ..."}} 32 -(% class="Object" %)(object oriented) [[https:~~/~~/gitlab.desy.de/christopher.passow/fdh-builder>>url:https://gitlab.desy.de/christopher.passow/fdh-builder.git||shape="rect"]] 33 - 34 ----- 35 - 36 -=== TODO === 37 - 38 -(% class="task-list" %) 39 -((( 40 -{{task reference="/Tasks/Task_18" status="InProgress"}} 41 -Short descriptions including Links: → as Text\\ 42 - 43 -(% class="task-list" %) 44 -((( 45 - 46 - 47 -{{task reference="/Tasks/Task_19" status="InProgress"}} 48 -GPFS 49 -{{/task}} 50 - 51 -{{task reference="/Tasks/Task_40" status="InProgress"}} 52 -Access rights 53 -{{/task}} 54 - 55 -{{task reference="/Tasks/Task_41" status="InProgress"}} 56 -Gamma Portal 57 -{{/task}} 58 - 59 -{{task reference="/Tasks/Task_42" status="InProgress"}} 60 -Maxwell 61 -{{/task}} 62 - 63 -{{task reference="/Tasks/Task_20" status="InProgress"}} 64 -JupyterHub 65 -{{/task}} 66 - 67 -{{task reference="/Tasks/Task_21" status="InProgress"}} 68 -conda ? 69 -{{/task}} 70 - 71 -{{task reference="/Tasks/Task_36" status="InProgress"}} 72 -explain install from channel instead of fixed environment, but can use environment file from example repository 73 -{{/task}} 74 -))) 75 -{{/task}} 76 -))) 77 - 78 -\\ 79 - 80 -(% class="task-list" %) 81 -((( 82 -{{task reference="/Tasks/Task_22" status="InProgress"}} 83 -distribution 84 - 85 -(% class="task-list" %) 86 -((( 87 - 88 - 89 -{{task reference="/Tasks/Task_23" status="InProgress"}} 90 -channel (where to host?) 91 -{{/task}} 92 - 93 -{{task reference="/Tasks/Task_24" status="InProgress"}} 94 -environment file (repository with examples) 95 -{{/task}} 96 -))) 97 -{{/task}} 98 -))) 99 - 100 -\\ 101 - 102 -(% class="task-list" %) 103 -((( 104 -{{task reference="/Tasks/Task_25" status="InProgress"}} 105 -Documentation 106 - 107 -(% class="task-list" %) 108 -((( 109 - 110 - 111 -{{task reference="/Tasks/Task_26" status="InProgress"}} 112 -here VS repository VS sphinx 113 -{{/task}} 114 -))) 115 -{{/task}} 116 -))) 117 - 118 -\\ 119 - 120 -(% class="task-list" %) 121 -((( 122 -{{task reference="/Tasks/Task_27" status="InProgress"}} 123 -Binder 124 - 125 -(% class="task-list" %) 126 -((( 127 - 128 - 129 -{{task reference="/Tasks/Task_28" status="InProgress"}} 130 -examples with Stefan 131 -{{/task}} 132 -))) 133 -{{/task}} 134 -))) 135 - 136 -\\ 137 - 138 -(% class="task-list" %) 139 -((( 140 -{{task reference="/Tasks/Task_29" status="InProgress"}} 141 -Screencast 142 - 143 -(% class="task-list" %) 144 -((( 145 - 146 - 147 -{{task reference="/Tasks/Task_30" status="InProgress"}} 148 -login in jupyter hub 149 -{{/task}} 150 - 151 -{{task reference="/Tasks/Task_31" status="InProgress"}} 152 -login maxwell display 153 -{{/task}} 154 - 155 -{{task reference="/Tasks/Task_32" status="InProgress"}} 156 -use slix 157 -{{/task}} 158 - 159 -{{task reference="/Tasks/Task_33" status="InProgress"}} 160 -use hdfview plugin in jupterLab 161 -{{/task}} 162 - 163 -{{task reference="/Tasks/Task_34" status="InProgress"}} 164 -create conda env with flashh5 165 -{{/task}} 166 -))) 167 -{{/task}} 168 -))) 169 - 170 -\\ 171 - 172 -\\ 173 - 174 ----- 175 - 176 -==== under review ==== 177 - 178 -\\ 179 - 180 -{{code language="bash"}} 181 -conda create -n flashh5 python=3.10 # 3.10 not necessary, but would prefer 3.8 or higher 182 -source activate flashh5 183 -conda install ipython numpy pandas #TODO: fix dependcies 184 -conda install -c https://www.desy.de/~cpassow/condarepo/ flashh5 185 - 186 -## on jhub 187 -conda install ipykernel 188 -python -m ipykernel install --user --name flashh5 --display-name "flashh5" 189 - 190 - 191 -## to remove on jhub 192 -## delete from: /home/$USER/.local/share/jupyter/kernels/ 193 -{{/code}} 194 - 195 -\\ 196 - 197 -{{code language="py" title="moved to repository?"}} 198 -class RunDirectory: 199 - 200 - def get_run_table(): # more or less information? RunComment | Number of Files | start & stop time ? 201 - ... 202 - 203 - def get_run(daq, run_number): # daq is not needed! 204 - 205 - ... 206 - 207 - 208 -class Run: # constructor optional without RunDirectory or use there self.path 209 - 210 - def get_files(): 211 - ... 212 - 213 - def get_channels(): # of file #1 214 - ... 215 - 216 - def get_start_time(): # better as attribute? 217 - ... 218 - 219 - def get_stop_time(): # which? | better as attribute? 220 - ... 221 - 222 - def to_df(daq_map): # to_df(daq_map, slice) slice=[0:4] -> throw Exception 223 - ... 224 - 225 - def to_series(channel): 226 - ... 227 - 228 - def to_array(channel): 229 - ... 230 -{{/code}} 231 - 232 -{{code language="py" title="ideas"}} 233 -run.to_df(daq_map) 234 -run.to_series(daq_adr or daq_map) # on channel only? 235 -run.to_array(daq_adr) # on channel only? 236 - 237 -## interesting? 238 -# run.to_dask(daq_map) 239 -# run.to_xarray(daq_map) 240 -{{/code}} 241 - 242 -\\ 243 - 244 -\\ 245 -{{/expand}} 24 +(% style="list-style-type: square;" %) 25 +* for whom 26 +* where Maxwell / local / extern 27 +* distribution\\ 28 +(% style="list-style-type: square;" %) 29 +** channel? 30 +(% style="list-style-type: square;" %) 31 +*** where official hosted (DESY, privat, conda-forge) 32 +** enviroment?