Skip to content

nnikulshin/SymPyCAS

Repository files navigation

SymPyCAS

A graphical Computer Algebra System (CAS) powered by SymPy, with an Office 2007 style UI. In addition to serving as a front end for SymPy, SymPyCAS also has the following useful features:

  • Both input and output is pretty printed using MathQuill. Input is enterred using LaTeX
  • Interactive 2D and 3D plots powered by Plotly.
  • Notebooks can be saved directly as PDF or exported to a TeX file, allowing for further edits.
  • Python functions can be called directly from the Notebook.

Screenshot

alt text

Dependencies and Installation

This application requires two Python packages, latex2sympy2 and plotly to be installed, as well as GTK+ 3.0, WebKitGTK2 and their respective Python/GI bindings.

Latex2sympy2 is available at https://github.com/nnikulshin/latex2sympy. The version in that repository (forked from https://github.com/OrangeX4/latex2sympy) contains all the modifications to the original latex2sympy2 that are necessary for SymPyCAS. Follow the instructions on the latex2sympy2 page to install the package.

Plotly can be installed by running pip install plotly or using your distribution's package manager. SymPyCAS does not rely on any patches to the original Plotly. Similarly, GTK+ and WebKitGTK2 don't need any modifications and can be installed from your distribution's package manager.

After installing the dependencies, one can just run sudo make install to install SymPyCAS. The default installation base path is /usr, use PREFIX=<base path> to specify another base path.

SymPyCAS also uses jQuery and MathQuill, however those libraries are included in compiled/minified form in this repository.

Note on MathQuill

SymPyCAS uses MathQuill for pretty printing. The compiled/minified MathQuill library is included in this repository; for source code see https://github.com/nnikulshin/mathquill. The fork in that repository contains some modifications for better compatibility with SymPyCAS, and is based on the matrix branch of https://github.com/Learnosity/mathquill, which is itself a fork of the original MathQuill repository at https://github.com/mathquill/mathquill.

Credits

Many thanks to the creators of SymPy, Plotly, MathQuill, jQuery and latex2sympy/latex2sympy2, without which this application would not be possible.

This application uses code from the jquery-ui-ribbon project, which is unfortunately now abandoned, to make the Ribbon UI. Credits to the original developers of jquery-ui-ribbon for making this useful (and very pretty) tool.

About

SymPy, eyecandy and more

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published