From 4ffeca35b0252066b16d6eb7c3dc8387a122299c Mon Sep 17 00:00:00 2001 From: zineb aly <aly.zineb.az@gmail.com> Date: Thu, 30 Jan 2020 18:03:01 +0100 Subject: [PATCH] update docs for reco data --- README.rst | 57 ++++++++++++++++++++++++++++++++++--- examples/pictures/reco.png | Bin 15371 -> 15443 bytes 2 files changed, 53 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index 4b14905..8b0d452 100644 --- a/README.rst +++ b/README.rst @@ -602,7 +602,7 @@ to get the reconstruction parameters, first take a look at the available reconst .. code-block:: python3 - >>>r.tracks.reco.dtype.names + >>>r.best_reco.dtype.names ['JGANDALF_BETA0_RAD', 'JGANDALF_BETA1_RAD', 'JGANDALF_CHI2', @@ -625,13 +625,62 @@ the keys above can also be accessed with a tab completion: .. image:: https://git.km3net.de/km3py/km3io/raw/master/examples/pictures/reco.png +to get a numpy `recarray <https://docs.scipy.org/doc/numpy/reference/generated/numpy.recarray.html>`__ of all fit data of the best reconstructed track: + +.. code-block:: python3 + + >>>r.best_reco + to get an array of a parameter of interest, let's say `'JENERGY_ENERGY'`: .. code-block:: python3 - >>>r.tracks.reco['JENERGY_ENERGY'] - >>>array([99.10458562, 99.10458562, 99.10458562, 37.85515249, 99.10458562, - 7.16916787, 99.10458562, 99.10458562, 49.13672986, 20.35137468]) + >>>r.best_reco['JENERGY_ENERGY'] + array([1141.87137899, 4708.16378575, 499.7243005 , 103.54680875, + 208.6103912 , 1336.52338666, 998.87632267, 1206.54345674, + 16.28973662]) + +**Note**: In km3io, the best fit is defined as the track fit with the maximum reconstruction stages. When "nan" is returned, it means that the reconstruction parameter of interest is not found. for example, in the case of muon simulations: if `[1, 2]` are the reconstruction stages, then only the fit parameters corresponding to the stages `[1, 2]` are found in the Offline files, the remaining fit parameters corresponding to the stages `[3, 4, 5]` are all filled with nan. + +to get a numpy recarray of the fit data of tracks with specific reconstruction stages, let's say `[1, 2, 3, 4, 5]` in the case of a muon track reconstruction: + +.. code-block:: python3 + + >>>r.get_reco_fit([1, 2, 3, 4, 5]) + +again, to get the reconstruction parameters names: + +.. code-block:: python3 + + >>>r.get_reco_fit([1, 2, 3, 4, 5]).dtype.names + ('JGANDALF_BETA0_RAD', + 'JGANDALF_BETA1_RAD', + 'JGANDALF_CHI2', + 'JGANDALF_NUMBER_OF_HITS', + 'JENERGY_ENERGY', + 'JENERGY_CHI2', + 'JGANDALF_LAMBDA', + 'JGANDALF_NUMBER_OF_ITERATIONS', + 'JSTART_NPE_MIP', + 'JSTART_NPE_MIP_TOTAL', + 'JSTART_LENGTH_METRES', + 'JVETO_NPE', + 'JVETO_NUMBER_OF_HITS', + 'JENERGY_MUON_RANGE_METRES', + 'JENERGY_NOISE_LIKELIHOOD', + 'JENERGY_NDF', + 'JENERGY_NUMBER_OF_HITS') + +to get the reconstruction data of interest, for example ['JENERGY_ENERGY']: + +.. code-block:: python3 + + >>>r.get_reco_fit([1, 2, 3, 4, 5])['JENERGY_ENERGY'] + array([1141.87137899, 4708.16378575, 499.7243005 , 103.54680875, + 208.6103912 , 1336.52338666, 998.87632267, 1206.54345674, + 16.28973662]) + +**Note**: When the reconstruction stages of interest are not found in all your data file, an error is raised. reading mc hits data diff --git a/examples/pictures/reco.png b/examples/pictures/reco.png index 0906652a6fe790e7f90738fc91401603c32b0866..ce5fa3c6ebef1d541d93ef5a8cf563e024c9d9b7 100644 GIT binary patch literal 15443 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 literal 15371 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 NvXV*?MPe`B|1Xkf4{!hg -- GitLab