*******************************************************************************
** Settings files for reproducing the results presented in the paper         **
** "SURPASSING THE THEORETICAL 1-NORM PHASE TRANSITION IN COMPRESSIVE        **
** SENSING BY TUNING THE SMOOTHED L0 ALGORITHM as well as scripts for        **
** generating the figures and calculating the computation time statistics    **
** both presented in the paper                                               **
**                                                                           **
**  26/11 2012                                                               **
**                                                                           **
**  By:                                                                      **
**   Christian Schou Oxvig                                                   **
**   Patrick Steffen Pedersen                                                **
**                                                                           **
*******************************************************************************



¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
¤¤¤  Introduction
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤

The relevant simulations used to produce the results presented in the
"SURPASSING THE THEORETICAL 1-NORM PHASE TRANSITION IN COMPRESSIVE SENSING BY
TUNING THE SMOOTHED L0 ALGORITHM" paper are specified in individual
"data/[FOLDER_NAME]/settings.xml" files. A settings file is used by the
cssf/test Python package when the simulation is started. The simulation results
are stored in a hdf5 file named "data/[FOLDER_NAME]/data.hdf5".

The figures presented in the paper can be reproduced by running the three
"figures/fig_[FIGURE_NUMBER].py" scripts. Furthermore, the computation time
statistics presented in the paper can be recalculated by running the
"times/times.py" script.



¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
¤¤¤  System requirements
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤

The scripts have been tested with the Enthought Python Distribution (EPD) 7.2-2
(64-bit) on Linux. It may or may not work with other Python distributions
and/or operating systems.

Dependencies are:
  - Numpy
  - Scipy
  - Matplotlib
  - h5py
  - cssf



¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤
¤¤¤  Usage
¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤¤

A settings file "settings.xml" may be used in connection with the cssf/test
Python package to perform the simulation it specifies. Note that by doing so
any data files in the directory containing "settings.xml" will be
overwritten.

As an example of starting a simulation, open an interactive Python session and
run the following commands (the parameter given to "run" is the path of the
settings file for the test):

   >>> import cssf
   >>> cssf.test.run('data/rad_sl0_mod/settings.xml')

The figures that show simulation results can only be generated if the relevant
simulation results are stored in a "data.hdf5" file in the accompanying data
folder.

To generate a figure, simply execute the corresponding Python script, e.g.
to generate Figure 1 from the paper:

  $ python figures/fig_1.py

To calculate the computation time statistics, simply execute the Python script,
i.e.:

  $ python times/times.py

