Phaser 3.0 Release Notes
This document summarizes the changes and what's new in the 3.0 release of Phaser. The previous release of Phaser is version 2.1-20031126-RELEASE and is superceded by the current release, full version: 3.0-20090309-RELEASE. This document is organized into five major sections: [1] New Software System Requirements, [2] New Hardware System Recommendations, [3] New Platform Support, [4] New And Improved: Application Features, GUI, & Performance, and [5] Bug Fixes.


[1] New Software System Requirements: Java 5.0 (or greater)!

Phaser 3.0 was built using Sun Microsystem's Java 5.0 compiler (version 1.5.0_17). To run Phaser, the user will need at a minimum a Java Runtime Environment (JRE) 5.0 or greater installed on the target platform. The Phaser installers for the Windows, Linux, and Solaris platforms available at our website (http://www.phaser.com) are bundled with Sun's Java 6 JRE -- note, Phaser performs optimally on JRE 6, and is the preferred and recommended JRE to use. Also available from our website are installers for the Mac OS X and generic Unix (Linux, FreeBSD, etc) platforms. Regarding Phaser running on other platforms not mentioned here, the working theory is that Phaser, being a 100% Java application, would run on any platform supporting a suitable JRE. For more information on availability of suitable JRE's for other platforms, consult Sun's Java Technology home page at http://java.sun.com, or contact the vendor support line for the particular platform that is in question.

[2] New Hardware System Recommendations:

Phaser is a processor, memory, thread, and graphics resource-intensive application. The configuration/performance of those particular subsystem components directly affect the runtime performance of both Java and Phaser. A single 1.5 GHz processor, 1.0 GB RAM, and a 64MB video card that supports 1028 x 768 screen resolution are the bare minimum requirements needed to run Phaser and run it reasonably well. However, for serious scientific study necessitating advanced and aggressive usage of Phaser, the following hardware system recommendations are: one or preferably multiple 2.0 GHz dual-core processors or faster, 2.0 GB RAM or more, and a 256MB video card that supports 1280 x 1024 or a much higher screen resolution. The initial instance of the Java Virtual Machine (JVM) and Phaser together utilize a minimum of 26 threads and can spawn many more depending on what Phaser is being asked to do; and each additional instance of Phaser creates a minimum of 15 additional threads. Phaser can quickly consume vast amounts of memory, processor, and screen real-estate resources depending on the computations and visualizations that it might be performing (for example: solving, rotating, animating many points in a large 3-D or greater dimensioned system, running multiple concurrent instances and/or simultaneously running multiple solutions in multiple views, or creating large galleries) -- hence, we have the hardware system recommendations made here. Lastly, at least 100MB of available disk space is needed for the installation of Phaser along with a bundled JRE. Without the inclusion of a bundled JRE, at least 10MB of disk space is required for the installation of Phaser.

[3] New Platform Support: Mac OS X (v10.4.5 and later)!

Phaser is now officially supported on the Mac OS X Tiger platform. Installers for the aforementioned platforms are available at our website. Although our Mac OS X installer does not include a bundled JRE since Apple is the sole distributor of its Java software, note that JRE 5.0 Release 4 (as of 03/17/2006) is the default Java version installed on Mac OS X Tiger (version 10.4.5 and later). For earlier versions of Tiger (10.4.2 - 10.4.3), earlier releases of JRE 5.0 might be available as downloads from the Apple website (http://www.apple.com/java).

[4] New And Improved: Application Features, GUI, & Performance:

In general, the underlying architecture of the Phaser Graphical User Interface (GUI) has been thoroughly revamped and improved, from the inside and out. The Phaser GUI no longer depends on heavy-weight, native, OS-dependent components. Now fully leveraging Java's lightweight-designed Swing GUI toolkit (part of the Java Foundation Classes), the Phaser interface is considerably cleaner, sharper, nimbler, and more consistent and congruent in look and feel across different platforms. Futhermore, large areas of core Phaser code have been retooled, refactored, and optimized for runtime performance and stability, including such areas as: thread life cycle, utilization, and synchronization management, graphical and numerical routines, project and view data structure loading and manipulation, and intra-application object communication logistics. Lastly, overall performance and stability improvements in the latest contemporary Java Virtual Machine and Runtime Environments are extended to and are realized by Phaser as the application itself is 100% pure Java. The final result achieved here in this release of Phaser is a well-oiled machine, a finely tuned tool, and ultimately, a professional universal simulator for dynamical systems.

The following is a brief descriptive list of the significant new feature additions and improvements to Phaser 3.0:

Phaser Sequencer: System Parameter And Time Auto Sequencers (New): An innovative and powerful educational/research tool for automating the exploration of dynamical systems! Phaser now allows the user to enable and run a project with automated sequencing of a system's parameters or time values. The sequence steps generated by Phaser are based on user configured auto incremental or decremental factors independently and/or concurrently applied to one or more system's parameters, or time settings. As the sequencer runs, each intermediate step results in a new simulation solution project, interpolated on the auto adjusted parameter or time values, and each new project rendered is automatically added to the Gallery. The final result is an automatically created collection or gallery of methodical exploratory dynamical system studies within a prescribed parameter- or time-based boundary. A particularly effective tool for illustrating existing or discovering new system dynamica. Phaser solution views that support the new system sequencing engines are the Phase Portrait, Xi Vs Time, Bifurcation Diagram, and Stair Stepper Diagram views.

Phaser Gallery SlideShow (Internal Movie Creation) (New): The Phaser Gallery now includes a new SlideShow tool. This visualization tool allows users to create and view a slide show of pictures from projects that have been manually or automatically (via the Phaser Sequencers) added to the Gallery.

Phaser Gallery Image Serializer (External Movie Creation) (New): In one command, pictures representing the projects stored in the Gallery can now be serialized to the filesystem as automatically, optionally scaled, and serially named image files (in either png, jpg, or bmp format). This is useful for embedding work done in Phaser as illustrations in research papers or documents, or for creating illustrative movies in third party applications like Apple's QuickTime for example.

Phaser/Gallery Project Image File Export Support (New): Any solution picture from any individual Phaser or Gallery project can now be optionally scaled and exported to the filesystem as an image file (in either png, jpg, or bmp format). Moreover, the Gallery as a whole, including its constituent frames, can be saved as an image file. This is useful for embedding work done in Phaser as illustrations in research papers or documents.

Phaser Gallery Image/Scaling Quality/Performance (Updated/New): Projects created in Phaser and stored in the Gallery are shown as scaled-down framed images of their larger counterpart views for the solved systems they represent. These images are now rendered using a superior scaling algorithm which gives better quality pictures. Futhermore, each frame in the Gallery is now serviced by its own image processor thread lending to overall enhanced real-time performance when the Gallery itself is changed or resized.

Phaser Gallery Open And Merge Feature (New): The Gallery now allows the user to open a previously saved gallery project on local disk or over the network via http, and merge it into an existing gallery project loaded into Phaser. This feature makes it easier for the user to create new collaborative or joint galleries based on both new and/or previous work done.

Phaser/Gallery Open Project Title/File Tool Bar And Status (New): The filename of the currently open Phaser or Gallery project is now set in the title bar of the respective application windows. Phaser additionally includes a new optionally displayable File Tool Bar which details the full path and file name of the currently loaded project. The status (modified/saved state) of a project under development in Phaser is now indicated in these areas as well.

Phaser/Gallery Project Guides (New): Phaser includes two new project supplemental user-based applications: The Phaser Project Guide and The Gallery Project Guide. These are provided respectively to the user for supplying optional supplemental documentation on Phaser and/or Gallery projects created in Phaser. These guides are bundled with projects when they are saved and then they are available for viewing again after opening the projects.

Phaser Numerics Console (Updated): In addition to reporting and recording any runtime error messages and statistics for the algorithms employed by Phaser while solving systems in any solution view, the console now outputs the computation time in seconds for every view run.

Phaser Performance Index Benchmark (New): Integrated into Phaser is a new benchmarking tool designed to evaluate the combined performance of Phaser, the Java Virtual Machine (JVM), the processor, memory, and video configurations of the system under test. The Phaser Performance Index benchmark is launched from the main Phaser application and runs 10 preset Phaser project workloads, representative of the types of work that Phaser typically performs. The time it takes to run each workload test is recorded and divided into the corresponding time it took the Phaser Reference Machine to run each one. The Phaser Peformance Index (PPI) is then computed as the geometric mean of the 10 normalized test runtime ratios. This index is useful for comparing the performance of Phaser running on different Java Virtual Machines on different platforms or systems. The Phaser Reference Machine has a PPI score of 1.00. If the system under test scores less than 1.00 on this benchmark, consideration for a system upgrade is in order.

Phaser Equation Editor/Parser/Evaluator (Updated): The Phaser Equation Parser and Evaluator recognize many new additional math functions. These updates are specifically documented in the Phaser Help application.

Phaser Phase Portrait View, 3-D Real-Time Rotation Visualization Aids (New): The 3-D Real-Time configuration mode of the Phase Portrat View has been enhanced with two new visual-aid tools: the 3-D Solution Plot Real-Time Traveler and the 3-D Real-Time AutoZoomer. The Traveler allows the user to interactively drive in real-time a solution's plot backwards or forwards in time. This is a useful visualzation tool especially when used at the moment of bifurcation in a system under study. The AutoZoomer allows the user to zoom in and out of 3-D solutions in real-time. Both the Real-Time Traveler and AutoZoomer tools can be used even while a 3-D system is undergoing real-time rotation animation in Phaser.

Phaser View/Graph Grid Labels, Bounding Box (New): Phaser graphical Views can now be dressed with configurable graph labels and bounding box coordinates. These attributes impart greater graphical information context to the views.

Phaser Color Chooser (Updated): Choosing colors in Phaser is an important task for any user since colors graphically differentiate various simulation elements such as solutions to multiple initial conditions, and many other visualization entities represented in Phaser rely on precise, discerning color choices. The Phaser Color Chooser has been updated to include a new Hue/Saturation/Brightness (HSB) color selection tool. The existing color Swatch (which now keeps user color history) and the RED-GREEN-BLUE (RGB) color selection tools have been improved, and all three color selectors function and sync together.

Phaser Configuration File (New): Upon loading, Phaser now reads and supports an external configuration file. This file contains many configurable settings used for tweaking various runtime behavioral and performance characteristics of Phaser.

Phaser One-Keystroke Command Control (New): Most major Phaser functionalities can now be alternatively accessed and invoked via one keystroke commands, liberating the user from the mouse or touchpad interface devices.

Phaser Pluggable Look And Feel (New): In standardizing the entire Phaser GUI framework on Java's Swing GUI architecture, Phaser users can now make on-the-fly changes to the overall look-and-feel (aka skin) of the interface. Depending on the platform where Phaser is running, the look-and-feel types supported are Microsoft Windows, Apple Mac OS X Aqua, UNIX CDE/Motif, UNIX GNOME/GTK+, and last but not least, the Java cross-platform (supported by all platforms). The default setting for Phaser is the Java cross-platform look-and-feel.

Phaser User Interfaces (Updated/New): There have been numerous changes and updates made to the Phaser primary and co-primary interfaces (Phaser, Color Chooser, Numerics/View Editors, Numerics Console, Custom Equation Editor, and the Gallery), and new interfaces added (such as Phaser Sequencer, Gallery Serializer, Gallery SlideShow, Project and Gallery Guides). These changes are specifically documented in the updated Phaser Help application built into Phaser itself.

Phaser Help Application (Updated): Phaser includes a robust online help facility. This builtin tool functions as both a browsable and searchable comprehensive carefully indexed user's guide, tutorial, and reference documentation for Phaser. The content and interface have been accordingly updated for this new release.

Phaser Reader Mode (New): Although Phaser is commerical software that requires purchasing a license key from Phaser Scientific Software, LLC. to access and activate full functionality, there is a newly available mode of operation that permits it to be restrictively used without a license and free of charge for an indefinite period of time -- this novel mode is called the Phaser Reader, and allows users to do just that: Read! The intent is that this mode will help to promote the use of Phaser software for the free exchange and sharing of academic research, ideas, and knowledge related to the exploration and study of dynamical systems, a fundamental rich branch of theoretical mathematics with far-reaching ubiquitous applications in nearly all scientific disciplines (physics, biology, chemistry, astronomy, and economics, to name a serveral). The Phaser Reader allows its non-licensed users to freely read, run, and view projects and galleries created in Phaser by licensed users of Phaser. Specifically, the Phaser Reader mode restricts the following functionality: saving/serializing Phaser/Gallery projects and/or images, adding or importing custom equations into the Phaser Custom Equation Library, sequencing Phaser projects, and modifying any project's numerical configurations. To license and fully activate your copy of Phaser, please follow the instructions provided at our website software licensing page: http://www.phaser.com/main/license.html

[5] Bug Fixes

Unlike nearly all other developers, we do not put any bugs in our code! But seriously, since the previous 2.1 release, several minor, non-critical issues in Phaser have been reported and have been since addressed in the new 3.0 release. Any major issues reported were typically platform-specific runtime bugs or problems in the earlier implementations of the Java Virtual Machine (JVM) that on occassion had a direct impact on the runtime performance or stability of Phaser. Now running under either the new Java 5 or 6 Runtime Environments, Phaser performs and responds beautifully well, and without a hitch!

Please see our website support page at http://www.phaser.com/support/index.html for instructions on reporting any new bugs or issues encountered while using this new release of Phaser. We encourage and look forward to your feedback.

For a list of current bugs/fixes/revisions in 3.0, view the Phaser 3.0 Errata Document.

Thank you, and enjoy!