Skip to main content

Kinetic model of particle evaporation

Project description

https://img.shields.io/pypi/v/pyvap.svg https://travis-ci.org/awbirdsall/pyvap.svg?branch=master

pyvap models evaporation of components from a multicomponent spherical particle. The model follows the treatment of Maxwellian flux given in Atmospheric Chemistry & Physics by Seinfeld and Pandis. The model is written in Python 3, with Scipy’s ode solver.

Usage

Example code to model the evaporation of an equimolar mixture of polyethylene trimer and hexamer (PEG-3 and PEG-6) in a particle with starting radius 5 micron, and create a figure of the output:

import pyvap
import matplotlib.pyplot as plt
import numpy as np

# define model parameters
peg3 = {"name": "PEG-3",
        "Dg": 5.95e-6,
        "M": 0.1502,
        "rho": 1108.0,
        "cinf": 0,
        "p298": 6.68e-2,
        "delh": 78.3e+3}
peg6 = {"name": "PEG-6",
        "Dg": 4.26e-6,
        "M": 0.2823,
        "rho": 1180.0,
        "cinf": 0,
        "p298": 3.05e-5,
        "delh": 102.1e+3}
cmpds = [peg3, peg6]
# equimolar mixture of PEG-3 and PEG-6
comp = [0.5, 0.5]
r_init = 5e-6 # starting radius, m
time = 2*60*60 # integration time, s
numpts = 2000 # number of points to integrate
temp = 298 # K

# run model
model = pyvap.analyze_evap(cmpds, comp, r_init, time, numpts, temp,
                           makefig=True)

# display generated figure during, e.g., interactive ipython session
plt.show()

# save generated figure
evap_fig, (evap_ax0, evap_ax1) = model["evap_fig"]
evap_fig.savefig("evaporation.png")

# save csv of evaporation model output (no. of molecules of each component,
# at each timestep)
np.savetxt("evaporation.csv", model["evap_a"], delimiter=",")

Installation

Install using pip.

Install from PyPI:

pip install pyvap

Install most recent Github commit (stability not guaranteed):

pip install git+https://github.com/awbirdsall/pyvap

Dependencies

Tested on Python 2.7 and 3.5.

Requires numpy, scipy, and matplotlib>=1.5 (automatically handled if using pip to install). I recommend using conda to install the Scipy stack on a Windows machine if pip is having issues.

Running the tests requires pytest.

Testing

Tests are located in the tests/ subfolder and can be run using pytest. Tests also require numpy.

Development

Posting issues or pull requests to the github page is welcome!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
pyvap-0.1.1-py3-none-any.whl (9.8 kB) Copy SHA256 hash SHA256 Wheel py3
pyvap-0.1.1.tar.gz (7.7 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page