Skip to content

janduracz/acumen-dev

Repository files navigation

ACUMEN 2016_06_16 RELEASE NOTES
-------------------------------

Major changes since the 2016_03_22 release:

- Improvements to the 2015 semantics
	- Added support for equations 
	- Added support for symbolic time and partial differentiation
	- New command line input feature 
	- New print operation
	- New _plot support for conveniently plotting variables 
	
- New aspect ratio support 
- Improvement to the transparency parameter for 3D object
- Improvement to the static view of 3D 



ACUMEN 2016_03_22 RELEASE NOTES
-------------------------------

Major changes since the 2015_11_01 release:

- Improvements to the 2015 Enclosure semantics
  - New integrator based on Taylor series integration and Lohner’s 
    method, with better accuracy on non-linear systems.
  - Adaptive time stepping with event localisation. Enabled by 
    setting simulator.minTimeStep to a small value such as 1/2^30.

- New transparency parameter for 3D object
- New coordinates parameter for keeping 3D object from manual rotation

ACUMEN 2015_11_01 RELEASE NOTES
-------------------------------

Major changes since the 2014_12_01 release:

 - New Stream Animation mode shows _3D animation during simulation
 - New Device input feature
   - Use a mobile device (such as a smartphone) to control
     objects in Acumen
 - New matrix operations
 - New notation for conveniently generating vectors
 - Improved support for pattern matching
 - Continuous assignments are always taken into account when
   expressions are evaluated
 - Improved interval arithmetic based on the JInterval library

Major changes since the 2014_11_03 release:

 - Improved stability of _3D view
 - Re-enabled optimized traditional semantics
 - Stricter error checking
   - All duplicate assignments (of matching kind) are treated as errors
     In particular, now parent assignments are also checked
   - Only discrete assignments to simulator parameters are allowed

Major changes since the Acumen November 2013 release:

 - IMPORTANT:  Older semantics are temporarily disabled
 - Change of license to BSD
 - Language enhancements
   - Lighter and more expressive syntax
     - More powerful pattern "match" statement replaces "switch"
   - New "hypothesis" statement for specifying properties of systems,
     to be checked during simulation
 - New implementation of _3D functionality
   - Based on a software renderer that eliminates need to install
     third-party libraries
   - Full compatibility on all platforms (Windows, Linux and Mac OS)
     and Java versions from 6 to 8
 - Improved plotter
   - Now supports plotting of string-valued variables
 - Improved default ("2014 Reference") semantics
   - Integration using Runge-Kutta-based solver is now default, 
     yielding better precision for models with complex continuous
     dynamics
   - Both continuous and discrete assignments are performed
     simultaneously
 - New semantics ("2014 Enclosure")
   - Supports a larger subset of the Acumen language, including
     models comprising multiple objects, nesting of if and match
     statements, and continuous assignments to unprimed variables

Major changes since the Acumen 2012 preview release (Dec 2012):

 - Improved default ("Traditional") semantics
   - Repeated assignments to the same variable no longer allowed, and
     now cause simulation fails with an error
   - All discrete assignments are performed simultaneously
   - Derivatives are interpreted in a more direct manner than before
     NOTE: As these semantics changes reject or alter the behavior of
     some old models the original semantics found in Acumen 2012 will 
     available under under Semantics as "Traditional 2012" in future
     releases.
 - A new and integrated user reference manual is found under Help
 - User interface enhancements
     - Most notably:  File browser, code search, and code completion
 - Improvements to memory utilization
 - Language enhancements
     - A "let" operator has been added to expressions
     - Class names can now be used as values
     - Vector indexing is now supported
 - Enhanced enclosure semantics
     - Transcendental functions ("sin" and "cos")
     - Extended predicate language
     - Improved event localization algorithm
     - New event handling algorithm
 - Various other minor enhancements and fixes

Major changes since Acumen 2010:

 - _3D support based on Yingfu Zeng's Masters thesis
 - Enclosure semantics with support for Zeno systems
 - A more responsive user interface
 - Some improvements to syntax
   - Continuous assignment used to be [=] and is now just =
   - Discrete assignment used to be = and is now :=
 - Syntax highlighting

RUNNING
-------

To run Acumen, double click on the provided jar file.

To run it from the command line use something like:

  java -jar acumen-VERSION.jar

There is also a command line interface intended for advanced users. 
Documentation for this mode can be found by invoking Acumen from the
command line. Assuming that the name of the Acumen jar file is
acumen.jar, the command is as follows:

    java -jar acumen.jar --help

For optimal performance, use Oracle Java 8
(http://www.oracle.com/technetwork/java/javase/downloads/index.html).

SUPPORT
-------

If you can not get acumen started please email help@acumen-language.org
with the following information:

  1) The acumen version you are using (which should be part of the
     name of the jar file).
  2) The name of the OS that you are using (Windows, Mac OS, etc),
  3) Any specific version information you might have about the OS,
  4) The version of Java that you are using.  To check which version
     of Java you have, please use the website:  http://javatester.org/

If you are having problem with a particular model rather than getting
acumen started, then also include:

  5) The code you where trying to execute.

We welcome your feedback on ways to make Acumen better, please
send and bug reports are just general suggestions using the form found
at:

  http://www.acumen-language.org/p/report-bug.html

COMPILING
---------

To compile from source you need to install SBT.  The easiest thing is
to download this file:
  http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/0.13.6/sbt-launch.jar
and save it to ~/bin/sbt-launch.jar.  Then, create a shell script
called sbt with the following contents
  java -Xmx2g -XX:MaxPermSize=1g -XX:ReservedCodeCacheSize=128m -jar ~/bin/sbt-launch.jar "$@"

Then to compile and run acumen use:

  sbt run

To create a jar file use:

  sbt proguard

which will create a jar file in target/scala-2.10/acumen-VERSION.jar

To do more read up on how to use sbt at http://www.scala-sbt.org/.