Skip to main content

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

Build Status Coverage Status PyPI - Python Version

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

PyTCI-1.1.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

PyTCI-1.1-py3-none-any.whl (15.2 kB view details)

Uploaded Python 3

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

Hashes for PyTCI-1.1.tar.gz
Algorithm Hash digest
SHA256 73d4cefd1fe0543c8445bbb124566636eb569b0f58607239ba7c159e27b8a1ee
MD5 2ac2cea0eb5b2724c8abb4bc4ccd7105
BLAKE2b-256 341eb91e9f86b5ce95bc3bc082167542d517bc41491eccc563853154af2d74cd

See more details on using hashes here.

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

Hashes for PyTCI-1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c2633fa918345baa312b6d904d52bec428f124effa4bfe8b16489f2bfbe4372c
MD5 d7e2cb2ef6355adc5a554f99a8db0adc
BLAKE2b-256 8d66f5e78e2b5c78bb20b04c8c81ca413c19e922c0f5213488c2406c247539b2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page