This repository houses crcrdm – an R package designed to facilitate the analysis of Cancer Screening Models using HPC resources. crcrdm provides an interface between your model and a parallel back-end - an HPC workflow system that orchestrates concurrent model runs. Currently, we use this package with EMEWS. This package aims to make it easier to define and efficiently run large experimental designs, reducing the need to create ad-hoc analytical code for each analysis.

## Installation

This package can be installed from GitHub with:

# install.packages("remotes")
remotes::install_github("c-rutter/crcrdm")

## Status

This package is being actively used by the crcspin model, which itself is not contained in the package. The user pool for this package is very small and we have no plans of releasing it to CRAN at this time. Future iterations of this work might make this package more general. If you would like to use this package and are interested in collaborating with us, get in touch.

## Documentation

A documentation page is available at this link. This documentation page describes the package main classes and their methods.

## Key classes

This package implements two R6 classes:

1. crcmodel : Is the basic unit and encompasses a single model structure. A crcmodel can be either calibrated or not. if it is calibrated, the model object can include the posterior distribution of its parameters. A single model may contain multiple posterior distributions when those parameter sets were created by different calibration runs, with potentially different targets or priors.
2. crcexperiment : Contains the definition of an experiment experiment to be applied over the crcmodels included in it.

## Automated Tests

This package is tested automatically after every commit across a few platforms. Results from these automated checks can be found here. A test coverage report can be found here.