Basic Computer Simulation
Syllabus for a certificate course on Basic Computer Simulation:
There will be nine papers in this course.
Introduction to computer simulation
Setting up Linux environment, compilers, editors etc
Basic Linux commands
Working knowledge of shell-scripting
Revision of numerical methods
Simple user-graphics interface example of simulation
Monte-Carlo Simulation (Ref: K Binder)
Basic idea of random sampling
Importance sampling
Principle of detailed-balance
Metropolis algorithm
Algorithms for grid generation
Solving 2D Ising model
Monte-Carlo algorithm for statistical physics
Molecular-Dynamics Simulation (Ref: D C Rapaport)
Revision of ODE solvers
Error analysis
Symplectic algorithms
Boundary conditions
Minimum image convension and Ewald sum
Thermostats and Barostats
Integrated quantities for statistical analysis
Particle-in-Cell simulation (Ref: C Birdsall)
Revision of numerical integration
Working knowledge of numerical interpolation
Cloud-in-Cell algorithm
Electromagnetic PIC algorithms
Computational Fluid Dynamics (Ref: D Kopriva)
Equations of Fluid Dynamics
Finite Difference algorithm
Finite Element algorithm
Finite Volume algorithm
Spectral algorithms
Flux limiters
Pseudo-Spectral method
Boundary effects
Comparison of accuracy
Parallel Computing Algorithms (Ref: IBM Redbooks)
Basic concepts of parallel computing
Parallel computing on shared memory architecture
Parallel computing on distributed memory architecture
Heterogeneous parallel computing
Computation on single GPU
Computation on multiple GPUs
Introduction to FPGA
Implementation in HPC systems
Basic idea of High-Performance computing environment
Generating shell-scripts for HPC
Basic HPC commands
Hands-on and trouble-shooting
Performance optimization tools and techniques
Introduction to Machine Learning (Ref: L Moroney)
Philosophy of Artificial Intelligence
Machine Learning and its applications
Familiarization with the numerical tools
Open-source softwares for Machine Learning
Hands-on session
Introduction to Genetic Programming
Introduction to Quantum Computing (Ref: Nielsen and Chuang)
Brief recap of Linear Algebra
Pauli Matrices and Quantum Operators
Quantum Gates
Quantum Circuits
Hands on implementation of Quantum Gates
Basic Quantum Algorithms
Open-source quantum softwares
Quantum Teleportation