Easy Java Simulations

Easy JavaScript Simulations (EJSS), formerly known as Easy Java Simulations (EJS), is an open-source software tool, part of the Open Source Physics project, designed to create discrete computer simulations.

A discrete computer simulation, or simply a computer simulation, is a computer program that tries to reproduce, for pedagogical or scientific purposes, a natural phenomenon through the visualization of the different states that it can have. Each of these states is described by a set of variables that change in time due to the iteration of a given algorithm.

In creating a simulation with the help of EJSS, the user does not program the simulation at the level of writing code, instead the user is working at a higher conceptual level, declaring and organizing the equations and other mathematical expressions that operate the simulation. EJSS handles the technical aspects of coding the simulation in the Java programming language, thus freeing the user to concentrate on the simulation's content.

The generated Java or JavaScript code can, in terms of efficiency and sophistication, be taken as the creation of a professional programmer.

EJSS is written in the Java programming language and the created simulations are in Java or JavaScript. Java Virtual Machines (JVM) are available for many different platforms; a platform for which a JVM is available can run Java programs. Though Java applets were popular before 2014, JavaScript Applets outputs can be run on almost any device now, including Android and iOS.

EJSS has its own format for storing the simulations, which is based on XML, EJS and EJSS and carries the extension .xml, .ejs and .ejss. It contains not only the code for the simulation, but also the rest of the things, like the html introduction.