To teach the students both classical and modern numerical methods for both time-independent and evolutionary differential equations. To introduce both numerical algorithms and analysis of their properties as well as the reasons behind success and failure of numerical methods and software. This will help the students to apply the studied numerical techniques and to successfully design their own solution approach for any nonstandard problems they may encounter in their research work.