logo

BLOCKCOMPILER

Tool for physics-based modeling and DSP


History
Home
How it works
Software
Documents
History
Contacts


How it emerged:

The first version of BlockCompiler emerged in 2002-2003 in a European collaboration project ALMA (IST-2001-33059 Algorithms for the Modelling of Acoustic Interactions) and was used in modeling many musical instruments and sound sources. In 2003 it included all essential features, such as real-time simulation, C-code generation and exporting of models to Pd (Pure Data) and Mustajuuri. It was written by Matti Karjalainen, with help from others at TKK Acoustics laboratory, particularly by Hannu Pulakka, who implemented the model export support. Cumhur Erkut was helpful in developing the general methodology of block-based modeling paradigms and David Yeh helped in WDF modeling formulations. Several others contributed to the formulation of instrument model development.

A major problem with BlockCompiler version 1 was that it was restricted to Mac OSX operating system and required Macintosh Common Lisp (MCL) that was available only for Macs. Therefore its user base was very limited.

As it often happens, when software gets complex, there is need for rewriting and reformulation of the basic starting points. The second version of BlockCompiler was formulated in 2004-05, but with less effort, and the solutions were not as satisfactory as was planned. Furthermore, it was still limited to Mac only.

A rewrite was again triggered in 2006, together with an idea of writing an accompanying document on multiparadigm modeling and how to use BlockCompiler for such purposes. It was also decided that the software should be made available for all three major operating systems: Mac OSX, Windows, and Linux, being able to run without expensive commercial software components. One more new idea was to export BlockCompiler models to Matlab and Octave.

Present status:

Now this work is in a state where version 3,  called BC3, is partially operational and made available for experimentation. Because the development is made by a small group and not in a major academic/commercial project, the progress rate is also limited. The plan is to make BC3 functional in its major aspects during 2008-09, including relatively extensive block library, exporting support, a good set of programming examples, and a systematic document on multi-paradigm physics-based modeling.

 
Last modified: February 15, 2008 by MK