In radiation oncology, ionizing radiation is used to control or kill tumours while sparing healthy tissue. These goals are often conflicting, and various optimization strategies, alternative visualizations and quantitative evaluation tools are used to arrive at clinically acceptable treatment plans. Several treatment planning systems are commercially available for producing and evaluating treatment plans.
One such system is RayStation from RaySearch Laboratories. RayStation is built in C# and C++ on Microsoft .NET, and includes functionality to delineate patient organs in 3D, calculate radiation dose to patient voxels, and optimize the treatment relative to specified objective functions.
In this talk, we present the design and design rationale of the addition of IronPython scripting capabilities to RayStation, both as they can be used in clinical everyday work and in research. We also give an overview of some scientific tools and visualization libraries currently available for IronPython such as IronLab, NumPy for .NET and SciPy for .NET as applicable to radiation therapy research.
Alternative designs considered, implemented and discarded in previous versions of RayStation are discussed, as well as possible future directions.
Some details are given on the risk analysis and safety of the python scripting layer. The design of the python scripting layer for RayStation is applicable to scripting additions to other safety-critical software.