Computes the weights to be associated with a set of competing models in order to perform structural PSA.

## Usage

```
struct.psa(
models,
effect,
cost,
ref = NULL,
interventions = NULL,
Kmax = 50000,
plot = FALSE,
w = NULL
)
```

## Arguments

- models
A list containing the output from either R2jags or R2WinBUGS for all the models that need to be combined in the model average

- effect
A list containing the measure of effectiveness computed from the various models (one matrix with n.sim x n.ints simulations for each model)

- cost
A list containing the measure of costs computed from the various models (one matrix with n.sim x n.ints simulations for each model)

- ref
Which intervention is considered to be the reference strategy. The default value

`ref=1`

means that the intervention appearing first is the reference and the other(s) is(are) the comparator(s)- interventions
Defines the labels to be associated with each intervention. By default and if

`NULL`

, assigns labels in the form "Intervention1", ... , "InterventionT"- Kmax
Maximum value of the willingness to pay to be considered. Default value is

`50000`

. The willingness to pay is then approximated on a discrete grid in the interval`[0, Kmax]`

. The grid is equal to`k`

if the parameter is given, or composed of`501`

elements if`k=NULL`

(the default)- plot
A logical value indicating whether the function should produce the summary plot or not

- w
A vector of weights. By default it's NULL to indicate that the function will calculate the model weights based on DIC and the individual model fit. This behaviour can be overridden by passing a vector

`w`

, for instance based on expert opinion

## Details

The model is a list containing the output from either R2jags or R2WinBUGS for all the models that need to be combined in the model average effect is a list containing the measure of effectiveness computed from the various models (one matrix with n_sim x n_ints simulations for each model) cost is a list containing the measure of costs computed from the various models (one matrix with n_sim x n_ints simulations for each model).

## Examples

```
if (FALSE) {
# load sample jags output
load(system.file("extdata", "statins_base.RData", package = "BCEA"))
load(system.file("extdata", "statins_HC.RData", package = "BCEA"))
interventions <- c("Atorvastatin", "Fluvastatin",
"Lovastatin", "Pravastatin",
"Rosuvastatin", "Simvastatin")
m1 <- bcea(eff = statins_base$sims.list$effect,
cost = statins_base$sims.list$cost.tot,
ref = 1, interventions = interventions)
m2 <- bcea(eff = statins_HC$sims.list$effect,
cost = statins_HC$sims.list$cost.tot,
ref = 1, interventions = interventions)
models <- list(statins_base, statins_HC)
effects <- list(statins_base$sims.list$effect,
statins_HC$sims.list$effect)
costs <- list(statins_base$sims.list$cost.tot,
statins_HC$sims.list$cost.tot)
m3 <- struct.psa(models, effects, costs,
ref = 1, interventions = interventions)
}
```