//SLUGens released under the GNU GPL as extensions for SuperCollider 3, by Nick Collins, http://composerprogrammer.com/index.html
Naive Euler ODE solver implementation of the Weakly Nonlinear Oscillator with external perturbation (see Strogatz, Steven H. (1994) Nonlinear Dynamics and Chaos. Addison-Wesley, Reading, MA. pp215 or Pikovsky, Arkady., Rosenblum, Michael., and Kurths, Jurgen. (2001). Synchronization. CUP: Cambridge. pp 189).
D2x +w0*w0*x = alpha*(x^xexponent*+beta)*y^yexponent + input
The nonlinear term is not calculated if alpha is zero. Otherwise it is generated at additional CPU cost.
All inputs can have .kr rate UGens plugged in.
NOTE: Due to an error of implementation this oscillator has an additional distortion component in it- which adds to the sound! WeaklyNonlinear2 is an implementation with this fixed, but this older version is retained for backwards compatibility and because it has an interesting roughness.
audio rate input, acts as external force
update rate for x
update rate for y
The equation constant w0 (linear oscillator's frequency when alone * 2pi)
reset value for u
reset value for w