Homogenization method  is an efficient tool for modeling physical phenomena on media with periodic structure. The mathematical model leads to the systems of partial differential equations at different scales. These systems are decoupled in the case of a linear problem. For non-linear problems, the systems of equations are linked and the complexity of the solution increases considerably.
We illustrate how to use the partial differential equation solution package SfePy (http://sfepy.org)  for solving various multi-scale problems. We have developed so called "homogenization engine" which solves the multiple homogenization multiple subproblems at the microscopic level. To speed-up computing, the micro-problems are solved in parallel using multithreading or multiprocessing approach.
 D. Cioranescu, P. Donato, An Introduction to Homogenization, Oxford Lecture Series in Mathematics and its Applications, vol. 17, Oxford University Press, 1999.
 R. Cimrman, SfePy - Write Your Own FE Application, Proceedings of the 6th European Conference on Python in Science (EuroSciPy 2013), 2014, pp. 65-70. http://arxiv.org/abs/1404.6391