musical-robot
Python module for high-throughput measurement of deep eutectic solvents’ melting point using IR bolometry
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:
- 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_fileandcentroid_tempfrom themusicalrobot.edge_detectionmodule to load the recorded video and obtain the temperature profile of the samples and sample holder.
- 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_fileandpixel_tempfrom themusicalrobot.pixel_analysismodule 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
- Change in thermal conductivity of the sample
- 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_encodingcan 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)
| 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)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| 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.