Software structure: Difference between revisions

From pCT
(Talk to Automatic Differentiation with CoDiPack)
Line 9: Line 9:
== Software Modules ==
== Software Modules ==
[[File:Software-task-sequence.png]]
[[File:Software-task-sequence.png]]
== Optimisation ==
* Intro to Automatic Differentiation with CoDiPack, Max Aehle, 2021-03-22 [[Media:IntroToAutomaticDifferentiationWithCoDiPack_Max_Aehle_2021-03-22.pdf]]


=== Main data path ===
=== Main data path ===

Revision as of 10:17, 22 March 2021

This is a brainstorming document for the general software structure of the pCT project and the operation of the full pipeline.

General guidelines

  • support multiple programming languages
  • open for the programming tools best suited for a specific purpose and development group
  • use common/open source packages where ever possible
  • every component comes with a unit test

Software Modules

Software-task-sequence.png

Optimisation

Main data path

  • Simulation
    • Beam Simulation
    • Phantom Simulation
    • Detector Propagation
  • Detector Response Simulation
  • Readout Simulation
  • Readout and Raw Data reconstruction
    • pct-online
  • Detector Reconstruction
    • Most likely entrance step and hull algorithm needed for the single-sided setup
    • Clustering and Tracking
  • Phantom reconstruction
  • Imaging

SignalChain.png

Utilities

  • Visualization
  • Control
  • Monitoring

Contact information of maintainers/experts for each software module

Build system and package management

Common software modules

Data model

Common IO

IPC

Logging

Control