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-20080224-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_14).
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.
Thank you, and enjoy!