Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
K
km3io
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
km3py
km3io
Commits
24ac1230
Commit
24ac1230
authored
5 years ago
by
Zineb Aly
Browse files
Options
Downloads
Patches
Plain Diff
add notebook tutorials
parent
5d0303d7
No related branches found
No related tags found
No related merge requests found
Pipeline
#7648
passed with warnings
5 years ago
Stage: test
Stage: coverage
Stage: doc
Stage: deploy
Changes
3
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
km3io/aanet.py
+5
-5
5 additions, 5 deletions
km3io/aanet.py
notebooks/OfflineReader_tutorial.ipynb
+830
-0
830 additions, 0 deletions
notebooks/OfflineReader_tutorial.ipynb
notebooks/Reader_tutorial.ipynb
+29
-145
29 additions, 145 deletions
notebooks/Reader_tutorial.ipynb
with
864 additions
and
150 deletions
km3io/aanet.py
+
5
−
5
View file @
24ac1230
...
...
@@ -550,14 +550,14 @@ class OfflineHit:
class
OfflineTracks
:
"""
wrapper for offline tracks
"""
def
__init__
(
self
,
keys
,
values
,
fit_keys
=
None
):
"""
Summary
"""
wrapper for offline tracks
Parameters
----------
keys :
TYPE
Description
values :
TYPE
Description
keys :
list of str
list of cropped tracks keys.
values :
list of arrays
list of arrays containting tracks data.
fit_keys : None, optional
list of tracks fit information (not yet outsourced in offline
files).
...
...
This diff is collapsed.
Click to expand it.
notebooks/OfflineReader_tutorial.ipynb
0 → 100644
+
830
−
0
View file @
24ac1230
{
"cells": [
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['/home/zineb/km3net/km3net/km3io/notebooks', '/home/zineb/miniconda3/envs/km3pipe/lib/python37.zip', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7/lib-dynload', '', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7/site-packages', '/home/zineb/km3net/km3net/km3io', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7/site-packages/IPython/extensions', '/home/zineb/.ipython', '/home/zineb/km3net/km3net/km3io', '/home/zineb/km3net/km3net/km3io', '/home/zineb/km3net/km3net/km3io']\n"
]
}
],
"source": [
"# Add file to current python path\n",
"from pathlib import Path\n",
"import sys\n",
"sys.path.append(str(Path.cwd().parent))\n",
"Path.cwd()\n",
"print(sys.path)\n",
"\n",
"# test samples directory - aanet test file\n",
"files_path = Path.cwd().parent / 'tests/samples' \n",
"aanet_file = files_path / 'aanet_v2.0.0.root'"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"import km3io as ki"
]
},
{
"cell_type": "code",
"execution_count": 90,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<km3io.aanet.OfflineReader at 0x7f249af32750>"
]
},
"execution_count": 90,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r = ki.OfflineReader(aanet_file)\n",
"r"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Events keys are:\n",
"\tid\n",
"\tdet_id\n",
"\tmc_id\n",
"\trun_id\n",
"\tmc_run_id\n",
"\tframe_index\n",
"\ttrigger_mask\n",
"\ttrigger_counter\n",
"\toverlays\n",
"\thits\n",
"\ttrks\n",
"\tw\n",
"\tw2list\n",
"\tw3list\n",
"\tmc_t\n",
"\tmc_hits\n",
"\tmc_trks\n",
"\tcomment\n",
"\tindex\n",
"\tflags\n",
"\tt.fSec\n",
"\tt.fNanoSec\n",
"Hits keys are:\n",
"\thits.id\n",
"\thits.dom_id\n",
"\thits.channel_id\n",
"\thits.tdc\n",
"\thits.tot\n",
"\thits.trig\n",
"\thits.pmt_id\n",
"\thits.t\n",
"\thits.a\n",
"\thits.pos.x\n",
"\thits.pos.y\n",
"\thits.pos.z\n",
"\thits.dir.x\n",
"\thits.dir.y\n",
"\thits.dir.z\n",
"\thits.pure_t\n",
"\thits.pure_a\n",
"\thits.type\n",
"\thits.origin\n",
"\thits.pattern_flags\n",
"Tracks keys are:\n",
"\ttrks.fUniqueID\n",
"\ttrks.fBits\n",
"\ttrks.id\n",
"\ttrks.pos.x\n",
"\ttrks.pos.y\n",
"\ttrks.pos.z\n",
"\ttrks.dir.x\n",
"\ttrks.dir.y\n",
"\ttrks.dir.z\n",
"\ttrks.t\n",
"\ttrks.E\n",
"\ttrks.len\n",
"\ttrks.lik\n",
"\ttrks.type\n",
"\ttrks.rec_type\n",
"\ttrks.rec_stages\n",
"\ttrks.status\n",
"\ttrks.mother_id\n",
"\ttrks.fitinf\n",
"\ttrks.hit_ids\n",
"\ttrks.error_matrix\n",
"\ttrks.comment\n",
"Mc hits keys are:\n",
"\tmc_hits.id\n",
"\tmc_hits.dom_id\n",
"\tmc_hits.channel_id\n",
"\tmc_hits.tdc\n",
"\tmc_hits.tot\n",
"\tmc_hits.trig\n",
"\tmc_hits.pmt_id\n",
"\tmc_hits.t\n",
"\tmc_hits.a\n",
"\tmc_hits.pos.x\n",
"\tmc_hits.pos.y\n",
"\tmc_hits.pos.z\n",
"\tmc_hits.dir.x\n",
"\tmc_hits.dir.y\n",
"\tmc_hits.dir.z\n",
"\tmc_hits.pure_t\n",
"\tmc_hits.pure_a\n",
"\tmc_hits.type\n",
"\tmc_hits.origin\n",
"\tmc_hits.pattern_flags\n",
"Mc tracks keys are:\n",
"\tmc_trks.fUniqueID\n",
"\tmc_trks.fBits\n",
"\tmc_trks.id\n",
"\tmc_trks.pos.x\n",
"\tmc_trks.pos.y\n",
"\tmc_trks.pos.z\n",
"\tmc_trks.dir.x\n",
"\tmc_trks.dir.y\n",
"\tmc_trks.dir.z\n",
"\tmc_trks.t\n",
"\tmc_trks.E\n",
"\tmc_trks.len\n",
"\tmc_trks.lik\n",
"\tmc_trks.type\n",
"\tmc_trks.rec_type\n",
"\tmc_trks.rec_stages\n",
"\tmc_trks.status\n",
"\tmc_trks.mother_id\n",
"\tmc_trks.fitinf\n",
"\tmc_trks.hit_ids\n",
"\tmc_trks.error_matrix\n",
"\tmc_trks.comment"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.keys"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<OfflineEvents: 10 parsed events>"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.events"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"10"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"len(r.events)"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [1 2 3 ... 8 9 10] at 0x7f249eeb6f10>"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.events.id"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [44 44 44 ... 44 44 44] at 0x7f249eeba050>"
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.events.det_id"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [182 183 202 ... 185 185 204] at 0x7f249eeba410>"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.events.frame_index"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [176 125 318 ... 84 255 105] at 0x7f249eebaa10>"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.events.hits"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [5.170483995038151 4.8283137373023015 5.762051382780177 ... 4.430816798843313 5.541263545158426 4.653960350157523] at 0x7f249b8ebb90>"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import numpy as np\n",
"np.log(r.events.hits)"
]
},
{
"cell_type": "code",
"execution_count": 41,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"offline event:\n",
"\tid : 1\n",
"\tdet_id : 44\n",
"\tmc_id : 0\n",
"\trun_id : 5971\n",
"\tmc_run_id : 0\n",
"\tframe_index : 182\n",
"\ttrigger_mask : 22\n",
"\ttrigger_counter : 0\n",
"\toverlays : 60\n",
"\thits : 176\n",
"\ttrks : 56\n",
"\tw : []\n",
"\tw2list : []\n",
"\tw3list : []\n",
"\tmc_t : 0.0\n",
"\tmc_hits : 0\n",
"\tmc_trks : 0\n",
"\tcomment : b''\n",
"\tindex : 0\n",
"\tflags : 0\n",
"\tt_fSec : 1567036818\n",
"\tt_fNanoSec : 200000000"
]
},
"execution_count": 41,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.events[0]"
]
},
{
"cell_type": "code",
"execution_count": 47,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"60"
]
},
"execution_count": 47,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.events[0].overlays"
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"176"
]
},
"execution_count": 48,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.events[0].hits"
]
},
{
"cell_type": "code",
"execution_count": 56,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [[806451572 806451572 806451572 ... 809544061 809544061 809544061] [806451572 806451572 806451572 ... 809524432 809526097 809544061] [806451572 806451572 806451572 ... 809544061 809544061 809544061] ... [806451572 806455814 806465101 ... 809526097 809544058 809544061] [806455814 806455814 806455814 ... 809544061 809544061 809544061] [806455814 806455814 806455814 ... 809544058 809544058 809544061]] at 0x7f249eebac50>"
]
},
"execution_count": 56,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.hits.dom_id"
]
},
{
"cell_type": "code",
"execution_count": 61,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [[24 30 22 ... 38 26 23] [29 26 22 ... 26 28 24] [27 19 13 ... 27 24 16] ... [22 22 9 ... 27 32 27] [30 32 17 ... 30 24 29] [27 41 36 ... 29 24 28]] at 0x7f249eec9050>"
]
},
"execution_count": 61,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.hits.tot"
]
},
{
"cell_type": "code",
"execution_count": 62,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<OfflineHits: 176 parsed elements>"
]
},
"execution_count": 62,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r[0].hits"
]
},
{
"cell_type": "code",
"execution_count": 68,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([806451572, 806451572, 806451572, 806451572, 806455814, 806455814,\n",
" 806455814, 806483369, 806483369, 806483369, 806483369, 806483369,\n",
" 806483369, 806483369, 806483369, 806483369, 806483369, 806487219,\n",
" 806487226, 806487231, 806487231, 808432835, 808435278, 808435278,\n",
" 808435278, 808435278, 808435278, 808447180, 808447180, 808447180,\n",
" 808447180, 808447180, 808447180, 808447180, 808447180, 808447186,\n",
" 808451904, 808451904, 808472265, 808472265, 808472265, 808472265,\n",
" 808472265, 808472265, 808472265, 808472265, 808488895, 808488990,\n",
" 808488990, 808488990, 808488990, 808488990, 808489014, 808489014,\n",
" 808489117, 808489117, 808489117, 808489117, 808493910, 808946818,\n",
" 808949744, 808951460, 808951460, 808951460, 808951460, 808951460,\n",
" 808956908, 808956908, 808959411, 808959411, 808959411, 808961448,\n",
" 808961448, 808961504, 808961504, 808961655, 808961655, 808961655,\n",
" 808964815, 808964815, 808964852, 808964908, 808969857, 808969857,\n",
" 808969857, 808969857, 808969857, 808972593, 808972698, 808972698,\n",
" 808972698, 808974758, 808974758, 808974758, 808974758, 808974758,\n",
" 808974758, 808974758, 808974758, 808974758, 808974758, 808974758,\n",
" 808974773, 808974773, 808974773, 808974773, 808974773, 808974972,\n",
" 808974972, 808976377, 808976377, 808976377, 808979567, 808979567,\n",
" 808979567, 808979721, 808979721, 808979721, 808979721, 808979721,\n",
" 808979721, 808979721, 808979729, 808979729, 808979729, 808981510,\n",
" 808981510, 808981510, 808981510, 808981672, 808981672, 808981672,\n",
" 808981672, 808981672, 808981672, 808981672, 808981672, 808981672,\n",
" 808981672, 808981672, 808981672, 808981672, 808981672, 808981672,\n",
" 808981672, 808981672, 808981812, 808981812, 808981812, 808981864,\n",
" 808981864, 808982005, 808982005, 808982005, 808982018, 808982018,\n",
" 808982018, 808982041, 808982041, 808982077, 808982077, 808982547,\n",
" 808982547, 808982547, 808997793, 809006037, 809524432, 809526097,\n",
" 809526097, 809544061, 809544061, 809544061, 809544061, 809544061,\n",
" 809544061, 809544061], dtype=int32)"
]
},
"execution_count": 68,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r[0].hits.dom_id"
]
},
{
"cell_type": "code",
"execution_count": 74,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"offline hit:\n",
"\tid : 0\n",
"\tdom_id : 806451572\n",
"\tchannel_id : 8\n",
"\ttdc : 0\n",
"\ttot : 24\n",
"\ttrig : 1\n",
"\tpmt_id : 0\n",
"\tt : 70104010.0\n",
"\ta : 0.0\n",
"\tpos_x : 0.0\n",
"\tpos_y : 0.0\n",
"\tpos_z : 0.0\n",
"\tdir_x : 0.0\n",
"\tdir_y : 0.0\n",
"\tdir_z : 0.0\n",
"\tpure_t : 0.0\n",
"\tpure_a : 0.0\n",
"\ttype : 0\n",
"\torigin : 0\n",
"\tpattern_flags : 0"
]
},
"execution_count": 74,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r[0].hits[0]"
]
},
{
"cell_type": "code",
"execution_count": 76,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"806451572"
]
},
"execution_count": 76,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r[0].hits[0].dom_id"
]
},
{
"cell_type": "code",
"execution_count": 77,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<OfflineTracks: 10 parsed elements>"
]
},
"execution_count": 77,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.tracks"
]
},
{
"cell_type": "code",
"execution_count": 79,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [[294.6407542676734 294.6407542676734 294.6407542676734 ... 67.81221253265059 67.7756405143316 67.77250505700384] [96.75133289411137 96.75133289411137 96.75133289411137 ... 39.21916536442286 39.184645826013806 38.870325146341884] [560.2775306614813 560.2775306614813 560.2775306614813 ... 118.88577278801066 118.72271313687405 117.80785995187605] ... [71.03251451148226 71.03251451148226 71.03251451148226 ... 16.714140573909347 16.444395245214945 16.34639241716669] [326.440133294878 326.440133294878 326.440133294878 ... 87.79818671079849 87.75488082571873 87.74839444768625] [159.77779654216795 159.77779654216795 159.77779654216795 ... 33.8669134999348 33.821631538334984 33.77240735670646]] at 0x7f249eed2590>"
]
},
"execution_count": 79,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.tracks.lik"
]
},
{
"cell_type": "code",
"execution_count": 80,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<OfflineTracks: 56 parsed elements>"
]
},
"execution_count": 80,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r[0].tracks"
]
},
{
"cell_type": "code",
"execution_count": 81,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([294.64075427, 294.64075427, 294.64075427, 291.64653113,\n",
" 291.27392663, 290.69031512, 289.19290546, 289.08449217,\n",
" 289.03373947, 288.19030836, 282.92343367, 282.71527118,\n",
" 282.10762402, 280.20553861, 275.93183966, 273.01809111,\n",
" 257.46433694, 220.94357656, 194.99426403, 190.47809685,\n",
" 79.95235686, 78.94389763, 78.90791169, 77.96122466,\n",
" 77.9579604 , 76.90769883, 75.97546175, 74.91530508,\n",
" 74.9059469 , 72.94007716, 72.90467038, 72.8629316 ,\n",
" 72.81280833, 72.80229533, 72.78899435, 71.82404165,\n",
" 71.80085542, 71.71028058, 70.91130096, 70.89150223,\n",
" 70.85845637, 70.79081796, 70.76929743, 69.80667603,\n",
" 69.64058976, 68.93085058, 68.84304037, 68.83154232,\n",
" 68.79944298, 68.79019375, 68.78581291, 68.72340328,\n",
" 67.86628937, 67.81221253, 67.77564051, 67.77250506])"
]
},
"execution_count": 81,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r[0].tracks.lik"
]
},
{
"cell_type": "code",
"execution_count": 83,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"offline track:\n",
"\tfUniqueID : 0\n",
"\tfBits : 33554432\n",
"\tid : 1\n",
"\tpos_x : 445.835395997812\n",
"\tpos_y : 615.1089636184813\n",
"\tpos_z : 125.1448339836911\n",
"\tdir_x : 0.0368711082700674\n",
"\tdir_y : -0.48653048395923415\n",
"\tdir_z : -0.872885221293917\n",
"\tt : 70311446.46401498\n",
"\tE : 99.10458562488608\n",
"\tlen : 0.0\n",
"\tlik : 294.6407542676734\n",
"\ttype : 0\n",
"\trec_type : 4000\n",
"\trec_stages : [1, 3, 5, 4]\n",
"\tstatus : 0\n",
"\tmother_id : -1\n",
"\thit_ids : []\n",
"\terror_matrix : []\n",
"\tcomment : 0\n",
"\tJGANDALF_BETA0_RAD : 0.004957442219414389\n",
"\tJGANDALF_BETA1_RAD : 0.003417848024252858\n",
"\tJGANDALF_CHI2 : -294.6407542676734\n",
"\tJGANDALF_NUMBER_OF_HITS : 142.0\n",
"\tJENERGY_ENERGY : 99.10458562488608\n",
"\tJENERGY_CHI2 : 1.7976931348623157e+308\n",
"\tJGANDALF_LAMBDA : 4.2409761837248484e-12\n",
"\tJGANDALF_NUMBER_OF_ITERATIONS : 10.0\n",
"\tJSTART_NPE_MIP : 24.88469697331908\n",
"\tJSTART_NPE_MIP_TOTAL : 55.88169412579765\n",
"\tJSTART_LENGTH_METRES : 98.89582506402911\n",
"\tJVETO_NPE : 0.0\n",
"\tJVETO_NUMBER_OF_HITS : 0.0\n",
"\tJENERGY_MUON_RANGE_METRES : 344.9767431592819\n",
"\tJENERGY_NOISE_LIKELIHOOD : -333.87773581129136\n",
"\tJENERGY_NDF : 1471.0\n",
"\tJENERGY_NUMBER_OF_HITS : 101.0"
]
},
"execution_count": 83,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r[0].tracks[0]"
]
},
{
"cell_type": "code",
"execution_count": 85,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"294.6407542676734"
]
},
"execution_count": 85,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r[0].tracks[0].lik"
]
},
{
"cell_type": "code",
"execution_count": 86,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<OfflineHits: 10 parsed elements>"
]
},
"execution_count": 86,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.mc_hits"
]
},
{
"cell_type": "code",
"execution_count": 87,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<OfflineTracks: 10 parsed elements>"
]
},
"execution_count": 87,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.mc_tracks."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"r.mc_hits."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.4"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
%% Cell type:code id: tags:
```
python
# Add file to current python path
from
pathlib
import
Path
import
sys
sys
.
path
.
append
(
str
(
Path
.
cwd
().
parent
))
Path
.
cwd
()
print
(
sys
.
path
)
# test samples directory - aanet test file
files_path
=
Path
.
cwd
().
parent
/
'
tests/samples
'
aanet_file
=
files_path
/
'
aanet_v2.0.0.root
'
```
%% Output
['/home/zineb/km3net/km3net/km3io/notebooks', '/home/zineb/miniconda3/envs/km3pipe/lib/python37.zip', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7/lib-dynload', '', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7/site-packages', '/home/zineb/km3net/km3net/km3io', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7/site-packages/IPython/extensions', '/home/zineb/.ipython', '/home/zineb/km3net/km3net/km3io', '/home/zineb/km3net/km3net/km3io', '/home/zineb/km3net/km3net/km3io']
%% Cell type:code id: tags:
```
python
import
km3io
as
ki
```
%% Cell type:code id: tags:
```
python
r
=
ki
.
OfflineReader
(
aanet_file
)
r
```
%% Output
<km3io.aanet.OfflineReader at 0x7f249af32750>
%% Cell type:code id: tags:
```
python
r
.
keys
```
%% Output
Events keys are:
id
det_id
mc_id
run_id
mc_run_id
frame_index
trigger_mask
trigger_counter
overlays
hits
trks
w
w2list
w3list
mc_t
mc_hits
mc_trks
comment
index
flags
t.fSec
t.fNanoSec
Hits keys are:
hits.id
hits.dom_id
hits.channel_id
hits.tdc
hits.tot
hits.trig
hits.pmt_id
hits.t
hits.a
hits.pos.x
hits.pos.y
hits.pos.z
hits.dir.x
hits.dir.y
hits.dir.z
hits.pure_t
hits.pure_a
hits.type
hits.origin
hits.pattern_flags
Tracks keys are:
trks.fUniqueID
trks.fBits
trks.id
trks.pos.x
trks.pos.y
trks.pos.z
trks.dir.x
trks.dir.y
trks.dir.z
trks.t
trks.E
trks.len
trks.lik
trks.type
trks.rec_type
trks.rec_stages
trks.status
trks.mother_id
trks.fitinf
trks.hit_ids
trks.error_matrix
trks.comment
Mc hits keys are:
mc_hits.id
mc_hits.dom_id
mc_hits.channel_id
mc_hits.tdc
mc_hits.tot
mc_hits.trig
mc_hits.pmt_id
mc_hits.t
mc_hits.a
mc_hits.pos.x
mc_hits.pos.y
mc_hits.pos.z
mc_hits.dir.x
mc_hits.dir.y
mc_hits.dir.z
mc_hits.pure_t
mc_hits.pure_a
mc_hits.type
mc_hits.origin
mc_hits.pattern_flags
Mc tracks keys are:
mc_trks.fUniqueID
mc_trks.fBits
mc_trks.id
mc_trks.pos.x
mc_trks.pos.y
mc_trks.pos.z
mc_trks.dir.x
mc_trks.dir.y
mc_trks.dir.z
mc_trks.t
mc_trks.E
mc_trks.len
mc_trks.lik
mc_trks.type
mc_trks.rec_type
mc_trks.rec_stages
mc_trks.status
mc_trks.mother_id
mc_trks.fitinf
mc_trks.hit_ids
mc_trks.error_matrix
mc_trks.comment
%% Cell type:code id: tags:
```
python
r
.
events
```
%% Output
<OfflineEvents: 10 parsed events>
%% Cell type:code id: tags:
```
python
len
(
r
.
events
)
```
%% Output
10
%% Cell type:code id: tags:
```
python
r
.
events
.
id
```
%% Output
<ChunkedArray [1 2 3 ... 8 9 10] at 0x7f249eeb6f10>
%% Cell type:code id: tags:
```
python
r
.
events
.
det_id
```
%% Output
<ChunkedArray [44 44 44 ... 44 44 44] at 0x7f249eeba050>
%% Cell type:code id: tags:
```
python
r
.
events
.
frame_index
```
%% Output
<ChunkedArray [182 183 202 ... 185 185 204] at 0x7f249eeba410>
%% Cell type:code id: tags:
```
python
r
.
events
.
hits
```
%% Output
<ChunkedArray [176 125 318 ... 84 255 105] at 0x7f249eebaa10>
%% Cell type:code id: tags:
```
python
import
numpy
as
np
np
.
log
(
r
.
events
.
hits
)
```
%% Output
<ChunkedArray [5.170483995038151 4.8283137373023015 5.762051382780177 ... 4.430816798843313 5.541263545158426 4.653960350157523] at 0x7f249b8ebb90>
%% Cell type:code id: tags:
```
python
r
.
events
[
0
]
```
%% Output
offline event:
id : 1
det_id : 44
mc_id : 0
run_id : 5971
mc_run_id : 0
frame_index : 182
trigger_mask : 22
trigger_counter : 0
overlays : 60
hits : 176
trks : 56
w : []
w2list : []
w3list : []
mc_t : 0.0
mc_hits : 0
mc_trks : 0
comment : b''
index : 0
flags : 0
t_fSec : 1567036818
t_fNanoSec : 200000000
%% Cell type:code id: tags:
```
python
r
.
events
[
0
].
overlays
```
%% Output
60
%% Cell type:code id: tags:
```
python
r
.
events
[
0
].
hits
```
%% Output
176
%% Cell type:code id: tags:
```
python
r
.
hits
.
dom_id
```
%% Output
<ChunkedArray [[806451572 806451572 806451572 ... 809544061 809544061 809544061] [806451572 806451572 806451572 ... 809524432 809526097 809544061] [806451572 806451572 806451572 ... 809544061 809544061 809544061] ... [806451572 806455814 806465101 ... 809526097 809544058 809544061] [806455814 806455814 806455814 ... 809544061 809544061 809544061] [806455814 806455814 806455814 ... 809544058 809544058 809544061]] at 0x7f249eebac50>
%% Cell type:code id: tags:
```
python
r
.
hits
.
tot
```
%% Output
<ChunkedArray [[24 30 22 ... 38 26 23] [29 26 22 ... 26 28 24] [27 19 13 ... 27 24 16] ... [22 22 9 ... 27 32 27] [30 32 17 ... 30 24 29] [27 41 36 ... 29 24 28]] at 0x7f249eec9050>
%% Cell type:code id: tags:
```
python
r
[
0
].
hits
```
%% Output
<OfflineHits: 176 parsed elements>
%% Cell type:code id: tags:
```
python
r
[
0
].
hits
.
dom_id
```
%% Output
array([806451572, 806451572, 806451572, 806451572, 806455814, 806455814,
806455814, 806483369, 806483369, 806483369, 806483369, 806483369,
806483369, 806483369, 806483369, 806483369, 806483369, 806487219,
806487226, 806487231, 806487231, 808432835, 808435278, 808435278,
808435278, 808435278, 808435278, 808447180, 808447180, 808447180,
808447180, 808447180, 808447180, 808447180, 808447180, 808447186,
808451904, 808451904, 808472265, 808472265, 808472265, 808472265,
808472265, 808472265, 808472265, 808472265, 808488895, 808488990,
808488990, 808488990, 808488990, 808488990, 808489014, 808489014,
808489117, 808489117, 808489117, 808489117, 808493910, 808946818,
808949744, 808951460, 808951460, 808951460, 808951460, 808951460,
808956908, 808956908, 808959411, 808959411, 808959411, 808961448,
808961448, 808961504, 808961504, 808961655, 808961655, 808961655,
808964815, 808964815, 808964852, 808964908, 808969857, 808969857,
808969857, 808969857, 808969857, 808972593, 808972698, 808972698,
808972698, 808974758, 808974758, 808974758, 808974758, 808974758,
808974758, 808974758, 808974758, 808974758, 808974758, 808974758,
808974773, 808974773, 808974773, 808974773, 808974773, 808974972,
808974972, 808976377, 808976377, 808976377, 808979567, 808979567,
808979567, 808979721, 808979721, 808979721, 808979721, 808979721,
808979721, 808979721, 808979729, 808979729, 808979729, 808981510,
808981510, 808981510, 808981510, 808981672, 808981672, 808981672,
808981672, 808981672, 808981672, 808981672, 808981672, 808981672,
808981672, 808981672, 808981672, 808981672, 808981672, 808981672,
808981672, 808981672, 808981812, 808981812, 808981812, 808981864,
808981864, 808982005, 808982005, 808982005, 808982018, 808982018,
808982018, 808982041, 808982041, 808982077, 808982077, 808982547,
808982547, 808982547, 808997793, 809006037, 809524432, 809526097,
809526097, 809544061, 809544061, 809544061, 809544061, 809544061,
809544061, 809544061], dtype=int32)
%% Cell type:code id: tags:
```
python
r
[
0
].
hits
[
0
]
```
%% Output
offline hit:
id : 0
dom_id : 806451572
channel_id : 8
tdc : 0
tot : 24
trig : 1
pmt_id : 0
t : 70104010.0
a : 0.0
pos_x : 0.0
pos_y : 0.0
pos_z : 0.0
dir_x : 0.0
dir_y : 0.0
dir_z : 0.0
pure_t : 0.0
pure_a : 0.0
type : 0
origin : 0
pattern_flags : 0
%% Cell type:code id: tags:
```
python
r
[
0
].
hits
[
0
].
dom_id
```
%% Output
806451572
%% Cell type:code id: tags:
```
python
r
.
tracks
```
%% Output
<OfflineTracks: 10 parsed elements>
%% Cell type:code id: tags:
```
python
r
.
tracks
.
lik
```
%% Output
<ChunkedArray [[294.6407542676734 294.6407542676734 294.6407542676734 ... 67.81221253265059 67.7756405143316 67.77250505700384] [96.75133289411137 96.75133289411137 96.75133289411137 ... 39.21916536442286 39.184645826013806 38.870325146341884] [560.2775306614813 560.2775306614813 560.2775306614813 ... 118.88577278801066 118.72271313687405 117.80785995187605] ... [71.03251451148226 71.03251451148226 71.03251451148226 ... 16.714140573909347 16.444395245214945 16.34639241716669] [326.440133294878 326.440133294878 326.440133294878 ... 87.79818671079849 87.75488082571873 87.74839444768625] [159.77779654216795 159.77779654216795 159.77779654216795 ... 33.8669134999348 33.821631538334984 33.77240735670646]] at 0x7f249eed2590>
%% Cell type:code id: tags:
```
python
r
[
0
].
tracks
```
%% Output
<OfflineTracks: 56 parsed elements>
%% Cell type:code id: tags:
```
python
r
[
0
].
tracks
.
lik
```
%% Output
array([294.64075427, 294.64075427, 294.64075427, 291.64653113,
291.27392663, 290.69031512, 289.19290546, 289.08449217,
289.03373947, 288.19030836, 282.92343367, 282.71527118,
282.10762402, 280.20553861, 275.93183966, 273.01809111,
257.46433694, 220.94357656, 194.99426403, 190.47809685,
79.95235686, 78.94389763, 78.90791169, 77.96122466,
77.9579604 , 76.90769883, 75.97546175, 74.91530508,
74.9059469 , 72.94007716, 72.90467038, 72.8629316 ,
72.81280833, 72.80229533, 72.78899435, 71.82404165,
71.80085542, 71.71028058, 70.91130096, 70.89150223,
70.85845637, 70.79081796, 70.76929743, 69.80667603,
69.64058976, 68.93085058, 68.84304037, 68.83154232,
68.79944298, 68.79019375, 68.78581291, 68.72340328,
67.86628937, 67.81221253, 67.77564051, 67.77250506])
%% Cell type:code id: tags:
```
python
r
[
0
].
tracks
[
0
]
```
%% Output
offline track:
fUniqueID : 0
fBits : 33554432
id : 1
pos_x : 445.835395997812
pos_y : 615.1089636184813
pos_z : 125.1448339836911
dir_x : 0.0368711082700674
dir_y : -0.48653048395923415
dir_z : -0.872885221293917
t : 70311446.46401498
E : 99.10458562488608
len : 0.0
lik : 294.6407542676734
type : 0
rec_type : 4000
rec_stages : [1, 3, 5, 4]
status : 0
mother_id : -1
hit_ids : []
error_matrix : []
comment : 0
JGANDALF_BETA0_RAD : 0.004957442219414389
JGANDALF_BETA1_RAD : 0.003417848024252858
JGANDALF_CHI2 : -294.6407542676734
JGANDALF_NUMBER_OF_HITS : 142.0
JENERGY_ENERGY : 99.10458562488608
JENERGY_CHI2 : 1.7976931348623157e+308
JGANDALF_LAMBDA : 4.2409761837248484e-12
JGANDALF_NUMBER_OF_ITERATIONS : 10.0
JSTART_NPE_MIP : 24.88469697331908
JSTART_NPE_MIP_TOTAL : 55.88169412579765
JSTART_LENGTH_METRES : 98.89582506402911
JVETO_NPE : 0.0
JVETO_NUMBER_OF_HITS : 0.0
JENERGY_MUON_RANGE_METRES : 344.9767431592819
JENERGY_NOISE_LIKELIHOOD : -333.87773581129136
JENERGY_NDF : 1471.0
JENERGY_NUMBER_OF_HITS : 101.0
%% Cell type:code id: tags:
```
python
r
[
0
].
tracks
[
0
].
lik
```
%% Output
294.6407542676734
%% Cell type:code id: tags:
```
python
r
.
mc_hits
```
%% Output
<OfflineHits: 10 parsed elements>
%% Cell type:code id: tags:
```
python
r
.
mc_tracks
.
```
%% Output
<OfflineTracks: 10 parsed elements>
%% Cell type:code id: tags:
```
python
r
.
mc_hits
.
```
%% Cell type:code id: tags:
```
python
```
This diff is collapsed.
Click to expand it.
notebooks/
Aanet
Reader_tutorial.ipynb
→
notebooks/Reader_tutorial.ipynb
+
29
−
145
View file @
24ac1230
...
...
@@ -28,7 +28,7 @@
"metadata": {},
"outputs": [],
"source": [
"from km3io import
Aanet
Reader"
"from km3io
.aanet
import Reader"
]
},
{
...
...
@@ -44,7 +44,7 @@
},
{
"cell_type": "code",
"execution_count":
12
,
"execution_count":
4
,
"metadata": {
"scrolled": true
},
...
...
@@ -52,130 +52,16 @@
{
"data": {
"text/plain": [
"Events keys are:\n",
"\tid\n",
"\tdet_id\n",
"\tmc_id\n",
"\trun_id\n",
"\tmc_run_id\n",
"\tframe_index\n",
"\ttrigger_mask\n",
"\ttrigger_counter\n",
"\toverlays\n",
"\thits\n",
"\ttrks\n",
"\tw\n",
"\tw2list\n",
"\tw3list\n",
"\tmc_t\n",
"\tmc_hits\n",
"\tmc_trks\n",
"\tcomment\n",
"\tindex\n",
"\tflags\n",
"\tt.fSec\n",
"\tt.fNanoSec\n",
"Hits keys are:\n",
"\thits.id\n",
"\thits.dom_id\n",
"\thits.channel_id\n",
"\thits.tdc\n",
"\thits.tot\n",
"\thits.trig\n",
"\thits.pmt_id\n",
"\thits.t\n",
"\thits.a\n",
"\thits.pos.x\n",
"\thits.pos.y\n",
"\thits.pos.z\n",
"\thits.dir.x\n",
"\thits.dir.y\n",
"\thits.dir.z\n",
"\thits.pure_t\n",
"\thits.pure_a\n",
"\thits.type\n",
"\thits.origin\n",
"\thits.pattern_flags\n",
"Tracks keys are:\n",
"\ttrks.fUniqueID\n",
"\ttrks.fBits\n",
"\ttrks.usr_data\n",
"\ttrks.usr_names\n",
"\ttrks.id\n",
"\ttrks.pos.x\n",
"\ttrks.pos.y\n",
"\ttrks.pos.z\n",
"\ttrks.dir.x\n",
"\ttrks.dir.y\n",
"\ttrks.dir.z\n",
"\ttrks.t\n",
"\ttrks.E\n",
"\ttrks.len\n",
"\ttrks.lik\n",
"\ttrks.type\n",
"\ttrks.rec_type\n",
"\ttrks.rec_stages\n",
"\ttrks.status\n",
"\ttrks.mother_id\n",
"\ttrks.fitinf\n",
"\ttrks.hit_ids\n",
"\ttrks.error_matrix\n",
"\ttrks.comment\n",
"Mc hits keys are:\n",
"\tmc_hits.id\n",
"\tmc_hits.dom_id\n",
"\tmc_hits.channel_id\n",
"\tmc_hits.tdc\n",
"\tmc_hits.tot\n",
"\tmc_hits.trig\n",
"\tmc_hits.pmt_id\n",
"\tmc_hits.t\n",
"\tmc_hits.a\n",
"\tmc_hits.pos.x\n",
"\tmc_hits.pos.y\n",
"\tmc_hits.pos.z\n",
"\tmc_hits.dir.x\n",
"\tmc_hits.dir.y\n",
"\tmc_hits.dir.z\n",
"\tmc_hits.pure_t\n",
"\tmc_hits.pure_a\n",
"\tmc_hits.type\n",
"\tmc_hits.origin\n",
"\tmc_hits.pattern_flags\n",
"Mc tracks keys are:\n",
"\tmc_trks.fUniqueID\n",
"\tmc_trks.fBits\n",
"\tmc_trks.usr_data\n",
"\tmc_trks.usr_names\n",
"\tmc_trks.id\n",
"\tmc_trks.pos.x\n",
"\tmc_trks.pos.y\n",
"\tmc_trks.pos.z\n",
"\tmc_trks.dir.x\n",
"\tmc_trks.dir.y\n",
"\tmc_trks.dir.z\n",
"\tmc_trks.t\n",
"\tmc_trks.E\n",
"\tmc_trks.len\n",
"\tmc_trks.lik\n",
"\tmc_trks.type\n",
"\tmc_trks.rec_type\n",
"\tmc_trks.rec_stages\n",
"\tmc_trks.status\n",
"\tmc_trks.mother_id\n",
"\tmc_trks.fitinf\n",
"\tmc_trks.hit_ids\n",
"\tmc_trks.error_matrix\n",
"\tmc_trks.comment"
"<Reader: 10 entries>"
]
},
"execution_count":
12
,
"execution_count":
4
,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"reader =
Aanet
Reader(aanet_file)\n",
"reader = Reader(aanet_file)\n",
"reader"
]
},
...
...
@@ -189,8 +75,6 @@
"text/plain": [
"['trks.fUniqueID',\n",
" 'trks.fBits',\n",
" 'trks.usr_data',\n",
" 'trks.usr_names',\n",
" 'trks.id',\n",
" 'trks.pos.x',\n",
" 'trks.pos.y',\n",
...
...
@@ -219,7 +103,7 @@
}
],
"source": [
"reader.tracks_keys"
"reader.
keys.
tracks_keys"
]
},
{
...
...
@@ -230,7 +114,7 @@
{
"data": {
"text/plain": [
"<Table [<Row 0> <Row 1> <Row 2> ... <Row 7> <Row 8> <Row 9>] at 0x7f
83f9d62c1
0>"
"<Table [<Row 0> <Row 1> <Row 2> ... <Row 7> <Row 8> <Row 9>] at 0x7f
ed2d98a75
0>"
]
},
"execution_count": 6,
...
...
@@ -240,7 +124,7 @@
],
"source": [
"# big lazyarray with ALL file data!\n",
"lazy_data = reader._
lazy_
data\n",
"lazy_data = reader._data\n",
"lazy_data"
]
},
...
...
@@ -252,7 +136,7 @@
{
"data": {
"text/plain": [
"<ChunkedArray [5971 5971 5971 ... 5971 5971 5971] at 0x7f
83f9d2cd
d0>"
"<ChunkedArray [5971 5971 5971 ... 5971 5971 5971] at 0x7f
ed2d91f9
d0>"
]
},
"execution_count": 7,
...
...
@@ -309,7 +193,7 @@
},
{
"cell_type": "code",
"execution_count": 1
5
,
"execution_count": 1
0
,
"metadata": {},
"outputs": [],
"source": [
...
...
@@ -330,16 +214,16 @@
},
{
"cell_type": "code",
"execution_count": 1
4
,
"execution_count": 1
1
,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [[806451572 806451572 806451572 ... 809544061 809544061 809544061] [806451572 806451572 806451572 ... 809524432 809526097 809544061] [806451572 806451572 806451572 ... 809544061 809544061 809544061] ... [806451572 806455814 806465101 ... 809526097 809544058 809544061] [806455814 806455814 806455814 ... 809544061 809544061 809544061] [806455814 806455814 806455814 ... 809544058 809544058 809544061]] at 0x7f
83f9a1389
0>"
"<ChunkedArray [[806451572 806451572 806451572 ... 809544061 809544061 809544061] [806451572 806451572 806451572 ... 809524432 809526097 809544061] [806451572 806451572 806451572 ... 809544061 809544061 809544061] ... [806451572 806455814 806465101 ... 809526097 809544058 809544061] [806455814 806455814 806455814 ... 809544061 809544061 809544061] [806455814 806455814 806455814 ... 809544058 809544058 809544061]] at 0x7f
ed2d8af45
0>"
]
},
"execution_count": 1
4
,
"execution_count": 1
1
,
"metadata": {},
"output_type": "execute_result"
}
...
...
@@ -352,7 +236,7 @@
},
{
"cell_type": "code",
"execution_count": 1
6
,
"execution_count": 1
2
,
"metadata": {},
"outputs": [
{
...
...
@@ -371,7 +255,7 @@
" dtype=int32)"
]
},
"execution_count": 1
6
,
"execution_count": 1
2
,
"metadata": {},
"output_type": "execute_result"
}
...
...
@@ -384,7 +268,7 @@
},
{
"cell_type": "code",
"execution_count": 1
7
,
"execution_count": 1
3
,
"metadata": {},
"outputs": [
{
...
...
@@ -393,7 +277,7 @@
"60"
]
},
"execution_count": 1
7
,
"execution_count": 1
3
,
"metadata": {},
"output_type": "execute_result"
}
...
...
@@ -407,7 +291,7 @@
},
{
"cell_type": "code",
"execution_count": 1
8
,
"execution_count": 1
4
,
"metadata": {},
"outputs": [
{
...
...
@@ -416,7 +300,7 @@
"806455814"
]
},
"execution_count": 1
8
,
"execution_count": 1
4
,
"metadata": {},
"output_type": "execute_result"
}
...
...
@@ -435,16 +319,16 @@
},
{
"cell_type": "code",
"execution_count": 1
9
,
"execution_count": 1
5
,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<ChunkedArray [[-0.872885221293917 -0.872885221293917 -0.872885221293917 ... -0.6631226836266504 -0.5680647731737454 -0.5680647731737454] [-0.8351996698137462 -0.8351996698137462 -0.8351996698137462 ... -0.7485107718446855 -0.8229838871876581 -0.239315690284641] [-0.989148723802379 -0.989148723802379 -0.989148723802379 ... -0.9350162572437829 -0.88545604390297 -0.88545604390297] ... [-0.5704611045902105 -0.5704611045902105 -0.5704611045902105 ... -0.9350162572437829 -0.4647231989130516 -0.4647231989130516] [-0.9779941383490359 -0.9779941383490359 -0.9779941383490359 ... -0.88545604390297 -0.88545604390297 -0.8229838871876581] [-0.7396916780974963 -0.7396916780974963 -0.7396916780974963 ... -0.6631226836266504 -0.7485107718446855 -0.7485107718446855]] at 0x7f
83f9b65f9
0>"
"<ChunkedArray [[-0.872885221293917 -0.872885221293917 -0.872885221293917 ... -0.6631226836266504 -0.5680647731737454 -0.5680647731737454] [-0.8351996698137462 -0.8351996698137462 -0.8351996698137462 ... -0.7485107718446855 -0.8229838871876581 -0.239315690284641] [-0.989148723802379 -0.989148723802379 -0.989148723802379 ... -0.9350162572437829 -0.88545604390297 -0.88545604390297] ... [-0.5704611045902105 -0.5704611045902105 -0.5704611045902105 ... -0.9350162572437829 -0.4647231989130516 -0.4647231989130516] [-0.9779941383490359 -0.9779941383490359 -0.9779941383490359 ... -0.88545604390297 -0.88545604390297 -0.8229838871876581] [-0.7396916780974963 -0.7396916780974963 -0.7396916780974963 ... -0.6631226836266504 -0.7485107718446855 -0.7485107718446855]] at 0x7f
ed2d8b885
0>"
]
},
"execution_count": 1
9
,
"execution_count": 1
5
,
"metadata": {},
"output_type": "execute_result"
}
...
...
@@ -456,7 +340,7 @@
},
{
"cell_type": "code",
"execution_count":
20
,
"execution_count":
16
,
"metadata": {},
"outputs": [
{
...
...
@@ -476,7 +360,7 @@
" -0.97094183])"
]
},
"execution_count":
20
,
"execution_count":
16
,
"metadata": {},
"output_type": "execute_result"
}
...
...
@@ -489,7 +373,7 @@
},
{
"cell_type": "code",
"execution_count":
2
1,
"execution_count": 1
7
,
"metadata": {},
"outputs": [
{
...
...
@@ -498,7 +382,7 @@
"56"
]
},
"execution_count":
2
1,
"execution_count": 1
7
,
"metadata": {},
"output_type": "execute_result"
}
...
...
@@ -512,7 +396,7 @@
},
{
"cell_type": "code",
"execution_count":
22
,
"execution_count":
18
,
"metadata": {},
"outputs": [
{
...
...
@@ -521,7 +405,7 @@
"-0.6024604933159441"
]
},
"execution_count":
22
,
"execution_count":
18
,
"metadata": {},
"output_type": "execute_result"
}
...
...
@@ -552,5 +436,5 @@
}
},
"nbformat": 4,
"nbformat_minor":
2
"nbformat_minor":
4
}
%% Cell type:code id: tags:
```
python
# Add file to current python path
from
pathlib
import
Path
import
sys
sys
.
path
.
append
(
str
(
Path
.
cwd
().
parent
))
Path
.
cwd
()
print
(
sys
.
path
)
```
%% Output
['/home/zineb/km3net/km3net/km3io/notebooks', '/home/zineb/miniconda3/envs/km3pipe/lib/python37.zip', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7/lib-dynload', '', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7/site-packages', '/home/zineb/km3net/km3net/km3io', '/home/zineb/miniconda3/envs/km3pipe/lib/python3.7/site-packages/IPython/extensions', '/home/zineb/.ipython', '/home/zineb/km3net/km3net/km3io']
%% Cell type:code id: tags:
```
python
from
km3io
import
Aanet
Reader
from
km3io
.aanet
import
Reader
```
%% Cell type:code id: tags:
```
python
# test samples directory - aanet test file
files_path
=
Path
.
cwd
().
parent
/
'
tests/samples
'
aanet_file
=
files_path
/
'
aanet_v2.0.0.root
'
```
%% Cell type:code id: tags:
```
python
reader
=
Aanet
Reader
(
aanet_file
)
reader
=
Reader
(
aanet_file
)
reader
```
%% Output
Events keys are:
id
det_id
mc_id
run_id
mc_run_id
frame_index
trigger_mask
trigger_counter
overlays
hits
trks
w
w2list
w3list
mc_t
mc_hits
mc_trks
comment
index
flags
t.fSec
t.fNanoSec
Hits keys are:
hits.id
hits.dom_id
hits.channel_id
hits.tdc
hits.tot
hits.trig
hits.pmt_id
hits.t
hits.a
hits.pos.x
hits.pos.y
hits.pos.z
hits.dir.x
hits.dir.y
hits.dir.z
hits.pure_t
hits.pure_a
hits.type
hits.origin
hits.pattern_flags
Tracks keys are:
trks.fUniqueID
trks.fBits
trks.usr_data
trks.usr_names
trks.id
trks.pos.x
trks.pos.y
trks.pos.z
trks.dir.x
trks.dir.y
trks.dir.z
trks.t
trks.E
trks.len
trks.lik
trks.type
trks.rec_type
trks.rec_stages
trks.status
trks.mother_id
trks.fitinf
trks.hit_ids
trks.error_matrix
trks.comment
Mc hits keys are:
mc_hits.id
mc_hits.dom_id
mc_hits.channel_id
mc_hits.tdc
mc_hits.tot
mc_hits.trig
mc_hits.pmt_id
mc_hits.t
mc_hits.a
mc_hits.pos.x
mc_hits.pos.y
mc_hits.pos.z
mc_hits.dir.x
mc_hits.dir.y
mc_hits.dir.z
mc_hits.pure_t
mc_hits.pure_a
mc_hits.type
mc_hits.origin
mc_hits.pattern_flags
Mc tracks keys are:
mc_trks.fUniqueID
mc_trks.fBits
mc_trks.usr_data
mc_trks.usr_names
mc_trks.id
mc_trks.pos.x
mc_trks.pos.y
mc_trks.pos.z
mc_trks.dir.x
mc_trks.dir.y
mc_trks.dir.z
mc_trks.t
mc_trks.E
mc_trks.len
mc_trks.lik
mc_trks.type
mc_trks.rec_type
mc_trks.rec_stages
mc_trks.status
mc_trks.mother_id
mc_trks.fitinf
mc_trks.hit_ids
mc_trks.error_matrix
mc_trks.comment
<Reader: 10 entries>
%% Cell type:code id: tags:
```
python
reader
.
tracks_keys
reader
.
keys
.
tracks_keys
```
%% Output
['trks.fUniqueID',
'trks.fBits',
'trks.usr_data',
'trks.usr_names',
'trks.id',
'trks.pos.x',
'trks.pos.y',
'trks.pos.z',
'trks.dir.x',
'trks.dir.y',
'trks.dir.z',
'trks.t',
'trks.E',
'trks.len',
'trks.lik',
'trks.type',
'trks.rec_type',
'trks.rec_stages',
'trks.status',
'trks.mother_id',
'trks.fitinf',
'trks.hit_ids',
'trks.error_matrix',
'trks.comment']
%% Cell type:code id: tags:
```
python
# big lazyarray with ALL file data!
lazy_data
=
reader
.
_
lazy_
data
lazy_data
=
reader
.
_data
lazy_data
```
%% Output
<Table [<Row 0> <Row 1> <Row 2> ... <Row 7> <Row 8> <Row 9>] at 0x7f
83f9d62c1
0>
<Table [<Row 0> <Row 1> <Row 2> ... <Row 7> <Row 8> <Row 9>] at 0x7f
ed2d98a75
0>
%% Cell type:code id: tags:
```
python
# getting the run_id for a specific event (event 5 for example)
reader
[
'
run_id
'
]
```
%% Output
<ChunkedArray [5971 5971 5971 ... 5971 5971 5971] at 0x7f
83f9d2cd
d0>
<ChunkedArray [5971 5971 5971 ... 5971 5971 5971] at 0x7f
ed2d91f9
d0>
%% Cell type:code id: tags:
```
python
# one can check how many hits are in event 5
reader
[
5
][
'
hits
'
]
```
%% Output
60
%% Cell type:code id: tags:
```
python
# one can also check how many tracks are in event 5
reader
[
5
][
'
trks
'
]
```
%% Output
56
%% Cell type:code id: tags:
```
python
# # the user is reminded to always specify the "correct" event/hits/tracks
# # key in the Aanet event file
# try:
# reader['whatever']
# except KeyError as e:
# print(e)
```
%% Cell type:markdown id: tags:
# Now let's explore in more details the hits:
%% Cell type:code id: tags:
```
python
# reading all data from a specific branch in hits data: for example
# 'hits.dom_id'
reader
[
'
hits.dom_id
'
]
```
%% Output
<ChunkedArray [[806451572 806451572 806451572 ... 809544061 809544061 809544061] [806451572 806451572 806451572 ... 809524432 809526097 809544061] [806451572 806451572 806451572 ... 809544061 809544061 809544061] ... [806451572 806455814 806465101 ... 809526097 809544058 809544061] [806455814 806455814 806455814 ... 809544061 809544061 809544061] [806455814 806455814 806455814 ... 809544058 809544058 809544061]] at 0x7f
83f9a1389
0>
<ChunkedArray [[806451572 806451572 806451572 ... 809544061 809544061 809544061] [806451572 806451572 806451572 ... 809524432 809526097 809544061] [806451572 806451572 806451572 ... 809544061 809544061 809544061] ... [806451572 806455814 806465101 ... 809526097 809544058 809544061] [806455814 806455814 806455814 ... 809544061 809544061 809544061] [806455814 806455814 806455814 ... 809544058 809544058 809544061]] at 0x7f
ed2d8af45
0>
%% Cell type:code id: tags:
```
python
# the user can access hits.dom_id data for a specific event (for example
# event 5)
reader
[
'
hits.dom_id
'
][
5
]
```
%% Output
array([806455814, 806487219, 806487219, 806487219, 806487226, 808432835,
808432835, 808432835, 808432835, 808432835, 808432835, 808432835,
808451904, 808451904, 808451907, 808451907, 808469129, 808469129,
808469129, 808493910, 808949744, 808949744, 808951460, 808951460,
808956908, 808961655, 808964908, 808969848, 808969857, 808972593,
808972593, 808972598, 808972598, 808972698, 808972698, 808974758,
808974811, 808976377, 808981510, 808981523, 808981812, 808982005,
808982005, 808982018, 808982077, 808982077, 808982547, 809007627,
809521500, 809521500, 809521500, 809524432, 809526097, 809526097,
809526097, 809526097, 809526097, 809526097, 809526097, 809544058],
dtype=int32)
%% Cell type:code id: tags:
```
python
# We previsouly checked (using reader[5]['hits']) that event
# 5 has 60 hits, now we can see that reader['hits.dom_id'][5]
# has exaclty 60 dom ids as well!
len
(
reader
[
'
hits.dom_id
'
][
5
])
```
%% Output
60
%% Cell type:code id: tags:
```
python
# one can access a dom id of the first hit
reader
[
'
hits.dom_id
'
][
5
][
0
]
```
%% Output
806455814
%% Cell type:markdown id: tags:
# Now let's explore in more details the tracks:
%% Cell type:code id: tags:
```
python
# reading all data from a specific branch in tracks data:
reader
[
'
trks.dir.z
'
]
```
%% Output
<ChunkedArray [[-0.872885221293917 -0.872885221293917 -0.872885221293917 ... -0.6631226836266504 -0.5680647731737454 -0.5680647731737454] [-0.8351996698137462 -0.8351996698137462 -0.8351996698137462 ... -0.7485107718446855 -0.8229838871876581 -0.239315690284641] [-0.989148723802379 -0.989148723802379 -0.989148723802379 ... -0.9350162572437829 -0.88545604390297 -0.88545604390297] ... [-0.5704611045902105 -0.5704611045902105 -0.5704611045902105 ... -0.9350162572437829 -0.4647231989130516 -0.4647231989130516] [-0.9779941383490359 -0.9779941383490359 -0.9779941383490359 ... -0.88545604390297 -0.88545604390297 -0.8229838871876581] [-0.7396916780974963 -0.7396916780974963 -0.7396916780974963 ... -0.6631226836266504 -0.7485107718446855 -0.7485107718446855]] at 0x7f
83f9b65f9
0>
<ChunkedArray [[-0.872885221293917 -0.872885221293917 -0.872885221293917 ... -0.6631226836266504 -0.5680647731737454 -0.5680647731737454] [-0.8351996698137462 -0.8351996698137462 -0.8351996698137462 ... -0.7485107718446855 -0.8229838871876581 -0.239315690284641] [-0.989148723802379 -0.989148723802379 -0.989148723802379 ... -0.9350162572437829 -0.88545604390297 -0.88545604390297] ... [-0.5704611045902105 -0.5704611045902105 -0.5704611045902105 ... -0.9350162572437829 -0.4647231989130516 -0.4647231989130516] [-0.9779941383490359 -0.9779941383490359 -0.9779941383490359 ... -0.88545604390297 -0.88545604390297 -0.8229838871876581] [-0.7396916780974963 -0.7396916780974963 -0.7396916780974963 ... -0.6631226836266504 -0.7485107718446855 -0.7485107718446855]] at 0x7f
ed2d8b885
0>
%% Cell type:code id: tags:
```
python
# the user can access trks.dir.z data for a specific event (for example
# event 5)
reader
[
'
trks.dir.z
'
][
5
]
```
%% Output
array([-0.60246049, -0.60246049, -0.60246049, -0.51420541, -0.5475772 ,
-0.5772408 , -0.56068238, -0.64907684, -0.67781799, -0.66565114,
-0.63014839, -0.64566464, -0.62691012, -0.58465493, -0.59287533,
-0.63655091, -0.63771247, -0.73446841, -0.7456636 , -0.70941246,
-0.66312268, -0.66312268, -0.56806477, -0.56806477, -0.66312268,
-0.66312268, -0.74851077, -0.74851077, -0.66312268, -0.74851077,
-0.56806477, -0.74851077, -0.66312268, -0.74851077, -0.56806477,
-0.66312268, -0.56806477, -0.66312268, -0.56806477, -0.56806477,
-0.66312268, -0.74851077, -0.66312268, -0.93501626, -0.56806477,
-0.74851077, -0.66312268, -0.56806477, -0.82298389, -0.74851077,
-0.66312268, -0.56806477, -0.82298389, -0.56806477, -0.66312268,
-0.97094183])
%% Cell type:code id: tags:
```
python
# We previsouly checked (using reader[5]['trks']) that event
# 5 has 56 tracks, now we can see that reader['trks.dir.z'][5]
# has exaclty 56 values of trks.dir.z as well!
len
(
reader
[
'
trks.dir.z
'
][
5
])
```
%% Output
56
%% Cell type:code id: tags:
```
python
# one can access the first trks.dir.z from event 5 using
reader
[
'
trks.dir.z
'
][
5
][
0
]
```
%% Output
-0.6024604933159441
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment