weights_create: Create weights using durations and counts

View source: R/kinfitr_weights.R

weights_createR Documentation

Create weights using durations and counts

Description

This set of methods allows for creating a weighting scheme based on TAC data alone. It is advised to calculate weights once for each PET measurement, using a large region (e.g. whole brain).

Usage

weights_create(
  t_start,
  t_end,
  tac,
  radioisotope = c("C11", "O15", "F18"),
  method = 2,
  minweight = 0.5,
  minweight_risetopeak = FALSE,
  weight_checkn = 5
)

Arguments

t_start

The starting times of the frames in minutes.

t_end

The end times of the frames in minutes.

tac

The time activity curve.

radioisotope

The radioisotope.

method

Which method should be used? 1 represents duration / (tac_uncorrected). 2 represents sqrt(durations*tac_uncorrected). 3 represents duration / tac. 4 represents sqrt(durations). 5 represents durations * exp((-ln(2)) / halflife ). 6 represents durations / tac. 7 represents durations. 8 represents duration^2 / tac_uncor. 9 represents((durations^2 / (durations*tac))*corrections^2) (courtesy of Claus Svarer). Uncorrected refers to decay correction.

minweight

The minimum weight. Weights will be calculated as a fraction between this value and 1. A zero frame with duration=0 will be set to 0 though.

minweight_risetopeak

Should there be a linear rise of the minimum weight to the peak weight value? This means that values before the maximum weight can be below the minweight specified. This is helpful for downweighting noisy values towards the start of the TAC. Defaults to FALSE.

weight_checkn

The number of values of the weights to check to make sure that things haven't gone terribly wrong. It will check that this number of weights are all above half of the maximum weight.

Value

The vector of weights.

Author(s)

Granville J Matheson, mathesong@gmail.com

Examples

data(pbr28)
s1 <- pbr28$tacs[[1]]

weights_create(
  s1$StartTime/60,
  (s1$StartTime + s1$Duration)/60,
  radioisotope = "C11",
  tac = s1$WB)

weights_create(
  s1$StartTime/60,
  (s1$StartTime + s1$Duration)/60,
  radioisotope = "C11", method=9,
  tac = s1$WB)

mathesong/kinfitr documentation built on Jan. 15, 2024, 11:07 p.m.