Clustering longitudinal profiles using P-splines and mixed effects models applied to time-course gene expression data