Skip to main content

PyECsim: fast and general voltammetry simulation

Project description

PyECsim is a fast and general simulator of voltammetry experiments. Using the latest state-of-the-art algorithms, it simulates

  • any number of electrode processes, using Butler-Volmer charge transfer kinetics, coupled to

  • any number of homogeneous reactions (first or second order), using

  • user-defined voltammetry waveforms.

A typical simulation, even with very large reaction rate constants (10e9 /s), takes around 10 ms to run. Because the simulations are fast, you can use them inside the target function of an optimization routine.

In-depth documentation can be found on read the docs.

# Install

Installing PyECsim is easy:

pip install --user pyecsim

# Quick-start

Import PyECsim into your Python code (and matplotlib to plot the voltammogram):

import pyecsim as ecs
import matplotlib.pyplot as plt

Then create a simulator and species, a charge transfer step and a chemical reaction:

sim = ecs.Simulation(True)

red = ecs.Species('reduced species', 1.0, 1.0e-9)
ox = ecs.Species('oxidized species', 0.0, 1.0e-9)
prod = ecs.Species('reaction product', 0.0, 1.0e-9)

sim.sys.addRedox( rdx1 := ecs.Redox(ox, red, 1, 0.0, 10.0, 0.5).enable() ) # Python >= 3.8
sim.sys.addReaction( rxn1 := ecs.Reaction(ox, None, prod, None, 5.0, 0.0).enable() ) # Python >= 3.8

Lastly, we set the electrode type and radius, the voltammograms initial/vertex/final potentials and the scan rate:

sim.el.disk(1.0e-3)
sim.exper.setScanPotentials(-0.5, [0.5], -0.5)
sim.exper.setScanRate(1.0)

And then we can run the simulation and plot the results:

[potential, current] = sim.run()
plt.plot(potential, current)

Which gives:

http://limhes.net/upload/images_ecsim/cv_readme.png

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

pyecsim-0.2.2-cp39-cp39-win_amd64.whl (172.2 kB view details)

Uploaded CPython 3.9Windows x86-64

pyecsim-0.2.2-cp39-cp39-manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.9

pyecsim-0.2.2-cp38-cp38-win_amd64.whl (171.5 kB view details)

Uploaded CPython 3.8Windows x86-64

pyecsim-0.2.2-cp38-cp38-manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.8

pyecsim-0.2.2-cp37-cp37m-win_amd64.whl (170.0 kB view details)

Uploaded CPython 3.7mWindows x86-64

pyecsim-0.2.2-cp37-cp37m-manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.7m

pyecsim-0.2.2-cp36-cp36m-win_amd64.whl (228.2 kB view details)

Uploaded CPython 3.6mWindows x86-64

pyecsim-0.2.2-cp36-cp36m-manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.6m

pyecsim-0.2.2-cp35-cp35m-win_amd64.whl (180.5 kB view details)

Uploaded CPython 3.5mWindows x86-64

pyecsim-0.2.2-cp35-cp35m-manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.5m

File details

Details for the file pyecsim-0.2.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 172.2 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 06f117a64185eaf1d5794a1688db299ab401fda655590b7a2750bd8d9bc867ed
MD5 19c5e3a5872d3b8bc2e3bb2c57d97bdc
BLAKE2b-256 51bd1257bb9f80b7170ce66360428550df1a4314723c03b2cb44823ab5feacee

See more details on using hashes here.

File details

Details for the file pyecsim-0.2.2-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp39-cp39-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: CPython 3.9
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bb8ec46f93c0034d935c109bc9217ade21c785ab7365f3cd1a3c320ee8036e70
MD5 29ebb1cb6bb2bf98a38baca44584dbaf
BLAKE2b-256 73d5867dbf208efce440171ae481aceb0f138b1d8ba5a27b4d4810c1311fdf0e

See more details on using hashes here.

File details

Details for the file pyecsim-0.2.2-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 171.5 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c6810b93866c8befcf8b471f365ace7e299c5eb2d4d72e14354f97830302dea1
MD5 727c9f2860a33a4ef312e3eb3015d626
BLAKE2b-256 96c7b0421bf9dc3f395471b74005b55fc1ffb2f204cd7a651d3ba7555e028031

See more details on using hashes here.

File details

Details for the file pyecsim-0.2.2-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp38-cp38-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2199540444653945095c413258b9b9ad93e20c8b6a1c6abb084cc20804942c74
MD5 e88077679c96a7ca89f8e3dbc1f92db7
BLAKE2b-256 20a83d3dfb64dc10529bf7e6240f47f351f4a84dfddd03bcb05c8fc2619524d3

See more details on using hashes here.

File details

Details for the file pyecsim-0.2.2-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 170.0 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 f93e4b0bcab6f87e9af2565a9955536dbca175e744cc135de0c9290d7c4f772b
MD5 80c1f300e3b6b6a63ea0f5d89d94c4f9
BLAKE2b-256 12d4c7186340e3cc943b2560d920f1d6bc5618367fd76c7cf944d867653146b6

See more details on using hashes here.

File details

Details for the file pyecsim-0.2.2-cp37-cp37m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 dbd8d2e62a97ac5cf51068d670ab33c17004f06d269fd2d201dbd446b32b6766
MD5 be5da5f1021bfd466f886fefc147c893
BLAKE2b-256 5efb6acd6f9683bdcd8b2d278540fd5ee2983b952a90936acd51e4ffcb552a65

See more details on using hashes here.

File details

Details for the file pyecsim-0.2.2-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 228.2 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 775e6838040c248a73f8c95503e26a4ac9b4242cef50a35b5e0b0f954a5a444a
MD5 6522b5491b770f2c60ec68f38b41d625
BLAKE2b-256 077a4240acee6bed54ab0540faa7e3761455ce6138b577b3cc10be4e960d10d4

See more details on using hashes here.

File details

Details for the file pyecsim-0.2.2-cp36-cp36m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp36-cp36m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f34239fab86825780a4f84fd4e864a934f8ec3e9ae4d7340e4e11d4cc218575a
MD5 0c1524618b9553c664b9d0bf963a89bc
BLAKE2b-256 342f7cc756216375ac4bfdb28bb37a3eaec3fc73bd5d5b9d8faa17c6df57a6ce

See more details on using hashes here.

File details

Details for the file pyecsim-0.2.2-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 180.5 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 24a71315ce97de03563b72d471faf4f2d825de9c8880ad3963f3ff1336f23625
MD5 ea1a03897ad1ed63987aea3d79f70932
BLAKE2b-256 b9cce44c37788f8fb8cff5dbdd40bc1174227949f475b21c535b98d9f303420c

See more details on using hashes here.

File details

Details for the file pyecsim-0.2.2-cp35-cp35m-manylinux2014_x86_64.whl.

File metadata

  • Download URL: pyecsim-0.2.2-cp35-cp35m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.5m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for pyecsim-0.2.2-cp35-cp35m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 46a82ede7cd65cf1f48bd1c43d510cfb585f62d1a37bcd61114bbbfd801059a4
MD5 5135fbcde1e7e8f56b7524141b36d621
BLAKE2b-256 66bdcf40d256a5630664f35cab8351e247535662be48fae351bd48cb8fe9ac4b

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