扩散现象形成的原因有哪些呢