Csound Csound-dev Csound-tekno Search About

[Cs-dev] Chua's Oscillator

Date2008-05-01 04:08
From"Michael Gogins"
Subject[Cs-dev] Chua's Oscillator
I have added two slightly different implementations of Chua's oscillator to 
the list of Csound opcodes. One implementation, chuap, uses a piecewise 
nonlinearity. The other implementation, cuac, uses a cubic polyonimial 
nonlinearity.

Chua's oscillator is the first analog electronic circuit that was proved to 
exhibit chaotic behavior such as bifurcation, chaotic attractors, and so on. 
In the 1990s it was the focus of fairly intensive research and is still 
occasionally used in the context of radio encryption and the like.

There are some videos on YouTube that demonstrate electronic forms of the 
oscillator with Lissajous plots on the oscilloscope and attractive sounds.

The relevance of Chua's oscillator to computer music was explored in some 
papers and demonstrations in the 1990s.

The relevance of Chua's oscillator me personally is that I really like some 
of the sounds I heard on the YouTube clips.

The implementation in Csound also demonstrates the use of the OpcodeBase.hpp 
C++ wrapper for Csound opcodes, and of boost::numeric::ublas for numerical 
computing and digital signal processing. As it happens, there is a MATLAB 
package simulating Chua's oscillator, called ABC++, by James Patrick McEvoy. 
I was able to virtually cut and paste the McEvoy's MATLAB code into C++ code 
because boost::numeric::ublas::vector is coded to be used with the same 
syntax as MATLAB vectors. I suppose this is not likely to be an accident. 
There are probably a number of DSP explorations in MATLAB that could be 
adapted to Csound opcodes this way.

The algorithm uses a difference equation with Runge-Kutta integration to 
simulate the circuit.

I also have booked in an example with 3 sample attractors. This work is not 
finished. I need to improve the example, test the cubic nonlinearity, and 
provide a Python application with sliders to control the parameters for more 
interactive exploration of the oscillator.



-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2008-05-01 09:28
FromVictor Lazzarini
SubjectRe: [Cs-dev] Chua's Oscillator
Does that introduce a new Boost dependency?

Victor

At 04:08 01/05/2008, you wrote:
>I have added two slightly different implementations of Chua's oscillator to
>the list of Csound opcodes. One implementation, chuap, uses a piecewise
>nonlinearity. The other implementation, cuac, uses a cubic polyonimial
>nonlinearity.
>
>Chua's oscillator is the first analog electronic circuit that was proved to
>exhibit chaotic behavior such as bifurcation, chaotic attractors, and so on.
>In the 1990s it was the focus of fairly intensive research and is still
>occasionally used in the context of radio encryption and the like.
>
>There are some videos on YouTube that demonstrate electronic forms of the
>oscillator with Lissajous plots on the oscilloscope and attractive sounds.
>
>The relevance of Chua's oscillator to computer music was explored in some
>papers and demonstrations in the 1990s.
>
>The relevance of Chua's oscillator me personally is that I really like some
>of the sounds I heard on the YouTube clips.
>
>The implementation in Csound also demonstrates the use of the OpcodeBase.hpp
>C++ wrapper for Csound opcodes, and of boost::numeric::ublas for numerical
>computing and digital signal processing. As it happens, there is a MATLAB
>package simulating Chua's oscillator, called ABC++, by James Patrick McEvoy.
>I was able to virtually cut and paste the McEvoy's MATLAB code into C++ code
>because boost::numeric::ublas::vector is coded to be used with the same
>syntax as MATLAB vectors. I suppose this is not likely to be an accident.
>There are probably a number of DSP explorations in MATLAB that could be
>adapted to Csound opcodes this way.
>
>The algorithm uses a difference equation with Runge-Kutta integration to
>simulate the circuit.
>
>I also have booked in an example with 3 sample attractors. This work is not
>finished. I need to improve the example, test the cubic nonlinearity, and
>provide a Python application with sliders to control the parameters for more
>interactive exploration of the oscillator.
>
>
>
>-------------------------------------------------------------------------
>This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
>Don't miss this year's exciting event. There's still time to save $100.
>Use priority code J8TL2D2.
>http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
>_______________________________________________
>Csound-devel mailing list
>Csound-devel@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/csound-devel

Victor Lazzarini
Music Technology Laboratory
Music Department
National University of Ireland, Maynooth


-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2008-05-01 09:31
From"Oeyvind Brandtsegg"
SubjectRe: [Cs-dev] Chua's Oscillator
AttachmentsNone