aboutsummaryrefslogtreecommitdiff
path: root/lorenz.c
diff options
context:
space:
mode:
authorB. Bogart <bbogart@users.sourceforge.net>2002-09-16 16:36:20 +0000
committerB. Bogart <bbogart@users.sourceforge.net>2002-09-16 16:36:20 +0000
commit2c7657c48db74de5a512c55165df80b877b38d33 (patch)
tree14bc0e281a0a4d2014abde3adf91145364dd147e /lorenz.c
parent9c772b63840098d6bc66ca5fd03d25cbcc8646bf (diff)
Added arguments to "reset" method, allows reseting to particular initial conditions.
svn path=/trunk/externals/bbogart/chaos/; revision=128
Diffstat (limited to 'lorenz.c')
-rw-r--r--lorenz.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/lorenz.c b/lorenz.c
index ecc206b..95994c9 100644
--- a/lorenz.c
+++ b/lorenz.c
@@ -60,11 +60,11 @@ static void calculate(lorenz_struct *x)
outlet_float(x->z_outlet, (t_float)lz1);
}
-static void reset(lorenz_struct *x)
+static void reset(lorenz_struct *x, t_floatarg lx0, t_floatarg ly0, t_floatarg lz0)
{
- x->lx0 = 0.1;
- x->ly0 = 0;
- x->lz0 = 0;
+ x->lx0 = lx0;
+ x->ly0 = ly0;
+ x->lz0 = lz0;
}
static void param(lorenz_struct *x, t_floatarg h, t_floatarg a, t_floatarg b, t_floatarg c)
@@ -111,6 +111,9 @@ void lorenz_setup(void)
class_addmethod(lorenz_class,
(t_method)reset,
gensym("reset"),
+ A_DEFFLOAT,
+ A_DEFFLOAT,
+ A_DEFFLOAT,
0);
class_addmethod(lorenz_class,