Skip to main content

Environmental Science using Symbolic Math.

Project description

This package contains helpers to deal with physical variables and units.

The documentation is available on

The quick installation for impatient users can be done by running:

pip install essm



released 2020-12-20


  • utils: Enable supplementary_imports in VariableWriter and EquationWriter (PR #84)


released 2020-11-05

Bug Fixes

  • global: Allow dimensionless variables in functions (PR #94)


released 2020-09-24

Bug Fixes

  • utils: Update code to work with isort5 (PR #89)


  • global: Refactor code to work with sympy>=1.6 (PR #90)


released 2020-06-18

Bug Fixes

  • utils: Include expr in variable definitions when writing to file (PR #87)


  • documentation: Add use examples as Jupyter notebooks and integrate in documentation (PR #83)

  • utils: Enable writers of .py files for re-import of variable and equation definitions (PR #84)


released 2020-04-28

Bug Fixes

  • utils: Improve markdown representation of units (PR #79)

  • variables: Fix generate_metadata_table for selected variables (PR #80)


released 2019-11-20

Bug Fixes

  • equations: Improve dimensional testing of equations and substitution (PR #73)

  • equations: Add support for Integral and Piecewise in Equation PR (PR #76)


  • utils: subs_eq() for simultaneous substitutions.(PR #75)


released 2019-04-09

Bug Fixes

  • equations: improve substitutions with equations (79ac37d)


  • utils: add definition to metadata table (3ceaa69)


released 2019-04-04

  • global: adapt to Python 3 and Sympy >=1.3

  • global: removal of SageMath mentions

  • docs: fix latex representation of x_O2 as x_{O2}

  • equations: extend replace_variables

  • equations: make .subs() on equation return an equality

  • units: reverted missing dimension lookup

  • variables: behave as Symbols

  • variables: better markdown formatting of units

  • variables: changes base class to Symbol

  • variables: enableddictionaries with symbols in replace_variables

  • variables: fix derive_unit for dimensionless expression

  • variables: fix latex rendering

  • variables: generate_metadata_table with HTML

  • variables: include assumptions from cls attribute

  • variables: modify derive_unit to work with summations

  • variables: remove Dimension deprecation warnings

  • variables: remove internal SI and refer to

  • variables: respect unit in variable with expr

  • variables: set dimension and scale factor using method

  • variables: support dimensionless variable expression

  • variables: support replacing variables by their default values


released 2017-06-29

  • Initial public release.

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

essm-1.1.tar.gz (282.9 kB view hashes)

Uploaded source

Built Distribution

essm-1.1-py2.py3-none-any.whl (47.9 kB view hashes)

Uploaded py2 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