Skip to main content

Build Status

musical-robot

Python module for high-throughput measurement of deep eutectic solvents’ melting point using IR bolometry

Github musical robot image

Introduction

Deep eutectic solvents (DES) are novel solvents that can be easily produced at low-cost for several important applications, such as chemical synthesis, extractions, electrochemistry, and even pharmaceutical drug delivery. The design space for DES is enormous and high throughput measurement of melting points is required to rapidly identify DES with melting points that are feasible for their specific application. High throughput measurement of melting points was made possible through the use of an infrared camera and subsequent image analysis. The melting point of the DES was obtained by recording the temperature profile of the sample as it was heated, and locating the inflection point in the profile that results from an increase in thermal conductivity as the sample melts. The python package developed is able to obtain accurate melting points of multiple samples at once, while only requiring a matter of minutes to perform the physical measurement, and at low-cost. In contrast, standard melting point determination techniques utilize equipment that is orders of magnitude more expensive and can take up to an hour for individual samples.

Installation

  • This package can be pip installed using the following command: pip install musicalrobot

Usage

The python package adopts the following two techniques to obtain the temperature profile of the samples and sample holder to determine the melting point of the samples:

  1. Temperature profile through edge detection
  • This method can be used for images(video frames) with high contrast and minimal noise which will allow for detection of edges of just the samples.
  • The temperature profile of the samples and plate is determined by detecting the edges, filling and labeling them, and monitoring the temperature at their centroids.
  • This technique can be adapted by using the functions input_file and centroid_temp from the musicalrobot.edge_detection module to load the recorded video and obtain the temperature profile of the samples and sample holder.
  1. Temperature profile through pixel value analysis.
  • This is an alternative technique for low contrast images(video frames). In some situations, the contrast between the image and sample maybe too low for edge detection, even with contrast enhancement.
  • Alternatively, centroid location for each sample can be found by summing pixel values over individual rows and columns of the sample holder(well plate).
  • This technique can be adapted by using the functions input_file and pixel_temp from the musicalrobot.pixel_analysis module to load the recorded video and obtain the temperature profile of the samples and sample holder.

Melting point determination

  • An inflection is observed at the melting point in the temperature profile of the samples due to the following reasons
  1. Change in thermal conductivity of the sample
  2. Increase in thermal contact between the sample and the well plate
  • The point of inflection in the temperature profile is determined by detecting the peak in the second derivative of the temperature profile. Since an analytical approach is used to determine the melting point, the temperature profile plots have to classified to eliminate plots with noise and without an inflection in them.
  • The module musicalrobot.data_encoding can be used to classify the temperature profiles.

An example of adapting the above mentioned modules and functions using the musicalrobot package can be found in the ipython notebook Tutorial.ipynb found in the examples folder.

For Development

  • Install python version 3.6
  • Clone the repository on your machine using git clone https://github.com/pozzocapstone/musical-robot.git . This will create a copy of this repository on your machine.
  • Go to the repository folder using cd musical-robot.
  • Install the python dependencies by using pip install -r requirements.txt

Metadata

Release files for musicalrobot 0.993

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for musicalrobot 0.993
File Size Uploaded Provenance Actions
musicalrobot-0.993.tar.gz 56.6 MB Without provenance Details for musicalrobot-0.993.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for musicalrobot 0.993
File Interpreter ABI Platform Actions
musicalrobot-0.993-py3-none-any.whl Python 3 none any Details for musicalrobot-0.993-py3-none-any.whl

Total release size: 113.2 MB

Release files / musicalrobot-0.993.tar.gz

Download URL musicalrobot-0.993.tar.gz
Size 56.6 MB
Tags Source
SHA-256 checksum
How to use checksums
25bda8b543f320decacdc0edd3bed171835527dc9d2b42a86a21e8a6fd0dcd9b
BLAKE2b-256 checksum
How to use checksums
25a6aaf15c9b5a2976003ca491a8ab6356427b102c4136660902d77b373f732f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.10

Release files / musicalrobot-0.993-py3-none-any.whl

Download URL musicalrobot-0.993-py3-none-any.whl
Size 56.6 MB
Tags Python 3
SHA-256 checksum
How to use checksums
fa214c29a41a18d8508bbf7f1d9df813bd20b852b16a27072e58a6277d22a4e2
BLAKE2b-256 checksum
How to use checksums
13e59c176e81ab513b5534d44b75208a5a378a9147263c33c842481fa23c001c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.10

Security for musicalrobot 0.993

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page