Using machine description file - topasmc/dicom-interface GitHub Wiki
Method 1. Using machine description file
see the file: rti/treatment_machines/pbs/rbe_1p1.table
[geometry]
# key value1 value2
SAD(mm) 1800 2000
rangeshifter(mm) 300 300
#rangeshifter(mm) 80 0 #circle
#rangeshifter_wet 1.15
aperture(mm) 400 400
#aperture(mm) 70 0 #circle
[rangeshifter_thickness]
"30mm" 30
"40mm" 40
"50mm" 50
"60mm" 60
"70mm" 70
"80mm" 80
[spot]
# Nominal Energy (MeV), Energy(MeV), Energy Spread (MeV), ratio, xp (rad), yp (rad), x (mm), y (mm)
60.0 60.0 0.0 1.0 0.0 0.0 0.0 0.0
250.0 250.0 0.0 1.0 0.0 0.0 0.0 0.0
[time]
# key value
E(sec) 2
I(nA) 2
dT_up(ms) 3
dT_down(ms) 3
set_x(ms) 0.005
set_y(ms) 0.005
velocity_x(m/sec) 30
velocity_y(m/sec) 3
The file consists of sections and key-value pairs in each section. Currently keys are hard-coded so you cannot change except for [rangeshifter_thickness]
. #
character is reserved for comment.
We support four-sections, such as [geometry]
, [rangeshifter_thickness]
, [spot]
, and [time]
.
[geometry]
SAD(mm) sad_x sad_y
: source to axis distance for x and y axis, respectivelyrangeshifter(mm) val1 val2
: cross-sectional dimension of range shifter, ifval2
is0
, range shifter is considered as cylinder. For non zeroval2
, a box rangeshifter is created.rangeshifter_wet val
: Unlike TPS, MC tracks particles through physical rangeshifters mostly. If the range-shifter's thickness is given in water equivalent in your DICOM RT-Ion, theval
will be used to calculate the physical thickness.aperture(mm) val1 val2
: cross-sectional dimension of aperture, ifval2
is0
, aperture is considered as cylinder. For non zeroval2
, a box type aperture is created.
[rangeshifter-thickness]
This section can be omiited if your DICOM-RT Ion gives the thickness value in water equivalent value (300A,0366). However, depending on TPS and institute, the RangeShifter ID is often used to imply the thickness. This section describes how to convert range-shifter ID to physical thickness in mm.
"key" val
:"key"
is rangeshifter ID andval
is its thickness.
[spot]
This specifies the conversion rule from Nominal Beam Energy
(300A,0114) to the specification of beamlet distribution functions, e.g., mean and std of a spatial distribution, momentum direction distribution, and MU or NP to number of histories to be simulated.
key
:Nominal Beam Energy
in a control point.val1 val2
: mean and std of energy distribution, respectively.val3
: conversion ratio of number of histories to be simulated per MU or NP.val4 val4
: std of direction cosine of X-Yval5 val6
: std of spatial distribution at SID. Ifval4
andval5
are ommited, FWHM/2.355 will be taken for this distribution.
[time]
Parameters to calculate time-structure of beam on/off.
E(sec) val
: Time required for energy changingI(nA) val
: Constant beam current. beam-on time is calculated NP/val
or MU/val
dT_up(ms) val
: pulse latency to ondT_down(ms) val
: pulse latency to offset_x(ms) val
: pulse settling time in xset_y(ms) val
: pulse settling time in yvelocity_x(m/sec) val
: scan speed along x axisvelocity_y(m/sec) val
: scan speed along y axis
Thus, Beam on time is MU/I(nA)
or NP/I(nA)
. Beam off time is the sum of energy changing, latency (on-off), spot settling time, and spot moving time. However, when energy is changed, the latency, settling time, and moving time will be included in energy changing time.
To test your machine description file with command line tool, see below chapter 3.