Thin film deposition: fundamentals and modeling