[PD-cvs] externals/tb/chaos/src Makefile.am, 1.9, 1.10 bernoulli_map.hpp, 1.4, 1.5 bungalow_tent_map.hpp, 1.4, 1.5 chaos_base.hpp, 1.6, 1.7 chaos_defs.hpp, 1.3, 1.4 chaos_dsp.hpp, 1.8, 1.9 chua.hpp, 1.1, 1.2 circle_map.hpp, 1.4, 1.5 coupled_logistic.hpp, 1.2, 1.3 driven_anharmonic.hpp, 1.3, 1.4 driven_van_der_pol.hpp, 1.1, 1.2 duffing_map.hpp, 1.1, 1.2 gauss_map.hpp, 1.4, 1.5 henon_map.hpp, 1.4, 1.5 ikeda_laser_map.hpp, 1.4, 1.5 latoocarfian.hpp, 1.2, 1.3 latoomutalpha.hpp, 1.2, 1.3 latoomutbeta.hpp, 1.2, 1.3 latoomutgamma.hpp, 1.2, 1.3 logistic_map.hpp, 1.6, 1.7 lorenz.hpp, 1.6, 1.7 lozi_map.hpp, 1.4, 1.5 main.cpp, 1.9, 1.10 roessler.hpp, 1.2, 1.3 sine_map.hpp, 1.4, 1.5 standard_map.hpp, 1.4, 1.5 tent_map.hpp, 1.4, 1.5

Tim Blechmann timblech at users.sourceforge.net
Thu Jun 9 14:52:20 CEST 2005


Update of /cvsroot/pure-data/externals/tb/chaos/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15932

Modified Files:
	Makefile.am bernoulli_map.hpp bungalow_tent_map.hpp 
	chaos_base.hpp chaos_defs.hpp chaos_dsp.hpp chua.hpp 
	circle_map.hpp coupled_logistic.hpp driven_anharmonic.hpp 
	driven_van_der_pol.hpp duffing_map.hpp gauss_map.hpp 
	henon_map.hpp ikeda_laser_map.hpp latoocarfian.hpp 
	latoomutalpha.hpp latoomutbeta.hpp latoomutgamma.hpp 
	logistic_map.hpp lorenz.hpp lozi_map.hpp main.cpp roessler.hpp 
	sine_map.hpp standard_map.hpp tent_map.hpp 
Log Message:
changed initialisation

Index: coupled_logistic.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/coupled_logistic.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** coupled_logistic.hpp	1 Jan 2005 11:06:58 -0000	1.2
--- coupled_logistic.hpp	9 Jun 2005 12:52:17 -0000	1.3
***************
*** 22,26 ****
  
  //  coupled_logistic map: x[n+1] = r * x[n] * (1 - x[n]) + e * (y[n] - x[n])
! //                        y[n+1] = r * y[n] * (1 - y[n]) + e * (x[t] - y[t])
  //                        1 <= r <= 4
  //  taken from Willi-Hans Steeb: Chaos and Fractals
--- 22,26 ----
  
  //  coupled_logistic map: x[n+1] = r * x[n] * (1 - x[n]) + e * (y[n] - x[n])
! //                        y[n+1] = r * y[n] * (1 - y[n]) + e * (x[n] - y[n])
  //                        1 <= r <= 4
  //  taken from Willi-Hans Steeb: Chaos and Fractals
***************
*** 32,46 ****
  	coupled_logistic()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(e, 0.06);
! 		CHAOS_SYS_INIT(r, 3.7);
! 		CHAOS_SYS_INIT(x, 0.1);
! 		CHAOS_SYS_INIT(x, 0.2);
  	}
  
  	~coupled_logistic()
  	{
- 		delete m_data;
  	}
  
--- 32,48 ----
  	coupled_logistic()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 
! 		CHAOS_PAR_INIT(e, 0.06);
! 		CHAOS_PAR_INIT(r, 3.7);
! 
! 		CHAOS_SYS_INIT(x, 0.1,0);
! 		CHAOS_SYS_INIT(y, 0.2,1);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~coupled_logistic()
  	{
  	}
  
***************
*** 62,67 ****
  	}
  
! 	CHAOS_SYSVAR_FUNCS(x, 0);
! 	CHAOS_SYSVAR_FUNCS(y, 0);
  	
  };
--- 64,85 ----
  	}
  
! 	CHAOS_SYSVAR_FUNCS_PRED(x, 0, m_pred_xy);
! 	CHAOS_SYSVAR_FUNCS_PRED(y, 0, m_pred_xy);
! 	
! 	bool m_pred_xy(t_float f)
! 	{
! 		return (f > 0) && (f < 1);
! 	}
! 
! 	virtual void m_verify()
! 	{
! 		data_t x = m_data[0];
! 		data_t y = m_data[1];
! 		if (!m_pred_xy(x))
! 			m_data[0] = 0.5;
! 		if (!m_pred_xy(y))
! 			m_data[1] = 0.5;
! 	}
! 
  	
  };

Index: main.cpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/main.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** main.cpp	12 Feb 2005 08:58:21 -0000	1.9
--- main.cpp	9 Jun 2005 12:52:17 -0000	1.10
***************
*** 24,28 ****
  void chaos_library_setup()
  {
! 	post("chaos~ version "PACKAGE_VERSION", compiled on "__DATE__" \n");
  
  
--- 24,28 ----
  void chaos_library_setup()
  {
! 	post("chaos~ version 0.01, compiled on "__DATE__" \n");
  
  

Index: roessler.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/roessler.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** roessler.hpp	1 Jan 2005 11:06:58 -0000	1.2
--- roessler.hpp	9 Jun 2005 12:52:17 -0000	1.3
***************
*** 32,47 ****
  	roessler()
  	{
! 		m_num_eq = 3;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(method,0);
! 		CHAOS_SYS_INIT(x1,0);
! 		CHAOS_SYS_INIT(x2,0);
! 		CHAOS_SYS_INIT(x3,0);
! 		CHAOS_SYS_INIT(a,4);
! 		CHAOS_SYS_INIT(b,4);
! 		CHAOS_SYS_INIT(c,4);
! 		CHAOS_SYS_INIT(dt,0.01);
  
  		ode_base_alloc();
  	}
--- 32,49 ----
  	roessler()
  	{
! 		CHAOS_PRECONSTRUCTOR;
  
! 		CHAOS_PAR_INIT(method,0);
! 		CHAOS_PAR_INIT(dt,0.01);
! 
! 		CHAOS_SYS_INIT(x1,0,0);
! 		CHAOS_SYS_INIT(x2,0,1);
! 		CHAOS_SYS_INIT(x3,0,2);
! 
! 		CHAOS_PAR_INIT(a,4);
! 		CHAOS_PAR_INIT(b,4);
! 		CHAOS_PAR_INIT(c,4);
  
+ 		CHAOS_POSTCONSTRUCTOR;
  		ode_base_alloc();
  	}
***************
*** 50,54 ****
  	{
  		ode_base_free();
! 		delete m_data;
  	}
  
--- 52,56 ----
  	{
  		ode_base_free();
! 		
  	}
  

Index: chaos_dsp.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/chaos_dsp.hpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** chaos_dsp.hpp	13 Jan 2005 13:39:57 -0000	1.8
--- chaos_dsp.hpp	9 Jun 2005 12:52:17 -0000	1.9
***************
*** 105,109 ****
  			}
  
! 		if( i == 2)
  		{
  			for (int j = 0; j != m_system->get_num_eq(); ++j)
--- 105,109 ----
  			}
  
! 		if(i == 2 && imethod != 2)
  		{
  			for (int j = 0; j != m_system->get_num_eq(); ++j)
***************
*** 126,132 ****
--- 126,140 ----
  		if( (f >= 0) && (f <= m_sr*0.5) )
  		{
+ 			if (m_freq == -1)
+ 				set_imethod(m_imethod);
  			m_freq = f;
  			m_invfreq = 1.f / f;
  		}
+ 		else if (f == -1)
+ 		{
+ 			m_freq = -1;
+ 
+ 			m_routine = &thisType::m_signal_;
+ 		}
  		else
  			post("frequency out of range");
***************
*** 139,206 ****
  
  /* create constructor / destructor */
! #define CHAOS_DSP_INIT(SYSTEM, ATTRIBUTES)									\
! FLEXT_HEADER(SYSTEM##_dsp, chaos_dsp<SYSTEM>)								\
! 																			\
! SYSTEM##_dsp(int argc, t_atom* argv )										\
! {																			\
!     m_sr = 44100; /* assume default sampling rate */                    	\
! 	m_system = new SYSTEM;													\
! 																			\
! 	int size = m_system->get_num_eq();										\
! 																			\
! 	m_values = new t_float[size];											\
! 	m_slopes = new t_float[size];											\
! 	m_nextvalues = new t_float[size];										\
! 	m_nextmidpts = new t_float[size];										\
! 	m_curves = new t_float[size];											\
! 																			\
!     /* create inlets and zero arrays*/										\
!     for (int i = 0; i != size; ++i)											\
! 	{																		\
! 		AddOutSignal();														\
! 		m_values[i] = 0;													\
! 		m_slopes[i] = 0;													\
! 		m_nextvalues[i] = 0;												\
! 		m_nextmidpts[i] = 0;												\
! 		m_curves[i] = 0;													\
! 	}																		\
! 																			\
!     FLEXT_ADDATTR_VAR("frequency", get_freq, set_freq);						\
!     FLEXT_ADDATTR_VAR("interpolation_method",get_imethod, set_imethod);		\
! 																			\
!     if (argc > 0)															\
! 	{																		\
! 		CHAOS_SYS_INIT(freq, GetAInt(argv[0]));								\
! 	}																		\
!     else																	\
! 	{																		\
! 		CHAOS_SYS_INIT(freq, 440);											\
! 	}																		\
! 																			\
! 	if (argc > 1)															\
! 	{																		\
! 		CHAOS_SYS_INIT(imethod, GetAInt(argv[1]));							\
! 	}																		\
!     else																	\
!     {																		\
! 		CHAOS_SYS_INIT(imethod, 0);											\
!     }																		\
! 																			\
!     m_phase = 0;															\
! 																			\
!     ATTRIBUTES;																\
! }																			\
! 																			\
! ~SYSTEM##_dsp()																\
! {																			\
! 	delete m_system;														\
! 	delete m_values;														\
! 	delete m_slopes;														\
! 	delete m_nextvalues;													\
! 	delete m_nextmidpts;													\
! 	delete m_curves;														\
! }																			\
! 																			\
! FLEXT_ATTRVAR_F(m_freq);													\
  FLEXT_ATTRVAR_I(m_imethod);
  
--- 147,214 ----
  
  /* create constructor / destructor */
! #define CHAOS_DSP_INIT(SYSTEM, ATTRIBUTES)								\
! FLEXT_HEADER(SYSTEM##_dsp, chaos_dsp<SYSTEM>)							\
! 																		\
! SYSTEM##_dsp(int argc, t_atom* argv )									\
! {																		\
!     m_sr = 44100; /* assume default sampling rate */					\
! 	m_system = new SYSTEM;												\
! 																		\
! 	int size = m_system->get_num_eq();									\
! 																		\
! 	m_values = new t_float[size];										\
! 	m_slopes = new t_float[size];										\
! 	m_nextvalues = new t_float[size];									\
! 	m_nextmidpts = new t_float[size];									\
! 	m_curves = new t_float[size];										\
! 																		\
!     /* create inlets and zero arrays*/									\
!     for (int i = 0; i != size; ++i)										\
! 	{																	\
! 		AddOutSignal();													\
! 		m_values[i] = 0;												\
! 		m_slopes[i] = 0;												\
! 		m_nextvalues[i] = 0;											\
! 		m_nextmidpts[i] = 0;											\
! 		m_curves[i] = 0;												\
! 	}																	\
! 																		\
!     FLEXT_ADDATTR_VAR("frequency", get_freq, set_freq);					\
!     FLEXT_ADDATTR_VAR("interpolation_method",get_imethod, set_imethod);	\
! 																		\
!     if (argc > 0)														\
! 	{																	\
! 		CHAOS_INIT(freq, GetAInt(argv[0]));								\
! 	}																	\
!     else																\
! 	{																	\
! 		CHAOS_INIT(freq, 440);											\
! 	}																	\
! 																		\
! 	if (argc > 1)														\
! 	{																	\
! 		CHAOS_INIT(imethod, GetAInt(argv[1]));							\
! 	}																	\
!     else																\
!     {																	\
! 		CHAOS_INIT(imethod, 0);											\
!     }																	\
! 																		\
!     m_phase = 0;														\
! 																		\
!     ATTRIBUTES;															\
! }																		\
! 																		\
! ~SYSTEM##_dsp()															\
! {																		\
! 	delete m_system;													\
! 	delete m_values;													\
! 	delete m_slopes;													\
! 	delete m_nextvalues;												\
! 	delete m_nextmidpts;												\
! 	delete m_curves;													\
! }																		\
! 																		\
! FLEXT_ATTRVAR_F(m_freq);												\
  FLEXT_ATTRVAR_I(m_imethod);
  

Index: tent_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/tent_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** tent_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- tent_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 32,43 ****
  	tent_map()
  	{
! 		m_num_eq = 1;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(x, 0.6);
  	}
  
  	~tent_map()
  	{
! 		delete m_data;
  	}
  
--- 32,45 ----
  	tent_map()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 
! 		CHAOS_SYS_INIT(x, 0.6,0);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~tent_map()
  	{
! 		
  	}
  

Index: sine_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/sine_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** sine_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- sine_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 33,44 ****
  	sine_map()
  	{
! 		m_num_eq = 1;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(x,0);
  	}
  
  	~sine_map()
  	{
! 		delete m_data;
  	}
  
--- 33,46 ----
  	sine_map()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 		
! 		CHAOS_SYS_INIT(x,0,0);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~sine_map()
  	{
! 		
  	}
  

Index: circle_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/circle_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** circle_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- circle_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 33,46 ****
  	circle_map()
  	{
! 		m_num_eq = 1;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(omega, 0.1);
! 		CHAOS_SYS_INIT(r, 3);
! 		CHAOS_SYS_INIT(x, 0.4);
  	}
  
  	~circle_map()
  	{
! 		delete m_data;
  	}
  
--- 33,49 ----
  	circle_map()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 
! 		CHAOS_SYS_INIT(x, 0.4,0);
! 
! 		CHAOS_PAR_INIT(omega, 0.1);
! 		CHAOS_PAR_INIT(r, 3);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~circle_map()
  	{
! 		
  	}
  

Index: driven_anharmonic.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/driven_anharmonic.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** driven_anharmonic.hpp	11 May 2005 20:26:46 -0000	1.3
--- driven_anharmonic.hpp	9 Jun 2005 12:52:17 -0000	1.4
***************
*** 35,54 ****
  	driven_anharmonic()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(method,0);
! 		CHAOS_SYS_INIT(dt,0.01);
  
! 		CHAOS_SYS_INIT(u1,0);
! 		CHAOS_SYS_INIT(u2,1);
  
! 		CHAOS_SYS_INIT(a,1);
! 		CHAOS_SYS_INIT(b,-10);
! 		CHAOS_SYS_INIT(c,100);
! 		CHAOS_SYS_INIT(Omega,3.5);
! 		CHAOS_SYS_INIT(k1,0.01);
! 		CHAOS_SYS_INIT(k2,1);
  
  		ode_base_alloc();
  		m_t = 0;
--- 35,54 ----
  	driven_anharmonic()
  	{
! 		CHAOS_PRECONSTRUCTOR;
  
! 		CHAOS_PAR_INIT(method,0);
! 		CHAOS_PAR_INIT(dt,0.01);
  
! 		CHAOS_SYS_INIT(u1,0,0);
! 		CHAOS_SYS_INIT(u2,1,1);
  
! 		CHAOS_PAR_INIT(a,1);
! 		CHAOS_PAR_INIT(b,-10);
! 		CHAOS_PAR_INIT(c,100);
! 		CHAOS_PAR_INIT(Omega,3.5);
! 		CHAOS_PAR_INIT(k1,0.01);
! 		CHAOS_PAR_INIT(k2,1);
  
+ 		CHAOS_POSTCONSTRUCTOR;
  		ode_base_alloc();
  		m_t = 0;
***************
*** 58,62 ****
  	{
  		ode_base_free();
! 		delete m_data;
  	}
  
--- 58,62 ----
  	{
  		ode_base_free();
! 		
  	}
  

Index: gauss_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/gauss_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** gauss_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- gauss_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 34,45 ****
  	gauss_map()
  	{
! 		m_num_eq = 1;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(x,0.5);
  	}
  
  	~gauss_map()
  	{
! 		delete m_data;
  	}
  
--- 34,47 ----
  	gauss_map()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 
! 		CHAOS_SYS_INIT(x,0.5, 0);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~gauss_map()
  	{
! 		
  	}
  

Index: latoocarfian.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/latoocarfian.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** latoocarfian.hpp	12 Feb 2005 08:58:21 -0000	1.2
--- latoocarfian.hpp	9 Jun 2005 12:52:17 -0000	1.3
***************
*** 34,51 ****
  	latoocarfian()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(x1,0.5);
! 		CHAOS_SYS_INIT(x2,0);
! 		CHAOS_SYS_INIT(a,-0.966918);
! 		CHAOS_SYS_INIT(b,2.879879);
! 		CHAOS_SYS_INIT(c,0.765145);
! 		CHAOS_SYS_INIT(d,0.744728);
  	}
  	
  	~latoocarfian()
  	{
! 		delete m_data;
  	}
  
--- 34,53 ----
  	latoocarfian()
  	{
! 		CHAOS_PRECONSTRUCTOR
  
! 		CHAOS_SYS_INIT(x1,0.5,0);
! 		CHAOS_SYS_INIT(x2,0,1);
! 
! 		CHAOS_PAR_INIT(a,-0.966918);
! 		CHAOS_PAR_INIT(b,2.879879);
! 		CHAOS_PAR_INIT(c,0.765145);
! 		CHAOS_PAR_INIT(d,0.744728);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  	
  	~latoocarfian()
  	{
! 		
  	}
  

Index: lorenz.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/lorenz.hpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** lorenz.hpp	27 Dec 2004 22:55:41 -0000	1.6
--- lorenz.hpp	9 Jun 2005 12:52:17 -0000	1.7
***************
*** 32,47 ****
  	lorenz()
  	{
! 		m_num_eq = 3;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(method,0);
! 		CHAOS_SYS_INIT(dt,0.01);
! 		CHAOS_SYS_INIT(x1,0.8);
! 		CHAOS_SYS_INIT(x2,0.7);
! 		CHAOS_SYS_INIT(x3,0.6);
! 		CHAOS_SYS_INIT(sigma,16);
! 		CHAOS_SYS_INIT(b,4);
! 		CHAOS_SYS_INIT(r,40);
  
  		ode_base_alloc();
  	}
--- 32,50 ----
  	lorenz()
  	{
! 		CHAOS_PRECONSTRUCTOR;
  
! 		CHAOS_PAR_INIT(method,0);
! 		CHAOS_PAR_INIT(dt,0.01);
  
+ 		CHAOS_SYS_INIT(x1,0.8,0);
+ 		CHAOS_SYS_INIT(x2,0.7,1);
+ 		CHAOS_SYS_INIT(x3,0.6,2);
+ 
+ 		CHAOS_PAR_INIT(sigma,16);
+ 		CHAOS_PAR_INIT(b,4);
+ 		CHAOS_PAR_INIT(r,40);
+ 
+ 		CHAOS_POSTCONSTRUCTOR;
+ 		
  		ode_base_alloc();
  	}
***************
*** 50,54 ****
  	{
  		ode_base_free();
! 		delete m_data;
  	}
  
--- 53,57 ----
  	{
  		ode_base_free();
! 		
  	}
  

Index: latoomutgamma.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/latoomutgamma.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** latoomutgamma.hpp	12 Feb 2005 08:58:21 -0000	1.2
--- latoomutgamma.hpp	9 Jun 2005 12:52:17 -0000	1.3
***************
*** 33,48 ****
  	latoomutgamma()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(x1,0.5);
! 		CHAOS_SYS_INIT(x2,0.5);
! 		CHAOS_SYS_INIT(a,-0.966918);
! 		CHAOS_SYS_INIT(b,2.879879);
  	}
  	
  	~latoomutgamma()
  	{
! 		delete m_data;
  	}
  
--- 33,50 ----
  	latoomutgamma()
  	{
! 		CHAOS_PRECONSTRUCTOR;
  
! 		CHAOS_SYS_INIT(x1,0.5,0);
! 		CHAOS_SYS_INIT(x2,0.5,1);
! 		
! 		CHAOS_PAR_INIT(a,-0.966918);
! 		CHAOS_PAR_INIT(b,2.879879);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  	
  	~latoomutgamma()
  	{
! 		
  	}
  

Index: chaos_base.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/chaos_base.hpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** chaos_base.hpp	12 Feb 2005 08:58:20 -0000	1.6
--- chaos_base.hpp	9 Jun 2005 12:52:17 -0000	1.7
***************
*** 22,25 ****
--- 22,28 ----
  
  #include "chaos.hpp"
+ #include <map>
+ 
+ #define MAXDIMENSION 5 // this should be enough for the first 
  
  class chaos_base
***************
*** 43,46 ****
--- 46,52 ----
  	}
  
+ 	std::map<const t_symbol*,int> attr_ind;
+ 	
+ 	// check the integrity of the system
  	virtual void m_verify() 
  	{
***************
*** 53,64 ****
  		}
  	};
! 	
! 	data_t * m_data;       // state of the system
  
  protected:
! 	virtual void m_step() = 0;
! 	int m_num_eq;  // number of equations of the system
  };
  
  
  #define CHAOS_CALLBACKS							\
--- 59,81 ----
  		}
  	};
! 
! 	data_t m_data[MAXDIMENSION];  // state of the system
  
  protected:
! 	virtual void m_step() = 0;    // iteration
! 	int m_num_eq;                 // number of equations of the system
!  	flext::AtomList Parameter;    // parameter
!  	flext::AtomList System;       // system
  };
  
+ #define CHAOS_PRECONSTRUCTOR					\
+     /* dummy */	
+ 
+ #define CHAOS_POSTCONSTRUCTOR					\
+ m_num_eq = System.Count();
+ 
+ #define CHAOS_DESTRUCTOR						\
+     
+ 
  
  #define CHAOS_CALLBACKS							\
***************
*** 70,73 ****
--- 87,91 ----
  FLEXT_CALLGET_I(get_dimension);
  
+ 
  #define CHAOS_ATTRIBUTES						\
  FLEXT_ADDATTR_GET("dimension",get_dimension);

Index: lozi_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/lozi_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** lozi_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- lozi_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 32,46 ****
  	lozi_map()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(x,0);
! 		CHAOS_SYS_INIT(y,0);
! 		CHAOS_SYS_INIT(a,1.4);
! 		CHAOS_SYS_INIT(b,0.3);
  	}
  
  	~lozi_map()
  	{
! 		delete m_data;
  	}
  
--- 32,49 ----
  	lozi_map()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 
! 		CHAOS_SYS_INIT(x,0,0);
! 		CHAOS_SYS_INIT(y,0,1);
! 
! 		CHAOS_PAR_INIT(a,1.4);
! 		CHAOS_PAR_INIT(b,0.3);
! 		
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~lozi_map()
  	{
! 		
  	}
  
***************
*** 58,62 ****
  		
  	}
! 
  	CHAOS_SYSVAR_FUNCS(x, 0);
  	CHAOS_SYSVAR_FUNCS(y, 1);
--- 61,70 ----
  		
  	}
! 	virtual void m_verify() 
! 	{
! 		if (PD_BIGORSMALL(m_data[0]))
! 			m_data[0] = 1;
! 	}
! 							
  	CHAOS_SYSVAR_FUNCS(x, 0);
  	CHAOS_SYSVAR_FUNCS(y, 1);

Index: bernoulli_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/bernoulli_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** bernoulli_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- bernoulli_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 29,42 ****
  {
  public:
  	bernoulli()
  	{
! 		m_num_eq = 1;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(x,0.5);
  	}
  
  	~bernoulli()
  	{
! 		delete m_data;
  	}
  
--- 29,45 ----
  {
  public:
+ 
  	bernoulli()
  	{
!  		CHAOS_PRECONSTRUCTOR;
! 		
! 		CHAOS_SYS_INIT(x,0.5,0);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~bernoulli()
  	{
! 		
  	}
  

Index: ikeda_laser_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/ikeda_laser_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** ikeda_laser_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- ikeda_laser_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 38,54 ****
  	ikeda_laser_map()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(c1,0.4);
! 		CHAOS_SYS_INIT(c2,0.9);
! 		CHAOS_SYS_INIT(c3,9);
! 		CHAOS_SYS_INIT(roh,0.85);
! 		CHAOS_SYS_INIT(x,0.5);
! 		CHAOS_SYS_INIT(y,0.5);
  	}
  
  	~ikeda_laser_map()
  	{
! 		delete m_data;
  	}
  
--- 38,57 ----
  	ikeda_laser_map()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 
! 		CHAOS_PAR_INIT(c1,0.4);
! 		CHAOS_PAR_INIT(c2,0.9);
! 		CHAOS_PAR_INIT(c3,9);
! 		CHAOS_PAR_INIT(roh,0.85);
! 
! 		CHAOS_SYS_INIT(x,0.5,0);
! 		CHAOS_SYS_INIT(y,0.5,1);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~ikeda_laser_map()
  	{
! 		
  	}
  

Index: logistic_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/logistic_map.hpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** logistic_map.hpp	1 Jan 2005 11:06:58 -0000	1.6
--- logistic_map.hpp	9 Jun 2005 12:52:17 -0000	1.7
***************
*** 31,38 ****
  	logistic()
  	{
! 		m_num_eq = 1;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(alpha, 3.8);
! 		CHAOS_SYS_INIT(x, 0.5);
  	}
  
--- 31,40 ----
  	logistic()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 
! 		CHAOS_PAR_INIT(alpha, 3.8);
! 		CHAOS_SYS_INIT(x, 0.5,0);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  

Index: chaos_defs.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/chaos_defs.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** chaos_defs.hpp	28 Dec 2004 12:38:45 -0000	1.3
--- chaos_defs.hpp	9 Jun 2005 12:52:17 -0000	1.4
***************
*** 125,131 ****
  FLEXT_ADDATTR_VAR(#NAME,get_##NAME, set_##NAME);
  
! #define CHAOS_SYS_INIT(NAME, VALUE)				\
  set_##NAME(VALUE);
  
  #define CHAOS_PARAMETER(NAME) m_##NAME
  
--- 125,146 ----
  FLEXT_ADDATTR_VAR(#NAME,get_##NAME, set_##NAME);
  
! 
! #define CHAOS_INIT(NAME, VALUE)					\
  set_##NAME(VALUE);
  
+ #define CHAOS_SYS_INIT(NAME, VALUE, INDEX)					\
+ set_##NAME(VALUE);											\
+ t_atom atom_##NAME;											\
+ flext::SetSymbol(atom_##NAME, flext::MakeSymbol(#NAME));	\
+ System.Append(atom_##NAME);									\
+ attr_ind[flext::MakeSymbol(#NAME)] = INDEX;
+ 
+ #define CHAOS_PAR_INIT(NAME, VALUE)							\
+ set_##NAME(VALUE);											\
+ t_atom atom_##NAME;											\
+ flext::SetSymbol(atom_##NAME, flext::MakeSymbol(#NAME));	\
+ Parameter.Append(atom_##NAME);
+ 
+ 
  #define CHAOS_PARAMETER(NAME) m_##NAME
  
***************
*** 143,146 ****
--- 158,162 ----
  FLEXT_LIB_DSP_V(#CLASSNAME"~", CLASSNAME##_dsp);
  
+ 
  #define CHAOS_DSP_CLASS_NAME(CLASSNAME,CLASSNAME_UC, NAME)	\
  class CLASSNAME##_dsp:										\
***************
*** 162,165 ****
--- 178,182 ----
  FLEXT_LIB_V(#CLASSNAME, CLASSNAME##_msg);
  
+ 
  #define CHAOS_MSG_CLASS_NAME(CLASSNAME,CLASSNAME_UC, NAME)	\
  class CLASSNAME##_msg:										\
***************
*** 171,177 ****
  FLEXT_LIB_V(#NAME, CLASSNAME##_msg);
  
  #define CHAOS_ADD(NAME)							\
  FLEXT_DSP_SETUP(NAME##_dsp);					\
! FLEXT_SETUP(NAME##_msg);
  
  #define __chaos_defs_hpp
--- 188,216 ----
  FLEXT_LIB_V(#NAME, CLASSNAME##_msg);
  
+ #define CHAOS_SEARCH_CLASS(CLASSNAME,CLASSNAME_UC)				\
+ class CLASSNAME##_search:										\
+ 	public chaos_search<CLASSNAME>								\
+ {																\
+ 	CHAOS_SEARCH_INIT(CLASSNAME, CLASSNAME_UC##_ATTRIBUTES);	\
+ 	CLASSNAME_UC##_CALLBACKS;									\
+ };																\
+ FLEXT_LIB_V(#CLASSNAME"_search", CLASSNAME##_search);
+ 
+ 
+ #define CHAOS_SEARCH_CLASS_NAME(CLASSNAME,CLASSNAME_UC, NAME)	\
+ class CLASSNAME##_msg:											\
+ 	public chaos_search<CLASSNAME>								\
+ {																\
+ 	CHAOS_SEARCH_INIT(CLASSNAME, CLASSNAME_UC##_ATTRIBUTES);	\
+ 	CLASSNAME_UC##_CALLBACKS;									\
+ };																\
+ FLEXT_LIB_V(#NAME, CLASSNAME##_msg);
+ 
+ 
+ 
  #define CHAOS_ADD(NAME)							\
  FLEXT_DSP_SETUP(NAME##_dsp);					\
! FLEXT_SETUP(NAME##_msg);						\
! FLEXT_SETUP(NAME##_search);
  
  #define __chaos_defs_hpp

Index: bungalow_tent_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/bungalow_tent_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** bungalow_tent_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- bungalow_tent_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 39,51 ****
  	bungalow_tent()
  	{
! 		m_num_eq = 1;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(x, 0.6);
! 		CHAOS_SYS_INIT(r, 0.5);
  	}
  
  	~bungalow_tent()
  	{
! 		delete m_data;
  	}
  
--- 39,53 ----
  	bungalow_tent()
  	{
!  		CHAOS_PRECONSTRUCTOR;
! 
! 		CHAOS_SYS_INIT(x, 0.6,0);
! 		CHAOS_PAR_INIT(r, 0.5);
! 
!  		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~bungalow_tent()
  	{
! 		
  	}
  

Index: Makefile.am
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/Makefile.am,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** Makefile.am	12 Feb 2005 08:58:20 -0000	1.9
--- Makefile.am	9 Jun 2005 12:52:17 -0000	1.10
***************
*** 17,21 ****
  	latoomutbeta_dsp.cpp latoomutbeta_msg.cpp \
  	latoomutgamma_dsp.cpp latoomutgamma_msg.cpp \
! 	logistic_dsp.cpp logistic_msg.cpp \
  	lorenz_dsp.cpp lorenz_msg.cpp \
  	lozi_map_dsp.cpp lozi_map_msg.cpp \
--- 17,21 ----
  	latoomutbeta_dsp.cpp latoomutbeta_msg.cpp \
  	latoomutgamma_dsp.cpp latoomutgamma_msg.cpp \
! 	logistic_dsp.cpp logistic_msg.cpp logistic_search.cpp\
  	lorenz_dsp.cpp lorenz_msg.cpp \
  	lozi_map_dsp.cpp lozi_map_msg.cpp \
***************
*** 23,27 ****
  	sine_map_dsp.cpp sine_map_msg.cpp \
  	standard_map_dsp.cpp standard_map_msg.cpp \
! 	tent_map_dsp.cpp tent_map_msg.cpp
  
  CXXFLAGS  = @CXXFLAGS@ \
--- 23,27 ----
  	sine_map_dsp.cpp sine_map_msg.cpp \
  	standard_map_dsp.cpp standard_map_msg.cpp \
! 	tent_map_dsp.cpp tent_map_msg.cpp 
  
  CXXFLAGS  = @CXXFLAGS@ \

Index: latoomutbeta.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/latoomutbeta.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** latoomutbeta.hpp	12 Feb 2005 08:58:21 -0000	1.2
--- latoomutbeta.hpp	9 Jun 2005 12:52:17 -0000	1.3
***************
*** 33,48 ****
  	latoomutbeta()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(x1,0.5);
! 		CHAOS_SYS_INIT(x2,0.5);
! 		CHAOS_SYS_INIT(a,-0.966918);
! 		CHAOS_SYS_INIT(b,2.879879);
  	}
  	
  	~latoomutbeta()
  	{
! 		delete m_data;
  	}
  
--- 33,50 ----
  	latoomutbeta()
  	{
! 		CHAOS_PRECONSTRUCTOR;
  
! 		CHAOS_SYS_INIT(x1,0.5,0);
! 		CHAOS_SYS_INIT(x2,0.5,1);
! 		
! 		CHAOS_PAR_INIT(a,-0.966918);
! 		CHAOS_PAR_INIT(b,2.879879);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  	
  	~latoomutbeta()
  	{
! 		
  	}
  

Index: standard_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/standard_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** standard_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- standard_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 33,47 ****
  	standard_map()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(I,0.1);
! 		CHAOS_SYS_INIT(theta,0.2);
! 		CHAOS_SYS_INIT(k, 0.8);
  	}
  
  	~standard_map()
  	{
! 		delete m_data;
  	}
  
--- 33,49 ----
  	standard_map()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 		
! 		CHAOS_SYS_INIT(I,0.1,0);
! 		CHAOS_SYS_INIT(theta,0.2,1);
  
! 		CHAOS_PAR_INIT(k, 0.8);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~standard_map()
  	{
! 		
  	}
  

Index: henon_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/henon_map.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** henon_map.hpp	1 Jan 2005 11:06:58 -0000	1.4
--- henon_map.hpp	9 Jun 2005 12:52:17 -0000	1.5
***************
*** 32,47 ****
  	henon()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(x,0);
! 		CHAOS_SYS_INIT(y,0);
! 		CHAOS_SYS_INIT(a,1.4);
! 		CHAOS_SYS_INIT(b,0.3);
  	}
  
  	~henon()
  	{
! 		delete m_data;
  	}
  
--- 32,49 ----
  	henon()
  	{
! 		CHAOS_PRECONSTRUCTOR;
  
! 		CHAOS_SYS_INIT(x,0,0);
! 		CHAOS_SYS_INIT(y,0,1);
! 
! 		CHAOS_PAR_INIT(a,1.4);
! 		CHAOS_PAR_INIT(b,0.3);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~henon()
  	{
! 		
  	}
  

Index: latoomutalpha.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/latoomutalpha.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** latoomutalpha.hpp	12 Feb 2005 08:58:21 -0000	1.2
--- latoomutalpha.hpp	9 Jun 2005 12:52:17 -0000	1.3
***************
*** 33,49 ****
  	latoomutalpha()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(x1,0.5);
! 		CHAOS_SYS_INIT(x2,0.2);
! 		CHAOS_SYS_INIT(a,-0.966918);
! 		CHAOS_SYS_INIT(b,2.879879);
! 		CHAOS_SYS_INIT(c,0.765145);
  	}
  	
  	~latoomutalpha()
  	{
! 		delete m_data;
  	}
  
--- 33,51 ----
  	latoomutalpha()
  	{
! 		CHAOS_PRECONSTRUCTOR;
  
! 		CHAOS_SYS_INIT(x1,0.5,0);
! 		CHAOS_SYS_INIT(x2,0.2,1);
! 
! 		CHAOS_PAR_INIT(a,-0.966918);
! 		CHAOS_PAR_INIT(b,2.879879);
! 		CHAOS_PAR_INIT(c,0.765145);
! 
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  	
  	~latoomutalpha()
  	{
! 		
  	}
  
***************
*** 69,73 ****
  #ifndef DOUBLE_PRECISION
  			if (PD_BIGORSMALL(m_data[i]))
! 				m_data[i] = 0.01;
  #endif
  		}
--- 71,75 ----
  #ifndef DOUBLE_PRECISION
  			if (PD_BIGORSMALL(m_data[i]))
! 				m_data[i] = 0.5;
  #endif
  		}

Index: driven_van_der_pol.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/driven_van_der_pol.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** driven_van_der_pol.hpp	27 Dec 2004 22:55:41 -0000	1.1
--- driven_van_der_pol.hpp	9 Jun 2005 12:52:17 -0000	1.2
***************
*** 36,53 ****
  	driven_van_der_pol()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
  
! 		CHAOS_SYS_INIT(method,0);
! 		CHAOS_SYS_INIT(dt,0.01);
  
! 		CHAOS_SYS_INIT(u1,0.8);
! 		CHAOS_SYS_INIT(u2,0.6);
! 		CHAOS_SYS_INIT(u3,0.4);
  
! 		CHAOS_SYS_INIT(a,5);
! 		CHAOS_SYS_INIT(Omega,2.466);
! 		CHAOS_SYS_INIT(k,5);
  
  		ode_base_alloc();
  	}
--- 36,53 ----
  	driven_van_der_pol()
  	{
! 		CHAOS_PRECONSTRUCTOR;
  
! 		CHAOS_PAR_INIT(method,0);
! 		CHAOS_PAR_INIT(dt,0.01);
  
! 		CHAOS_SYS_INIT(u1,0.8, 0);
! 		CHAOS_SYS_INIT(u2,0.6, 1);
! 		CHAOS_SYS_INIT(u3,0.4, 2);
  
! 		CHAOS_PAR_INIT(a,5);
! 		CHAOS_PAR_INIT(Omega,2.466);
! 		CHAOS_PAR_INIT(k,5);
  
+ 		CHAOS_POSTCONSTRUCTOR;
  		ode_base_alloc();
  	}
***************
*** 56,60 ****
  	{
  		ode_base_free();
! 		delete m_data;
  	}
  
--- 56,60 ----
  	{
  		ode_base_free();
! 		
  	}
  

Index: duffing_map.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/duffing_map.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** duffing_map.hpp	28 Dec 2004 12:38:45 -0000	1.1
--- duffing_map.hpp	9 Jun 2005 12:52:17 -0000	1.2
***************
*** 32,46 ****
  	duffing_map()
  	{
! 		m_num_eq = 2;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(x1, 0.5);
! 		CHAOS_SYS_INIT(x2, 0.5);
! 		CHAOS_SYS_INIT(a, 0.5);
! 		CHAOS_SYS_INIT(b, 0.5);
  	}
  
  	~duffing_map()
  	{
! 		delete m_data;
  	}
  
--- 32,48 ----
  	duffing_map()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 		
! 		CHAOS_SYS_INIT(x1, 0.5, 0);
! 		CHAOS_SYS_INIT(x2, 0.5, 1);
! 		CHAOS_PAR_INIT(a, 0.5);
! 		CHAOS_PAR_INIT(b, 0.5);
! 		
! 		CHAOS_POSTCONSTRUCTOR;
  	}
  
  	~duffing_map()
  	{
! 		
  	}
  

Index: chua.hpp
===================================================================
RCS file: /cvsroot/pure-data/externals/tb/chaos/src/chua.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** chua.hpp	1 Jan 2005 11:06:58 -0000	1.1
--- chua.hpp	9 Jun 2005 12:52:17 -0000	1.2
***************
*** 37,49 ****
  	chua()
  	{
! 		m_num_eq = 3;
! 		m_data = new data_t[m_num_eq];
! 		CHAOS_SYS_INIT(x1,1);
! 		CHAOS_SYS_INIT(x2,1);
! 		CHAOS_SYS_INIT(x3,1);
! 		CHAOS_SYS_INIT(a,1.4);
! 		CHAOS_SYS_INIT(b,0.3);
! 		CHAOS_SYS_INIT(alpha,0.3);
! 		CHAOS_SYS_INIT(beta,0.3);
  		
  		ode_base_alloc();
--- 37,52 ----
  	chua()
  	{
! 		CHAOS_PRECONSTRUCTOR;
! 
! 		CHAOS_SYS_INIT(x1,1,0);
! 		CHAOS_SYS_INIT(x2,1,1);
! 		CHAOS_SYS_INIT(x3,1,2);
! 
! 		CHAOS_PAR_INIT(a,1.4);
! 		CHAOS_PAR_INIT(b,0.3);
! 		CHAOS_PAR_INIT(alpha,0.3);
! 		CHAOS_PAR_INIT(beta,0.3);
! 		
! 		CHAOS_POSTCONSTRUCTOR;
  		
  		ode_base_alloc();
***************
*** 53,57 ****
  	{
  		ode_base_free();
- 		delete m_data;
  	}
  
--- 56,59 ----





More information about the Pd-cvs mailing list