I'm trying to translate CSound code from the FLOSS manuals for a van der Pol oscillator to make a Pd external. The CSound code is here http://en.flossmanuals.net/csound/g-physical-modelling/ (you have to scroll down till you reach the van der Pol section). I think I get what's going on there, but the results I get when writing the output to an array, are not the same as the ones provided in th FLOSS manuals.

Here's my perform routine:
t_int *vanDerPol_perform(t_int *w)
{
    // Copy the object pointer
    t_vanDerPol *x = (t_vanDerPol *) (w[1]);

    // Copy signal vector pointers
    t_float *frequency = (t_float *) (w[2]);
    t_float *factor = (t_float*) (w[3]);
    t_float *excitor_freq = (t_float*) (w[4]);
    t_float *excitor_amp = (t_float*) (w[5]);
    t_float *output = (t_float *) (w[6]);

    // Copy the signal vector size
    t_int n = w[7];

    // Dereference components from the object structure
    float twopi = x->x_twopi;
    float sr = x->x_sr;
    float si = x->x_si;
    float si_factor = x->x_sifactor;
    float phase = x->x_phase;
    float step = (float) EXCITOR_STEPSIZE;

    // Local variables
    float phase_local;
    float drive_sine; // sinewave to excite the oscillator
    // van der Pol samples
    float aa;
    float av = 0;
    float ax = 0;
    // damping factor
    float c;

    // Perform the DSP loop
    while(n--){
        // excitor code
        si = *excitor_freq++ * si_factor;
        phase_local = phase / step;
        drive_sine = cos(phase_local * twopi) * *excitor_amp++;

        // van der Pol code
        c = 2 - 2 * cos(*frequency++ * twopi / sr);
        aa = (-c) * ax + *factor++ * (1 - ax * ax) * av;
        av += aa;
        ax = ax + av + drive_sine;
        *output++ = av;

        // update phase
        phase += si;
        while(phase > step) phase -= step;
        while(phase < 0) phase += step;
        }

    // Update object's variables
    x->x_phase = phase;
    x->x_si = si;

    // Return the next address in the DSP chain
    return w + 8;
}

In the FLOSS manuals it says that it is excited by a sine wave oscillator, so this is what I do in the code above, but I don't know what I'm doing wrong. Are there specific values I should set for frequency, excitation frequency, excitation amplitude and damping? The math is over my head to be honest, so I'm trying to copy an applied example and this code looks much like the CSound's code...Can someone give some insight?