for( iter = 1; iter <= k; ++iter)
{
// apply f, i.e. flip sign of state m
//
q[m] = -q[m];
// inversion about the average
//
avg = 0; for( i = 0; i < N; ++i) avg += q[i];
avg *= 2.0/N; for( i = 0; i < N; ++i) q[i] = avg - q[i];
}