Reference Guide

System Requirements

In order to run jaQuzzi a JAVA virtual machine of version 1.3 or higher is required. The virtual machine is provided e.g. by the JAVA 2 SDK, Standard Edition, v1.3 or by the JAVA Plug-in 1.3 for web browsers, which both can be obtained from the SUN Microsystems web site

http://java.sun.com/j2se/

Compiling & Source Code

Generally, the source code of the simulator does not need to be recompiled unless changes are done to the source code. The platform portability of the compiled program is a feature of JAVA.
The source code of the simulator and the hypertext documentation can be found together with the compiled version and this thesis on the following web site

 http://www.physics.buffalo.edu/~phygons/jaQuzzi/

Starting the Simulator

The simulator can operate in two modes:

Interactive Mode

Circuit Management
The toolbar provides basic circuit management functionality such as 'create', 'load', 'save' or 'save as'. Circuits are saved in a clear text data format, which can be parsed by the math engine of the simulator. Data files usually have the extension '*.jaq'. Circuits can be exported to the LaTeX figure environment by choosing the file type '*.tex' in the 'save as' dialog. Circuits cannot be re-imported from this data format.
Circuit management capabilities are reduced when the program is executed within a web site.

Building a Circuit
A circuit can be thought of being arranged in rows and columns of a table. Each row represents a qubit, each column a gate operation. To setup a gate operation to a certain qubit simply create a new gate column, select the corresponding qubit cell in this column an make a right mouse click. The program uses different ways to translate the user selection into an adequate gate (see specify gate).
For the purpose of building more complex circuits and controlling simulation properties locally, gates can be grouped into gate groups. Gates within gate groups cannot be changed unless ungrouped.

Running a Circuit Visualization
The simulator offers several ways of visualizing the progress or result of a computation. Most of the information displayed though would not be accessible in a real physical system. But it is the purpose of the simulator to increase transparency of quantum computations.

Batch Mode

This mode allows it to simulate a circuit without graphical output. The only output generated is the probability distribution and the fidelity, which are automatically dumped into two files (the naming convention is `circuitname+number+.fid/prob').
The syntax is as follows:
java -jar jaQuzzi.jar [options] circuit.jaq

The following options are implemented:

Decoherence errors and operational errors can be combined by simply specifying the `-sigma' as well as the `-rate' option.