started by [Theo Verelst] [Maxima] is a tcl containing math program with Tk interface. In this example tcl is used to fabricate formulas for maxima's interpreter, for a part of one of the most important issues in signal processing and computerized real-world data interaction: the reconstruction of a samples signal. Important for people using for instance [snack], the tcl/tk sound sample and process library, and especially if that use includes measurement-like analyisis, which is quite reasonably possible with tcl, and essential for anybody in signal processing type of field, or lets say where measurements are taken and actuators driven by tcl (and tk). The whole subject is basis years advanced EE stuff, but the essence is that when a signal (like a sound source for snack) is sampled, or when peole play around with 'signal vectors' and possibly matrix based or other signal operations in tcl, or even when functions are plotted with Tk (refs?) based on a limited set of evaluated poiunts, once the samples in a list or array are supposed to be interprerted or transformed back as ''continuous signal'' , the usual DA converter or step (0th order) approximation do not a very good job at doing justice to the theory behind sampling. In this example I used maxima to construct a To make the formula in a way that I happened to find handy to quickly get to a result, I used 'Show tcl console' from the Options menu, and used the following maxima code generator line in Tcl: for {set i 0} {$i<29} {incr i} { puts -nonewline "sinc(x,$i)*sq7($i/28)+ " } Which gives all the terms for 28 samples reconstructing a signal made by adding three sine components of a square wave approximation with cycle length 28, sampled at equidistant times [0,1,2...28], where each sample is weighing a sinc function for continuous signal reconstruction. This example makes the error that the influence of each sample on the resulting (reconstructed) signal, extends pretty far, because the 1/x term doesn't vanish quickly, while the definition of the reconstruction function requires that each term from - through + infinity is taken into account. By taking 28 samples before and after the wave we viewed into account as well, results visually start to become more accurate, though beware that when you play back samples over snack, a good quality audio setup will make errors in the sub 0.01% range audible, which snack can in principle handle by using 16 bits samples, but the above shows that de DA converter would have to weight possibly up to 10,000 samples before and after each sample to prevent sync function error induced recontruction errors ([[expr sin($x)/$x]] is down to 0.0001 for x > 10000 ...) . [http://82.168.209.239/Wiki/sinc1.jpg]