This project is read-only.



To install the application, download zip package from the Downloads tab (latest release), save it on your computer. Create a folder on your hard drive and extract archive into that folder, when decompression completed, run the CA.UI.exe file.

To open a model, select 'Main' -> 'Load machine state from file' menu item, than provide any model file.

The project consists of several parts:

  1. Windows application, which visualizes the result of process of changing generations and allows to change configuration of the open model. Example of the windows application is provided on the attached image sample_of_winapp.pngsample_of_winapp_1.png. Latest version of the win application can always be downloaded from here.
  2. Project with models. Each model has to implement the ITestableModel interface and provide functionality for the two methods: Test, Show. You can find an example of a model in the sources.
  3. Saved model sate. Saved model state is a .camodel file, which stores information about model configuration and state of the matrices. At any point of time you can freeze the machine and save it's state to a .camodel file. Examples of the model states are on the Home page of this project. You can download them and try to open. In case if you try to open saved model state, without model installed, application will trow an error. List of files with saved states of different models:


Documentation will provide detailed description of the second part - project with models.

In the attached sources you can find the samples of few models, like harmonic oscillator, TM gas, GM gas and more later.
When user runs a model, the Test method of the ITestableModel interface is called by some period of time for the selected model. Inside this method, it needs to provide calculations, save state of the particles and draw the result on the SdlScreenPixelBuffer surface using colors from the 'colors' palette.
Information about state of each cell is stored in the one one-dimensional array of integer values (type of short). One-dimensional array is a simplification of the two dimensional. Keep in mind that all matrices are two dimensional, and storing information in that way is just a simplification, to speed up the data processing.

The "iterationsCount" parameter specifies how many iterations it needs to perform without providing intermediate result of the calculations. It is useful when user wants to get system state after some long period of time and he is not very interested in the intermediate calculations.

When development of a model is completed, it needs to copy the library into the folder where windows application is installed. Usually it is "c:\Program Files (x86)\SamQQQ\Cellular Automates Emulator\". Model will be automatically loaded, and new rules should be available in the rules set select box.

Last edited Jul 12, 2015 at 4:53 PM by SemShekhovtsov, version 19


No comments yet.