Modeling and simulation: This course will provide students the necessary skills to formulate conceptual and mathematical models of systems, to transform these models into efficient simulation software, and to apply the resulting simulator to attacking contemporary problems in science and engineering.
Topics include the basic underlying principles behind simulation models, and developing a conceptual and practical understanding of data structures, algorithms, software, mathematics, and best practices concerning the development of both the domain-specific simulation model as well as the underlying domain-independent simulation engine and algorithms. The students will be introduced to system dynamics models with their global views of major systems that change with time and cellular automaton simulations with their local views of individuals affecting individuals, rate of change, errors, simulation techniques, empirical modeling, and an introduction to high performance computing.
Modeling and Simulation is a core course offered to third year students of B.Tech Hons. ICT (Minor in Computational Science) program. It is a pre-requisite for domain based specialization electives such as Computational Finance, Computational and systems Biology and Computational Physics.
- 3 hours of lecture per week.
- 2 hours lab per week.
Introductory Calculus, Probability and Statistics, Introductory Physics and Numerical methods. Some experience with scientific computing would be beneficial but is not required.
This course introduces students to fundamentals of creating mathematical models of physical systems and implementation on computers to analyze the system both to gain insight and make predictions. The different mathematical approaches to modelling that are covered in the course can be characterized into differential and difference equation based models, probability based models which includes stochastic differential equations, cellular automata and event based approaches, and matrix based models. The course is interdisciplinary in nature and looks at many systems from physics, biology, finance, engineering etc. from a modeling perspective. Each topic is followed by many examples from different disciplines. The students test and create models of these systems in the lab and report on it following the complete modelling approach.
Approach to be followed
system → Analyze the problem (determine problem’s objective)→Formulate model (Gather data, make assumptions, determine equations/functions) → Solve model (Computer implementation) →Verify and interpret solutions → make predictions.
- Angela B. Shiflet & George W. Shiflet. Introduction to Computational Science: Modeling and Simulation for the Sciences. Princeton University Press, 2006.
Written exam: Two mid-semester examinations and a final exam: 70% (20+20+30)
Lab207: Lab Assignment, Viva, report submission: 30%
After successful completion of the course the students would be able to create a relevant model for a multitude of problems from science and engineering, by extracting the necessary and relevent information regarding the problem. They would also be able to define the different modeling terms by analyzing the system or the data that is present. They would be able to implement the model on the computer and from the results check for the validity of the model and correcness of the assumptions present in the model. The should be able to analyze the outcomes (mostly through visualizations) and make predictions. They would also be able to understand the limitations of their model and nuances in computer modeling of sytems.
Course Content/Lecture schedule
|1||Overview of Computational Science|
|1.1||The Modeling Process.|
|1.3||Steps in the modeling Process.|
|2||System Dynamics Model (Compartment Models)|
|2.1||Unconstrained growth models.|
|2.3||Applications: Radioactive decay, Drug dosage, population dynamics, growth of technologies, SI models for epidemic spread etc.|
|2.4||Newton’s equations of motion and harmonic oscillator|
|2.5||Applications: Skydiving, bungee jumping, modelling building vibration during earthquakes etc.|
|2.7||System dynamics model with interactions|
|2.8||Applications: epidemic spread models (SIR, SEIR, SEIZ etc.), predator-prey models, Modeling spread of infectious diseas such as SARS, Malaria, rumor spread in social networks etc.|
|3||Stochastic models (Monte Carlo simulations)|
|3.1||Review of basic probability|
|3.2||Generating random numbers from different distributions on computer.|
|3.3||Brownian motion and random walk in 1D, discrete and continous time stochastic differential equation.|
|3.4||Cellular automata based simulations (2D random walk and diffusion)|
|3.5||Agent based models|
|3.6||Applications: Diffusion in 1 and 2 dimensions, symmetric and asymmetric random walk, markovian and non markovian random walk, modeling of stock markets, modeling spreading of fire, Agent based epidemic modeling (SIR).|
|4.1||Review of matrix algebra|
|4.2||Discrete models: Age and stage structure models|
|4.3||Markov chain models.|
|4.4||Graph based models.|
|4.5||Population dynamics, DNA sequences, social networks etc.|