Skip to main content

LaTeXcalc is a LaTeX-Calculation-library for python3 accepting an optional values-dict for variables

Project description

LaTeXcalc

What is this?

LaTeXcalc is a LaTeX-Calculation-library for python3.

This calculates a mathematical formula written as a LaTeX-string. It can use a given value-dict for variables in the formula. The return-value is int or float.

Supported features

LaTeXcalc can handle the following LaTeX-operations:

  • apply +, -, *, / operators and the - as algebraic sign
  • multiplication and division first, then addition and subtraction
  • power ^
  • brackets (), [] and {} (also with \left(..\right))
  • squareroot \sqrt{}
  • trigonometric functions like \sin or \arctan (radian measure)
  • exponential numbers linke 1e+12
  • \ln (natural log), \log (base 10) and e^
  • \pi or pi and e as default-values math.pi and math.e
  • \frac{}{} (works as abbreviated \frac 1 2 as well)

make sure you always use * (or \cdot), because xy != x*y, in that case xy would be a value!

How to use

You can install this by using pip: pip install latexcalc or alternatively by including the folder latexcalc in your python3-project.

Then all you need to do is

import latexcalc

c = latexcalc.calc('\sqrt{3^2+4^2}')
# or with variables:
c = latexcalc.calc('\sqrt(a^2+b^2)', {'a':3,'b':4})
print(c) # 5.0

Limitations

All testet cases work, but there might still be wrong calculations in special cases, so test it for your needs!

Anything wrong? Something missing?

Feel free to submit an issue if you find a bug or if you think something important is missing.

Just check out the latest code on GitHub and test your issue as it is done for some cases in the test.py. Then please add a Line for the test.py to your report to show the desired operation!

Alternatives

There are some other libraries out there doing similar things, but at time of writing I didn't find anything that fulfilled my needs (lightweight, working with variables, ...). So depending on your requirements this or maybe something else might be the right choise, thank's for cheching this out!

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

latexcalc-0.8.1.tar.gz (16.9 kB view hashes)

Uploaded Source

Built Distribution

latexcalc-0.8.1-py3-none-any.whl (17.5 kB view hashes)

Uploaded Python 3

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