A micromorphic computational homogenization framework for heterogeneous materials. (May 2017)