Introduction

Note

You can also download this documentation in PDF.

SimulaMath is a scientific computing software, dedicated to learning, teaching and research in mathematics. It is developed with the Python language with an emphasis on simplicity (ease of use), through a graphical user interface (GUI). It covers many areas of mathematics including linear algebra, calculus, number theory, descriptive statistics, inferential statistics, probability distributions, 2D and 3D graphics, multivariate polynomials and Groebner bases, elliptic curves, linear codes, and finite fields. It runs on Windows, Mac OSX and many Linux platforms.

Objectives

SimulaMath is designed to facilitate teaching, learning and research in mathematics from middle school to high school, and to encourage the use of new technologies on education.

Strong points of SimulaMath

  • Simplicity: SimulaMath has a very intuitive interface, which allows you to generate results, and create quality graphics (2D and 3D) with very minimal effort.

Note

Golden rule in SimulaMath : the input and output data must converge to the mathematical syntax (notation).

  • Python: Python is a high level programming language, easy to learn, dynamically typed and maintained by a very large community. It has become the choice of most data scientists today. SimulaMath is developed with Python and its programming language is derived from it like SageMath software. The objective was not to reinvent the wheel by creating a new programming language as is the case with most of scientific software but to simplify what already exists.

    If you know how to program in Python, you can use most of its functions and scientific packages like Numpy, Scipy, Sympy, Pandas etc. for both clickable and programming interface.

  • Programming: A new language derived from Python is introduced on SimulaMath. It means that 99% of Python valid code are also valid on SimulaMath. New syntax which is very closed to mathematical notation is added.

  • Two type of interfaces: SimulaMath has two kind of interfaces : the clickable interface and programming interface. The clickable interface allows to get high results without knowing necessarily how to program and the programming interface is for everyone (programmers and those who want to learn programming).

  • Publication quality graphs: SimulaMath has a very powerful and intuitive interface for two and three dimensional graphics. You can save your graphics in a range of formats : PNG, PDF, PGF, JPEG, SVG, etc.

  • Multi-platform: SimulaMath runs on Windows, Mac OS X and many Linux (e.g. Ubuntu 16+) distributions.

  • Documentation: the documentation is available in HTML and in PDF.

  • Multi-areas: SimulaMath is not designed only for a specific area of mathematics. One can do Calculus, linear algebra, statistics, probability, elliptic curves, linear codes etc.

About the Developers

The first version of SimulaMath (version 1.0), published at 2019, was designed and developed by Michel Seck, PhD in algebra and cryptography at the University Cheikh Anta Diop of Dakar (Senegal).

Since 2020, an international team (see the web page of the team) has joined the project. Thanks to this team, many new functionalities were added to this release.

What’s new in SimulaMath 1.1

  • Programming: SimulaMath has a vera simple and powerful programming language derived from Python.

  • Inferential statistics: Estimation by confident interval and hypothesis testing were added.

  • Geometry on the plane: for 2d graphics, you can now add texts, images, and various 2D geometric objects: Points, Lines, Rays, Segments, Circles, Arcs, Polygons, Parallel lines, Perpendicular lines, Vectors, Angles, Angle Bisector, Ellipsis, Parabolas, Hyperbolas, Rotation, Homothety, Translation, Reflect about a point and a line, Areas, Barycenter, etc.

  • Two languages: SimulaMath is now available in English and French.

  • Choice of a level : You can choose between three levels: middle school, secondary school and high school.