Git Product home page Git Product logo

pk_model's Introduction

Run unit tests for pkmodel BCH compliance codecov Documentation Status License: MIT

PK_Model, a pharmacokinetic model developed by students on the Oxford Interdisciplinary Bioscience DTP

This is a package to run a user-specifed pharmacokinetic model (PK model). The user can specify the number of peripheral compartment around a central compartment, a dosing type (I.V. or S.C.), and a dosing protocol. A solver will solve the differential equations that model the pharmacokinetics of the compartments, and graphs comparing the solutions of different model parameters will be outputted.

The package is pip installable and can be run on the latest windows, ubuntu and macos operating systems.

Quickstart

  1. First clone or fork this repository and navigate to the repository's top directory
git clone https://github.com/Down-To-Programme/PK_Model.git
cd PK_Model
  1. We recommend that you create a virtual environment with python versons 3.6+ to use our package. Tests are run continuously on these python versions to ensure the package works, but previous versions are not tested.
python3 –m venv venv
source venv/bin/activate
  1. To install requirements and dependencies, you can use our setup.py file by typing:

pip install –e .

Running the model

[Most user-friendly option] You can run an interactive script that will take you through the different steps needed to specify the parameters of the PK model. It will then generate a plot, giving you the options to compare two different models and to save the generated figure. Run this script from the command line with:

python interactive_pkmodel.py

Or you can run an example model from the command line with:

python try_out_script.py

Alternatively you can pip install the dtp-pkmodel package with:

pip install dtp-pkmodel

open your python interpreter and import:

python
>>> import pkmodel

Directory structure

.
├── LICENSE
├── README.md
├── build
│   ├── bdist.macosx-10.15-x86_64
│   └── lib
│       └── pkmodel
│           ├── __init__.py
│           ├── model.py
│           ├── protocol.py
│           ├── solution.py
│           ├── tests
│           │   ├── __init__.py
│           │   ├── test_model.py
│           │   ├── test_pipeline.py
│           │   ├── test_protocol.py
│           │   └── test_solution.py
│           └── version_info.py
├── dist
│   ├── dtp_pkmodel-1.0.1-py3-none-any.whl
│   └── dtp_pkmodel-1.0.1.tar.gz
├── docs
│   ├── Makefile
│   ├── conf.py
│   ├── index.rst
│   └── make.bat
├── dtp_pkmodel.egg-info
│   ├── PKG-INFO
│   ├── SOURCES.txt
│   ├── dependency_links.txt
│   ├── requires.txt
│   └── top_level.txt
├── pkmodel
│   ├── __init__.py
│   ├── __pycache__
│   │   ├── __init__.cpython-38.pyc
│   │   ├── model.cpython-38.pyc
│   │   ├── protocol.cpython-38.pyc
│   │   ├── solution.cpython-38.pyc
│   │   └── version_info.cpython-38.pyc
│   ├── model.py
│   ├── protocol.py
│   ├── solution.py
│   ├── tests
│   │   ├── __init__.py
│   │   ├── __pycache__
│   │   │   ├── __init__.cpython-38.pyc
│   │   │   ├── test_model.cpython-38.pyc
│   │   │   ├── test_protocol.cpython-38.pyc
│   │   │   └── test_solution.cpython-38.pyc
│   │   ├── test_model.py
│   │   ├── test_pipeline.py
│   │   ├── test_protocol.py
│   │   └── test_solution.py
│   └── version_info.py
├── requirements.txt
├── interactive_pkmodel.py
├── setup.py
└── try_out_script.py

Raising issues

If you spot an issue and would like us to fix it, let us know by:

  1. Pulling changes from the master branch to avoid conflicts:

git pull origin master

  1. Create an issue on GitHub by navigating to the 'Issues' tab in the repository's home page

  2. Create a new branch corresponding to the issue with git

git checkout -b <new-branch>

  1. Make your changes and then use git add, commit and push your changes to the repository on GitHub

git add <file>

(You can find out what files need to be added with git status)

git commit –m "issue-number-comment" 
git push origin <new-branch>
  1. Make a pull request on GitHub

License

This package was created under the MIT License. Read more about this at https://github.com/Down-To-Programme/PK_Model/blob/master/LICENSE

Links

pk_model's People

Contributors

dseiferth avatar eborsi avatar alexn1066 avatar mwcotton avatar scottstacey avatar martinjrobins avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.