Skip to main content

Kinetic model of particle evaporation

Project description

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.


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,

# display generated figure during, e.g., interactive ipython session

# save generated figure
evap_fig, (evap_ax0, evap_ax1) = model["evap_fig"]

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


Install using pip.

Install from PyPI:

pip install pyvap

Install most recent Github commit (stability not guaranteed):

pip install git+


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.


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


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.

Source Distribution

pyvap-0.1.1.tar.gz (7.7 kB view hashes)

Uploaded source

Built Distribution

pyvap-0.1.1-py3-none-any.whl (9.8 kB view hashes)

Uploaded py3

Supported by

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