topasgraphsim

A GUI to simplify and streamline the plotting and analysis of medical physics simulations

https://github.com/sebasj13/topasgraphsim

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.0%) to scientific vocabulary

Keywords

monte-carlo-simulation python tkinter-gui topas topasmc
Last synced: 6 months ago · JSON representation ·

Repository

A GUI to simplify and streamline the plotting and analysis of medical physics simulations

Basic Info
Statistics
  • Stars: 17
  • Watchers: 1
  • Forks: 2
  • Open Issues: 1
  • Releases: 69
Topics
monte-carlo-simulation python tkinter-gui topas topasmc
Created about 4 years ago · Last pushed about 1 year ago
Metadata Files
Readme License Citation

README.md

TopasGraphSim

A GUI to simplify and streamline the plotting and analysis of medical physics simulations

This GUI can visualize and analyze percentage depth dose (pdd) and dose profiles (dp) simulations from TOPAS. Depth dose measurements are assumed to be in the z-direction, dose profiles in the x- or y-directions. Data read-in is handled by topas2numpy.

Installation

Install using pip:

console $ pip install topasgraphsim

Then, start the GUI by running:

console $ python -m topasgraphsim

Or, if your Python is added to $PATH, simply run:

console $ topasgraphsim

Open compatible files from the command line:

console $ topasgraphsim "path_to_your_file"

Since all my testing in done on Windows 11, I cannot guarantee ToapsGrapSim will work on any other plattform. I'm open to suggestions or PRs making the software work better cross-plattfrom!

Features

Visit the wiki for detailed information!

Highlights include:

  • Reproducible graphing and analysis of 1D TOPAS simulation for medical physics
  • Simultaneous plotting and parameter calculation for all data sets
  • Calculation of the Gamma Index with adjustable parameters
  • Graph adjustment options
    • Normalization (On/Off)
    • Error bars (On/Off)
    • Graph order and colors
    • Marker size and style
    • Line width
  • Drag and drop of files
  • Center axis deviation correction
  • Import of RadCalc OAR and PDD data, RayStation and Eclipse depth doses and dose profiles, and Slicer line profiles
  • Import of custom measurements (as numpy .txt files)
  • Import of PTW tbaScan (MEPHYSTO mc2) measurements
  • German and english language support
  • Dark mode

## Screenshots

main

tab

## Parameters

Depending on the imported measurement, the following parameters can be calculated:

| Measurement type | Parameters | | | | | | | ---------------- | :--------: | :---------------: | :--------------------: | :-------------------: | :------------: | :------------: | | | | | | | | | | Depth dose | Q-Factor | zmax | | | | | | | | | | | | | | Dose profile | FWHM | CAXdev | FLATKrieger | FLATstddev | Penumbra (L&R) | Integral (L&R) |

  • Q-Factor : Radiation Quality Factor
  • zmax : Depth at Maximum

  • FWHM : Full-Width at Half-Maximum

  • CAXdev : Centre Axis Deviation

  • FLATKrieger : Flatness of Dose Plateau (Definition by Krieger)

  • FLATstddev : Flatness of Dose Plateau (Standard Deviation)

  • Penumbra (L&R) : Width of Left and Right Penumbra

  • Integral (L&R) : Integral below Left and Right Penumbra

Dependencies

The UI is based on the customtkinter library.

Requires python3, numpy, scipy, matplotlib, Pillow, python-opencv, pynput, requests, topas2numpy, and python-tkdnd.

Contact me!

Thank you for using TopasGraphSim! Please let me know about any issues you encounter, or suggestions/wishes you might have!

Downloads

Owner

  • Name: Sebastian Schäfer
  • Login: sebasj13
  • Kind: user
  • Location: Hamburg
  • Company: Universitätsklinikum Hamburg-Eppendorf

Medical physicist and Python enthusiast.

Citation (CITATION.cff)

cff-version: 1.2.0
title: TopasGraphSim
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Sebastian Schäfer
    email: sebastian.schaefer@student-uni-halle.de
    affiliation: Martin-Luther-Universität Halle-Wittenberg
repository-code: 'https://pypi.org/project/topasgraphsim/'
url: 'https://github.com/sebasj13/TopasGraphSim'
abstract: >-
  A GUI to simplify and streamline the plotting
  and analysis of medical physics simulations
keywords:
  - TOPAS
  - Monte-Carlo Simulations
  - GUI
  - Python
license: MIT
version: 27.0.0
date-released: '2024-12-04'

GitHub Events

Total
  • Release event: 1
  • Watch event: 1
  • Push event: 8
  • Create event: 1
Last Year
  • Release event: 1
  • Watch event: 1
  • Push event: 8
  • Create event: 1

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 411
  • Total Committers: 3
  • Avg Commits per committer: 137.0
  • Development Distribution Score (DDS): 0.117
Past Year
  • Commits: 112
  • Committers: 2
  • Avg Commits per committer: 56.0
  • Development Distribution Score (DDS): 0.018
Top Committers
Name Email Commits
Sebastian Schäfer s****u@g****m 363
Sebastian Schäfer 8****3 46
Sebastian Schäfer s****r@u****e 2
Committer Domains (Top 20 + Academic)
uke.de: 1

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 46
  • Total pull requests: 38
  • Average time to close issues: 1 day
  • Average time to close pull requests: 1 minute
  • Total issue authors: 3
  • Total pull request authors: 1
  • Average comments per issue: 0.22
  • Average comments per pull request: 0.0
  • Merged pull requests: 38
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • sebasj13 (40)
  • jaschst (5)
  • bwheelz36 (1)
Pull Request Authors
  • sebasj13 (38)
Top Labels
Issue Labels
enhancement (33) bug (5) documentation (2) wontfix (1)
Pull Request Labels
enhancement (28) fix (10) bug (1) documentation (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 104 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 1
  • Total versions: 98
  • Total maintainers: 1
pypi.org: topasgraphsim

GUI to analyze the results of a Monte-Carlo radiation simulation

  • Versions: 98
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 104 Last month
Rankings
Dependent packages count: 7.3%
Stargazers count: 14.5%
Average: 16.5%
Forks count: 19.2%
Downloads: 19.6%
Dependent repos count: 22.1%
Maintainers (1)
Last synced: 6 months ago

Dependencies

setup.py pypi
  • Pillow *
  • matplotlib *
  • numpy *
  • opencv-python *
  • pymedphys *
  • pynput *
  • requests *
  • scipy *
  • topas2numpy *