Skip to content

Towards a usable jsonl representation of the photonstream #77

@maxnoe

Description

@maxnoe

When doing the photonstream analysis @KevSed encountered many issues with the current photonstream json lines format.

So many that this is practically unusable without software that tries to fix missing information or convert the different coordinate systems.

I think we want that the photonstream jsonl represenation is usable on it's own, without any fancy software.

I would want that for a simple analysis, nothing more than

import json
import gzip

for event in map(json.loads, gzip.open('file.phs.gz')):
    # do stuff

Is necessary.

Also the keys are named in a strange mixture of CamelCase/snake_case and differently from our other tools (pyfact, fact-tools)

Proposal for a new structure, to be implemented in FACT-Tools

For observations:

  • night
  • run_id
  • event_num
  • timestamp (UnixTimeUTC converted to ISO8601
  • trigger_type
  • pointing_az_unit: {"unit": "deg", "value": ""}
  • pointing_zd_unit: {"unit": "deg", "value": ""}
  • saturated_pixes
  • photon_arrivals: {"unit": "500ps", "values": [[...], ...]}

For simulations

  • night
  • event_num
  • reuse
  • pointing_az_unit: {"unit": "deg", "value": ""}
  • pointing_zd_unit: {"unit": "deg", "value": ""}
  • source_az_unit: {"unit": "deg", "value": ""}
  • source_zd_unit: {"unit": "deg", "value": ""}
  • saturated_pixes
  • photon_arrivals: {"unit": "500ps", "values": [[...], ...]}
  • true_energy

More simulation truths values could be added, but these are the ones needed to perform event reconstruction.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions