Kayali is a Qt based Computer Algebra System (CAS) that can also be used as an advanced replacement for KDE KCalc. It is essentially a front end GUI for Maxima (and is easily extended to other CAS back-ends) and Gnuplot.
Please Note: I am currently targetting a small subset of Maxima, while maintaining a medium-term goal of supporting all of Maxima. Please bear in mind that although Kayali probably does not support what you want to do with it right now, it can be made do so - but I need your feedback to do that. Please try it out if you can and share your thoughts.
Kayali is currently alpha software and has only been tested on my own PC.
It you are reading this (condition1 : satisfied) and are prepared to give it a go, then please do send me feedback as to how you get on. At this stage I am particularly looking for hints about where to focus my development efforts, so please email me or post a message to the Kayali sourceforge forum with what you would like to see Kayali support.
I expect to see rapid development of Kayali so please check back regularly for updates.
There is no real installation required. Simply untar the source tar.gz into a new directory. To run Kayali, type "python kayali.py" from the installation directory. Please note, however, the other required software packages. Of these, only Maxima and PyQt are mandatory. The others are only used for creating plots. If you are running linux then you probably have most of these already installed.
Download from the sourceforge download page:
Kayali supports all the algebraic operations of Maxima, however the graphical representation is not complete, though is being rapidly expanded. Please let me know what areas you would like to see finished first.
Try these for example:
eq1: 2*x + y = 13
eq2: x*y = 20
factor(x^6 - y^6)
expand((2*x + y)^5)
Kayali supports all the calculus operations of Maxima but again, I have only (so far) provided graphical support for a limited number of operations. Try these for example:
diff(3*x^4 - x^2,x)
Kayali currently uses Gnuplot for graphing. It also is using the Maxima interface to Gnuplot rather than addressing Gnuplot directly. This has both advantages and disadvantages.
Then right-mouse click on the output in the table, and select Plot. Enter min and max values of -4 and 4, for both x and y. Select OK. After viewing the plot, click back on the History tab.
Kayali has been written in Python. Nearly all linux installations already have python installed.
Maxima is the engine behind Kayali. It is called a CAS (Computer Algebra System). Kayali passes all its commands to Maxima, so to learn more about the advanced use of Kayali you need to learn Maxima:
PyQt4 is the interface between Python, which Kayali is written in, and Qt4. Qt4 is a great development toolkit developed by Trolltech in Norway.
(Only required for plotting) GnuPlot is a plotting utility under the GNU umbrella. The 3D plots require v4 or above.
(Only required for plotting) libgd is a gif manipulation library needed by gnuplot to produce png files.
If you liked this article, subscribe to the feed by clicking the image below to keep informed about new contents of the blog: