Skip to content
/ desist Public

desist: Discrete Event Simulation for In Silico Trials: create, run, and analyse in silico clinical trials with ease 💉

License

Notifications You must be signed in to change notification settings

UvaCsl/desist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

desist: Discrete Event Simulation for In Silico Trials

desist

desist manages running large-scale simulation pipelines for event-based in silico clinical trials, where it supports users in creating, running, and analysing in silico trials. The application assumes the underlying simulation events are implemented in containerised environments, i.e. using either Docker or Singularity, and coupled using the provided EventHandler API. desist implements various Runners to evaluate the simulations---either sequentially or (massively) parallel---on a variety of environments: ranging from local machines to cloud-computing and HPC architectures, where GNU Parallel and/or QCG-PilotJob are leveraged for scheduling, distribution, and parallelisation of the individual simulation events.

The desist packages was originally developed to manage the in silico simulations pipelines within the INSIST project and later made publicly available for extensions to other event-based in silico simulation pipelines. For more information, see the accompanying publication.

Installation

The package requires a recent Python version (>=3.8). For a development version it is recommended to setup the package within a virtual environment. Then, to install the package within the virtual environment:

pip install -e .

To enable the QCG-PilotJob runner you can include the [qcg] feature:

pip install -e .[qcg]

To verify the installation, run desist --help from the virtual environment and you should see the command-line application's usage instructions.

Usage

General usage instructions are printed using desist --help or more specifically per command desist <command> --help. Typical usage involves mostly the trial command and the create, run, and outcome subcommands.

For more more detailed usage instructions and examples how to use and customise desist, please refer to the hosted documentation (#18) or create the documentation locally using make docs or browsing the (raw) source files in docs/source/.

Development and contribution

Contributions to desist are welcomed and making pull requests is encouraged. In case you are unsure about your feature, feel free to open an issue first for discussion, before writing/submitting your pull request.

During development you might want to install the additional dependencies for testing purposes, through pip install -e .[dev]. The test suite can be evaluated through pytest.

Support

For bugs, issues, or other problems experienced with desist please open an issue and we will try to help to resolve them.

Acknowledgements

When using desist for your research project, please cite: des-ist: A Simulation Framework to Streamline Event-Based In Silico Trials (DOI: 10.1007/978-3-030-77967-2_53). The corresponding .bib file is provided in references.bib.

Please make sure to properly acknowledge GNU Parallel or QCG-PilotJob depending on your usage:

Publications using desist:

About

desist: Discrete Event Simulation for In Silico Trials: create, run, and analyse in silico clinical trials with ease 💉

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages