Overview
Components
The central component of Euler Math Toolbox is the Notebook Interface with its text and graphics display. This interface communicates with a lot of helping systems. The main components of this toolbox are the following.
Euler Core with programming language and numerical algorithms |
Maxima integrated as symbolic system |
Latex for formulas and PDF export |
Python and C for highly efficient scripts |
EMT Notebook Interface |
Browser for help, HTML export and printing |
Povray for photo realistic graphics |
DLL libraries LPSOLVE for optimization user DLLs |
Editor external editor JE for Euler files |
Some components need to be installed separately, like Latex, Python or Povray. Maxima is installed with Euler by default. The JE editor can be replaced by any editor of your choice.
There is a Prezi about Euler with a short presentation of many aspects of Euler. You find a video with the Prezi on my YouTube channel about EMT.
Screenshots
Main Features
Here is a short list of the features of EMT. Since it is a very huge system, by far not all algorithms and functions can be listed on this page.
- Nice and simple interface with fully editable command window containing commands, comments, EMT output and graphics,
- export to HTML and various graphics formats,
- fast numerical kernel with exact and interval arithmetic,
- programmable using a Basic like interpreted language,
- easy to use symbolic expressions and functions, seamlessly integrated into the EMT syntax,
- full Maxima interface,
- extensive help and user support,
- interfaces to various external programs (e.g. Latex, Povray, Tiny C, Python)
EMT Kernel and Language
- Interactive program with a simple, versatile syntax,
- numerical mathematics with real numbers and complex numbers,
- interval arithmetic,
- vectors and matrices of real, complex, or interval numbers,
- flexible and rich matrix language,
- intelligent operator expansion for matrices and vectors,
- matrix product, powers, inverse etc.,
- support for large, sparse matrices,
- strings and vectors of strings,
- functions for string manipulation,
- evaluation of expressions stored in strings,
- exact scalar product and residuum calculation,
- exact solutions of linear systems,
Programming Language
- Programs in the style of a modern Basic dialect,
- multiple function results,
- one-line functions for simple expressions,
- access to global variables in functions on demand,
- parameters by value or reference,
- default values for parameters,
- type checking for parameters,
- extra assigned parameters,
- external Euler files with commands and function definitions,
- support for C code via the TinyC compiler.
- support for code in Python
Numerical Functions
- Newton, bisection, secant methods using functions or expressions,
- Newton interval method in one or several variables,
- Broyden, Newton, Nelder-Mead method for functions in several variables,
- Runge, Heun and adaptive Runge and LSODA method for differential equations,
- Bauhuber method for roots of polynomials,
- Romberg, Gauß, adaptive integration,
- polynomial interpolation and spline interpolation,
- polynomial and linear fit, singular value fit,
- Simplex algorithm,
- integer branch and bound algorithm,
- LPSOLVE package,
- conjugate gradient CG and Gauß-Seidel for sparse matrices,
- residuum iteration for exact solutions,
- guaranteed interval solutions,
- FFT and two dimensional FFT,
- singular value decomposition,
- eigenvalue and eigenspace,
- Jacobi method,
- Remez algorithm,
- quicksort algorithm,
- many more algorithms implemented in the Euler language.
Symbolical Mathematics
- symbolic expressions and functions provide integrated access to Maxima,
- symbolic variables,
- direct or compatible mode for access to Maxima,
- option to start in Maxima mode with Euler as a Maxima interface,
- easy exchange of results between Maxima and Euler,
- gnuplot included,
- Euler functions can use Maxima,
- Maxima can be called at compile time of Euler functions,
- many algorithms in Euler using Maxima, e.g. the Newton method,
- Euler strings can be easily parsed by Maxima before they are used in Euler,
- numerical variables can be defined both in Euler and Maxima,
- expressions in Euler strings can easily be used in Maxima commands.
Graphics
- 2D graphics with several line styles, all colors, or points.
- axis labels and titles,
- annotations and labels,
- label boxes,
- plots only valid function values,
- bar plots or distribution plots,
- 3D graphics with hidden lines, vanishing point projection,
- surface contour lines and shading,
- 3D anaglyph output for red/cyan,
- point clouds, 3D paths,
- implicit plots in two and three variables,
- user can turn or zoom in,
- direction plots for differential equations,
- resizable graphics window,
- exports to PNG, SVG, or the clipboard,
- PNG export and notebook images optionally with anti-aliasing,
- Povray interface for perfect 3D graphics.
Statistics
- Random variables, with normal, uniform or integer distribution,
- normal, F- and T-distribution and inverse distributions,
- binomial distribution and inverse distribution,
- statistical tests,
- beta- and gamma-functions, complex gamma function,
- interval counting,
- distribution plots
- column plots, box plots, and many more.
Interface
- Notebook style interface with editable commands,
- free copy and paste,
- free editable comments,
- saves in text format,
- English spell checker for notebooks,
- current graphics can be included in the notebook,
- Latex formulas in comments or commands,
- export to HTML,
- export to Websites with MathJax or SVG,
- status line help, help browser,
- documentation in HTML format for Euler and Maxima,
- configuration in file or registry,
- Euler home file in user directory,
- support for mobile installation on sticks or networks.