Last updated on 26 Jan 2001
Page created on 05 Jun 2000

Kalamaris's homepage
What is Kalamaris ?
Kalamaris is the next generation on scientific applications. While
similar to Mathematica® in some aspects, it offers a new approach to solve
mathematical problems in an easy and intuitive way.
Kalamaris's functionality also provide developers with a powerful
library to manage complex mathematical operations.
It also has a distributed design, which will allow to separate the
KDE graphical interface from the real
working code. This will permit to have a Kalamaris server on a
big server, while running the clients on your usual computer on your desk.
Tell me more about Kalamaris
I've been thinking on developing a Mathematicalike application for years,
and when my teacher of Numerical Analysis told us that we had to implement some
numerical methods to solve systems of differential equations, I thought that
it was time to start such an application and do it "the right way"(tm).
I started working on it a few months ago, and version 0.5.6 is the
result up to now.
Note that this release is not considered stable yet, and it may crash (in fact,
I'm sure it will :) ) quite a lot. For example, there isn't yet any syntax checking
code, so when you do something wrong (like having an unmatched number of parenthesis),
it crashes.
It may be worth to mention that each time you enter an expression, Kalamaris stores
the complete history on the file .#kalamaris.lastcmds , so if it crashes,
you just have to copy this file with another name and edit it to use a correct syntax.
Note that syntax checking is one of the highest priority things on my TODO list.
I'd like to see Kalamaris' features
 Kalamaris allows the user to define functions and evaluate them:
f(x)=Sin(x)*x^2
 It also work with matrices, and multiple variable functions:
f(x,y,z)=[ 1 , 2 , 3x ; 5*Sin(6y) , z+x , 2z ]
 It has symbolic and numeric evaluation:
f(2,a,3b)
Gives:
[ 1 , 2 , 6 ; 5*Sin(6a) , 3b+2 , 2*3b ]
 It plots data on a 2D view using qtai
and animates the data (using an extension to qtai) in a similar way. So you can enter :
c=EvalFunc(Cos(x),x,0,2PI,80)
s=EvalFunc(Sin(x),x,0,2PI,80)
PlotData(c[1],s[1])
m=EvalFunc(x^3x,x,1,1,80)
PlotData(m[0],m[1],0)
setPlotColor(0,1,Color(green))
m=EvalFunc(x^20.25,x,1,1,80)
PlotData(m[0],m[1],0)
setPlotColor(0,2,Color(yellow))
and then Kalamaris opens a window like this:
 Solves systems of differential equations using the following methods:
Midpoint
AdamsBashforth (with two different optional implementations)
RungeKutta 3/8
Fehlberg 5/6
Fehlberg 7/8
I'd like to mention that I've had help in implementing all these
methods. Thanks go to Benjamín Olea Andrades and María Franco
Barrionuevo for their detailed descriptions of the methods and their search
of some example models to test the numerical methods. I don't know if they'll
continue helping with Kalamaris after it has been finished for
the class, but I hope so.
 Kalamaris also does symbolic derivations :
D(Sin(x),x) > Cos(x)
D(Sin(2x)*Tan(x^3),x) > Cos(2x)*2*Tan(x^3)+Sin(2x)*1/Cos(x)^2*3x^2
f(x,y)=[2,3x,y^4]
D(f(x,y),x) > [ 0, 3, 4y^3 ]
D(f(x,y),y) > [ 0, 0, 4y^3 ]
D(f(2a,b),a) > [ 0, 6, 24y^3 ]
 Kalamaris also allows to visualize sets of 3D data using a beta
version of a new library I'm developing to develop easy to implement
3D OpenGL applications in KDE.
The result of the test test.3d.2 (included in the sources) is something like
this:
Note that you can move the observer using your mouse, and it uses the
parallel transport of the orientation with which you're looking to keep it
good looking
 Kalamaris generates runtime html files with help for each function
and variable (even user defined ones !). This allows Kalamaris to have
automatically a webbased interface which is quite easy to use.
 You can use python, perl, or any other scripting language (even your
shell !) to script your calculations and control Kalamaris using
an external application.
 It uses KDoc to document the sources, so it has an html internal
documentation.
I want to see a screenshot !
Ok, here you are :
Click here to see more screenshots.
Where can I download Kalamaris current version from ?
You can download Kalamaris by clicking on the following link :
Kalamaris0.6.0.tar.bz2 (296 Kb.)
How do I install Kalamaris ?
You'll need a current KDE 2.0 snapshot from KDE's CVS or the Kleopatra (1.91)
release which will be available in the next days.
You'll also need :
 Mesa
 The OpenGL extension of Qt2.1.x
 libgmp library for arbitrary precision numbers
Once you have it all installed, run ./configure ; make ; make install on
Kalamaris sources.
Are there any known bugs ?
Lots of them ! Some of the most importants include:
 It crashes when doing something wrong. It doesn't currently show any
error, but just crashes. This is caused because it lacks a syntax verifier and
will be fixed in the summer.
 It lacks quite a lot of help. Feel free to read the examples to learn how
to use functions that lack help.
 Some other problems that I'm too tired to enumerate right now :)
What's on the TODO list ?
Kalamaris already has many features, but it also lacks some things,
that I want to implement in the (near) future :
 Verificate the syntax, so it doesn't crash.
 Simplifications of complex expressions (it already simplify simple
expressions)
 Allow to specify the field in which we are working.
 Nonconmutative algebraic operations
 Implement other numerical methods (i.e. to find zeros !)
Anyway, all this will have to wait, at least until July, as I'm starting
exams on next week.
How can I help with Kalamaris development ?
You want to collaborate ? Good. Just write me and tell me your abilities as
developer or artist (yes, I also need someone to draw the icons ).
Btw, I also accept donations to continue Kalamaris development :) (perhaps
even to implement any feature that I wouldn't add by myself)
What are Kalamaris terms of use ?
Kalamaris is distributed under the GNU General Public License Version 2.
Latest News
05 Jun 2000
 First public release of Kalamaris (0.6.0)
