Coded in modern Fortran, GNU C-Graph demonstrates the theory of convolution underlying engineering systems and signal analysis. "C-Graph" is an abbreviation for "Convolution Graph".
Unlike other signal processing packages, C-Graph dispenses with the learning curve for writing code. Instead, an interactive dialogue guides the user to effortlessly select values for keyboard input.
Designed to enhance the learning experience, C-Graph features an attractive array of scalable pulses, periodic, and aperiodic signal types of variable frequency fundamental to the study of systems theory. The package displays the spectra of any two waveforms chosen by the user, computes their linear convolution, then compares their circular convolution according to the convolution theorem. Each signal is modelled by a register of N discrete values (samples), and the discrete Fourier Transform (DFT) computed by the Fast Fourier Transform (FFT).
Students of signal and systems theory will find GNU C-Graph to be of value in visualizing convolution.
GNU C-Graph is derived from the BSc. Honours dissertation in Electrical Engineering "Interactive Computer Package Demonstrating: Sampling Convolution and the FFT", Adrienne Gaye Thompson, University of Aberdeen (1983).
Adrienne - who is sole author of the dissertation - reproduced its Fortran 77 program in modern Fortran. She donated C-Graph to GNU realising that the package's usefulness could be enjoyed globally.
Download C-Graph from the main GNU ftp server: http://ftp.gnu.org/gnu/c-graph/ via HTTP or, ftp://ftp.gnu.org/gnu/c-graph/ by FTP. C-Graph can also be found on the GNU mirrors. Please use a mirror when possible.
C-Graph is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
The C-Graph manual is currently available in pdf format, for which the Texinfo source may also be downloaded. We will be making the manual available in the usual formats published by GNU. You may also find more information about C-Graph by running info c-graph or by looking at /usr/doc/c-graph/, /usr/local/doc/c-graph/, or similar directories on your system. A brief summary is available by running c-graph --help.
The mailing list for C-Graph is:
Your C-Graph experience will impact your intuitive understanding of convolution theory. We can better meet your needs if you tell us about your sessions, suggest new features, and report any issues you may encounter. Let us hear from you. Get in touch and exchange ideas on bug-c-graph!
We plan to upgrade the FFT algorithm and provide a custom command line interface in our next release. Contributions from other developers are welcome;
Over 100,000 discover that visualizing convolution with C-Graph is easy! See our first press releases:
We are recruiting developers! Please join us via the mailing lists.
C-Graph is dedicated to all victims of apartheid, and to Haitian-Bahamian attorney-at-law and human rights advocate, Eliezer Regnier, who died as a result of the struggle for justice.
Our logo is inspired by computer vision, the movie "Blade Runner", the copyright symbol, and Regnier's saxophone.
Please see the Translations README for information on coordinating and submitting translations for C-Graph.
Copyright © 2013 Adrienne Gaye Thompson
This page is licensed under a Creative Commons Attribution-NoDerivs 3.0 United States License.
Updated: $Date: 2013/09/26 17:47:14 $