A package for target controlled infusions
Project description
PyTCI
A python package for Target Controlled Infusions.
Spawned from the NHS Hack Day project https://github.com/JMathiszig-Lee/Propofol, this splits out useful code into a package and updates it to python3
Installation
if using pip
pip install PyTCI
if using pipenv (you should, it's great)
pipenv install PyTCI
Usage
PyTCI currently supports the following:
Body Mass equations:
- BMI
- Ideal body weight (Devine)
- Adjusted body weight
- James Equation
- Boer
- Hume(1966)
- Hume(1971)
- Janmahasation(2005)
- Al-Sallami
example:
>>> from PyTCI.weights import leanbodymass
>>> leanbodymass.hume66(180, 60 'm')
51.2
Models:
Propofol
- Schnider
- Marsh
- Eleveld
- Kataria
- Paedfusor
Remifentanil
- Minto
- Eleveld
Alfentanil
- Maitre
Dexmedetomidine
- Hannivoort
- Dyck
example:
>>> from PyTCI.models import propofol
>>> patient = propofol.Schnider(40, 70, 170, 'm')
>>> patient.v2
24
the class methods give_drug and wait_time can he used to model propofol kinetics
example:
>>> from PyTCI.models import propofol
>>> patient = propofol.Marsh(90)
>>> patient.give_drug(200)
>>> patient.x1
9.746588693957115
>>> patient.wait_time(60)
>>> patient.x1
7.438318565317236
Infusions
Infusions are currently only implemented for propofol
The two methods available are effect_bolus and plasma_infusion
Effect bolus returns the bolus (in mg) needed over 10 seconds to achieve the desired effect site concentration. It's input is the desired target in ug/ml and returns the bolus needed in mg
>>> patient = propofol.Schnider(40, 70, 190, 'm')
>>> patient.effect_bolus(6)
95.1
the function uses a simple search to find a dose that gets within 2% of the desired concentration
Plasma_infusion takes desired plasma concentration(ug/ml), desired total time (seconds) and the time period for each segment (seconds) and returns a python list of the required infusions rates from every segment witin the total time specified in mg/sec
>>> pt = propofol.Marsh(70)
>>> pt.plasma_infusion(2, 60)
[3.27269899102373, 0.1453355022895698, 0.14478000490919285, 0.14422948797801816, 0.1436839059972244, 0.143143213884116]
>>> pt.plasma_infusion(2, 60, 30)
[0.1420619352906052, 0.1417017659270992]
The built in models inherit from a parent class. You can define your own models and use the same functions to see how yours performs
class MyNewModel(Propofol):
def __init__(self, desired, arguments):
#my custom code to generate volumes and constants
self.v1 = a_constant * weight
self.v2 = a_constant * lean_body_mass
etc... etc...
#if you want to work with clearances rate constants must be generated
self.from_clearances(self)
#finally set up model
self.setup(self)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file PyTCI-1.1.tar.gz.
File metadata
- Download URL: PyTCI-1.1.tar.gz
- Upload date:
- Size: 12.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/2.7.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
73d4cefd1fe0543c8445bbb124566636eb569b0f58607239ba7c159e27b8a1ee
|
|
| MD5 |
2ac2cea0eb5b2724c8abb4bc4ccd7105
|
|
| BLAKE2b-256 |
341eb91e9f86b5ce95bc3bc082167542d517bc41491eccc563853154af2d74cd
|
File details
Details for the file PyTCI-1.1-py3-none-any.whl.
File metadata
- Download URL: PyTCI-1.1-py3-none-any.whl
- Upload date:
- Size: 15.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/2.7.16
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2633fa918345baa312b6d904d52bec428f124effa4bfe8b16489f2bfbe4372c
|
|
| MD5 |
d7e2cb2ef6355adc5a554f99a8db0adc
|
|
| BLAKE2b-256 |
8d66f5e78e2b5c78bb20b04c8c81ca413c19e922c0f5213488c2406c247539b2
|