use GSL for partitionning