Simthetic Logo

Simthetic - A Simulation System for Digital Communications

 
grey pixel
Welcome

Overview

Let's assume you have designed a digital communications system. Now the task is to determine just how good (or bad) it might perform under real-life circumstances, without actually having to build the system in hardware right away. For this task you have come to the right place:

Simthetic, a simulation tool for digital communication systems. This tool is the framework for many different system blocks, which are implemented in separate libraries. Even the basic available library simtheticlib alone implements a complete coded OFDM transmission system in a time-variant radio channel.

Here are the quick facts: Simthetic is

  • released under the GNU Lesser General Public License (LGPL), therefore, available free of charge for everyone: Simply, if you want it, you can have it.
  • open-source software. So, you can scale the code to your every needs, if you like to.
  • written in C++; using XML-technology for configuration handling
  • a native console application that runs on Microsoft Windows, Linux, and other POSIX systems (FreeBSD etc). A graphical frontend for Linux is available as a seperate package named KSimthetic.

and, most importantly: It is available for free, right here for installation:

Installation

Windows

For Windows NT/98/2000/XP, you need to install the following self-extracting setup files, in this order:

  • simthetic and
  • simtheticlib from here
    • You should be able to run an example simthetic simulation file by now. To run an example simulation, open a command prompt, go into the directory C:\Programme\simthetic\examples and type
      • ..\bin\simthetic.exe sc_awgn_psk.xml
  • Optionally for MIMO simulations:

In case you intend to compile simthetic on your own, you will need the Open Source MinGW programming environment, including the gcc compiler. More instructions are provided in the file README.WIN32 of the simthetic package, which will be installed in c:\Programme\simthetic\doc\simthetic by the above setup files.

Linux

Depending on your distribution, the download pages might either offer pre-compiled rpm packages, or you might have to compile the packages from source yourself. In any case, you need the following packages in this order:

  • simthetic and
  • simtheticlib from here
    • You should be able to run an example simthetic simulation file by now. To run an example simulation, go into the subdirectory simtheticlib/parameters/ of the simtheticlib package and type
      • simthetic sc_awgn_psk.xml
  • Optionally for MIMO simulations:
  • Optionally for the GUI: ksimthetic from here

For each package, follow the usual Linux installation rules as noted in the files README and INSTALL.

Updates are available on simthetic.sourceforge.net.

Documentation

Currently the most comprehensive and up-to-date documentation is directly in the source code. A hyperlinked HTML documentation of the source code can be generated by the tool doxygen. We have an online version of simthetic and of the simtheticlib doxygen documentation available:

Graphical User Interface

Simthetic itself is a command-line application that reads a simulation parameter file, runs the simulation, and finishes with an output file containing the results (which may or may not be plotted by gnuplot immediately). There is no graphical user interface in Simthetic itself. There is, however, a GUI tool for creating the simulation parameter files: KSimthetic. This GUI tool is based on the Qt cross-platform GUI toolkit. This means the source code of the KSimthetic program can be used on both Linux and Windows.

Windows

The Qt-4.x library is available on Windows. By this excellent library we can provide a pre-compiled binary of KSimthetic, available from here.

Linux

Again, for some distributions there are pre-compiled packages available (e.g. for SuSE 9.0). Otherwise you can compiler and install from source code. Packages are available from here.

Updates are available on simthetic.sourceforge.net.

Have fun,
The Simthetic Development Team




Contact:
simthetic-devel at lists.sourceforge.net