rt.indices.from.bin {espadon}R Documentation

Dosimetry, volume, conformity, homogeneity indices from binary selection

Description

The rt.indices.from.bin function calculates, from a "volume" class object of modality "rtdose", all the standard indicators of radiotherapy, as long as their options are transmitted, for the target and healthy "volume" object of modality "binary".

Usage

rt.indices.from.bin(
  vol,
  target.bin.list = NULL,
  healthy.bin.list = NULL,
  T.MAT = NULL,
  presc.dose = NA,
  healthy.tol.dose = NA,
  healthy.weight = 1,
  dosimetry = c("D.min", "D.max", "D.mean", "STD"),
  volume.indices = c("V.tot", "area", "V.prescdose"),
  conformity.indices = c("PITV", "CI.lomax2003", "CN", "NCI", "DSC", "CI.distance",
    "CI.abs_distance", "CDI", "CS3", "ULF", "OHTF", "gCI", "COIN", "G_COSI", "COSI"),
  homogeneity.indices = c("HI.RTOG.max_ref", "HI.RTOG.5_95", "HI.ICRU.max_min",
    "HI.ICRU.2.98_ref", "HI.ICRU.2.98_50", "HI.ICRU.5.95_ref", "HI.mayo2010",
    "HI.heufelder"),
  gradient.indices = c("GI.ratio.50"),
  D.xpc = NULL,
  D.xcc = NULL,
  V.xpc = NULL,
  V.xGy = NULL,
  verbose = TRUE
)

Arguments

vol

"volume" class object, of "rtdose" modality.

target.bin.list

list of "volume" class objects, of "binary" modality. The $object.alias field of each target.bin.list object represents the name of the selected region of interest of the target volume.

healthy.bin.list

list of "volume" class objects, of "binary" modality. The $object.alias field of each healthy.bin.list object represents the name of the selected region of interest of the healthy tissues.

T.MAT

"t.mat" class object, created by load.patient.from.Rdcm or load.T.MAT. If T.MAT = NULL, all $ref.pseudo of bin.list elements must be equal to vol$ref.pseudo.

presc.dose

vector of prescription doses that serve as reference doses for the target RoI.

healthy.tol.dose

vector of tolerance dose of each healthy RoI.

healthy.weight

Vector of weight, indicating the importance of the healthy RoI.

dosimetry

Vector indicating the requested dose indicators from among 'D.min', 'D.max', 'D.mean' and 'STD'. If D.xpc is different from NULL, it will be added.

volume.indices

Vector indicating the requested volume indices from among 'V.tot', 'V.prescdose' (i.e. volume over presc.dose) and 'area'. If V.xGy is different from NULL, it will be added.

conformity.indices

Vector. Requested conformity indices from among 'PITV', 'PDS', 'CI.lomax2003', 'CN', 'NCI', 'DSC', 'CI.distance', 'CI.abs_distance', 'CDI', 'CS3', 'ULF', 'OHTF', 'gCI', 'COIN', 'COSI' and 'G_COSI'.

homogeneity.indices

Vector. Requested homogeneity indices from among 'HI.RTOG.max_ref', 'HI.RTOG.5_95', 'HI.ICRU.max_min', 'HI.ICRU.2.98_ref', 'HI.ICRU.2.98_50', 'HI.ICRU.5.95_ref', 'HI.mayo2010' and 'HI.heufelder.'

gradient.indices

Vector. Requested gradient indices from among 'GI.ratio.50', 'mGI'.

D.xpc

Vector of the percentage of the volume, for which the dose coverage is requested.

D.xcc

Vector of the volume in \(cm^3\), for which the dose coverage is requested.

V.xpc

Vector of the percentage of the reference dose, received by the volume to be calculated.

V.xGy

Vector of the minimum dose in Gy, received by the volume to be calculated.

verbose

Boolean. if TRUE (default) a progress bar is displayed.

Value

Return a list of indices dataframe. For details, see rt.indices.from.roi.

See Also

rt.indices.from.roi.

Examples

# loading of toy-patient objects (decrease dxyz and increase beam.nb for better
# result)
step <- 5
patient <- toy.load.patient (modality = c("rtdose", "rtstruct"), roi.name = "eye",
                             dxyz = rep (step, 3), beam.nb = 3)
D <- patient$rtdose[[1]]
struct <- patient$rtstruct[[1]]
T.MAT <- patient$T.MAT

# creation of the list of target binary volumes
taget.roi.idx <- select.names (struct$roi.info$roi.pseudo, roi.sname = "ptv")
healthy.roi.idx <- select.names (struct$roi.info$roi.pseudo, roi.sname = "eye")
target.bin.list <- lapply (taget.roi.idx , function (idx) {
  vr <- nesting.roi (D, struct, roi.idx = idx, xyz.margin = c (5, 5, 5),
                     T.MAT = T.MAT, alias = struct$roi.info$name[idx])
  b <- bin.from.roi(vr, struct, roi.idx = idx, T.MAT = T.MAT,
                    alias = struct$roi.info$name[idx])
  })
names (target.bin.list) <- struct$roi.info$name[taget.roi.idx]

healthy.bin.list <- lapply (healthy.roi.idx , function (idx) {
  vr <- nesting.roi (D, struct, roi.idx = idx, xyz.margin = c (5, 5, 5),
                     T.MAT = T.MAT, alias = struct$roi.info$name[idx])
  b <- bin.from.roi(vr, struct, roi.idx = idx, T.MAT = T.MAT,
                    alias = struct$roi.info$name[idx])
})
names (healthy.bin.list) <- struct$roi.info$name[healthy.roi.idx]

indices <- rt.indices.from.bin (D, target.bin.list, healthy.bin.list,
                                presc.dose = 50,
                                conformity.indices = c("PITV", "PDS", "CI.lomax2003", 
                                                       "CN", "NCI", "DSC","COIN"),
                                verbose = FALSE)
indices

[Package espadon version 1.6.0 Index]