Software Documentation
The simulation software is written in Java. UML 2.4 Standard was used to document the software.
Context View

The simulation setup that shall be simulated is defined in a configuration file in the XML (Extensible Markup Language) format. The technical information (duration of the simulation and interval for saving the current status of the simulated system) is defined in a separate xml file. The structure of both files is specified by a XML schema. At the start of the simulation CaTSiT reads both files and creates all necessary components to simulate the configured simulation setup. Simulation results are saved in a spreadsheet file.
Component View
CaTSiT consists of four main packages: machine, base, io and support.

machine
The package machine
contains all classes that are necessary to manage a simulation run,
such as event lists and the simulation controller (see class diagram 7) that starts and controls the
simulation process.
base
The base
package is the main package for all model specific classes such as continuous
and discrete compartment, host organ and events (see class diagram 1).
The subpackage eventactions
contains all specific event actions that implement the
concrete actions that are performed when an event is executed. It is further divided into the subpackages
localeventactions
that contains all local event actions such as resection and tumor
progression event actions and globaleventactions
that contains all global event actions
such as global treatments (see class diagram 2).
The subpackage distribution
contains classes for uniform and Gaussian distribution (see class diagram 3).
Distributions are used to define the duration and start size of dormancy phases and to define the
time until a specific event occurs. The subpackage treatments
contains all classes that
hold the parametrized data for global treatments such as chemotherapy and radiation therapy (see class diagram 4).
The subpackage conditions
contains the classes TimeCondition
and
SizeCondition
that are used to apply changing characteristics to discrete compartments (see class diagram 1).
io
The subpackage xml
contains classes to read the configured simulation setup from a xml file.
The subpackage excel
contains classes to write the simulation results into a spreadsheet (see class diagram 6) and
to merge two single spreadsheets into one file (see class diagram 7).
support
The support
package provides supporting classes such as functions (see class diagram 5), random number
generators (see class diagram 4), special mathematical functions and histogram generators.
Class diagrams
Please note that not all attributes, associations (solid arrows) and dependencies (dashed arrows) are shown in the class diagrams to improve clarity.
1 - Continuous and discrete compartments |
2 - Local and global event actions |
![]() |
![]() |
3 - Distributions and random number generators |
4 - Treatments |
![]() |
![]() |
5 - Functions |
6 - Excel writer |
![]() |
![]() |
7 - Simulation controller |
|
![]() |
Runtime View
The class CaTSiT
contains the main
method and creates the SimController
that manages and controls the simulation process.
