Uploaded by Aniee Das

Workshop on Numerical Simulation with Python

advertisement
AEML
SENR
&
Dept of Math
SoPS
Atmosphere & Environment Modelling Lab (AEML)
School of Environment & Natural Resources (SENR)
School of Physical Sciences (SoPS)
bring to You
A fully Practical Python Workshop
Numerical Computation, Modelling
and Simulation with PYTHON
15th April 2023, 9:00 AM to 5:15 PM
Scan QR
Code to
Register
Chief Patron :
Prof. Surekha Dangwal, Vice Chancellor
Organizers :
Dr. Asha Ram Gairola
HoD, Dept. of Math, SoPS
Dr. Komal, Asst. Prof.
Dr. Sarita, Asst. Prof.
Dept of Math, SoPS
Convenor :
Dr. Ujjwal Kumar,
Asst. Prof., SENR
Room No. 320, Computer Centre, Academic Block III (Library Building), Doon University
An Initiative by
Department of Mathematics, School of Physical Sciences (SoPS)
&
Atmosphere and Environment Modelling Lab (AEML),
School of Environment and Natural Resources (SENR)
DOON UNIVERSITY
Contact : aeml.senr@gmail.com
Objective :
The objective of this workshop is to equip the students/researchers to use PYTHON
programming language for all kinds of numerical techniques and its applications in modelling.
Numerical techniques are essential for all areas of research/industrial-projects wherever the
mathematical modelling is involved. It encompasses application research areas such as
weather forecasting, modelling of environmental systems (e.g., atmosphere, aquatic systems,
lands and their interaction), modelling of biological systems (e.g., blood flow in veins),
epidemiological study (modelling the spread of disease such as covid-19 spread), modelling
the financial systems (e.g., Black–Scholes model for option prices), atoms/molecules
interactions and many more.
Why python?
Firstly, it is available absolutely free of cost. One just needs a laptop/computer system and
internet connection to download and install it. Using PYTHON modules keep us free from
worries about arranging finance for software purchasing or running from one institute to
another institute to use the software license for their specific features. Secondly, it is highly
efficient and at par with the most of the commercially available softwares such as MATLAB,
MATHEMATICA, MAPLE, IDL etc for most of their features, if not all. It is highly popular and
one of the most widely used programming language in industry. It is one of the fastest growing
as well as the top-most used programming language (as per the language rankings by Red
monk). Moreover, Python can be easily used from “small scale laptop” to a very high scale
“High Performance Computing (HPC)” systems while exploiting every bit of available
corresponding hardware features.
Pre-requisites:
Since it is a one day fully practical workshop, it is expected that participants are familiar with
the theoretical aspects of numerical techniques. Even if they are not familiar but interested,
the workshop will prove to be useful for them because all of these will be explained in the
workshop too. We assume that the participants have no familiarity with PYTHON at all.
Therefore, we will start from the very basics of Python and move it to very advanced level
of usage of PYTHON for Numerical techniques. Hence, whether one is familiar with Python
or not, it will be beneficial for all of them who need to build or apply mathematical/numerical
modelling tasks in their research/project work. In the workshop, the focus is on practical
aspects, we’ll implement all of the modelling/numerical techniques through the use of
Python.
If a participant owns a laptop, please visit
https://www.anaconda.com/products/distribution
website, download “Anaconda” and install it in his/her laptop. ‘Anaconda’ is ‘Python 3.9
with thousands of packages already included’. Once ‘Anaconda’ is installed, open ‘Spyder’
and work with python.
2
Venue :
Room No. 320, Computer Centre, Academic Block III (Library Building), Doon
University
Date and Time :
15/04/2023,
9:00 AM to 5:15 PM
Registration :
Registration is absolutely free. To participate, please register at
https://docs.google.com/forms/d/e/1FAIpQLSeB8WbwVgbR6F5oAZ4ntKT2jxvo_wAMFKGarJomy0QmO1y_Q/viewform?usp=share_link
Organizing Committee Members:
For any query, write an email to ukumar.senr@doonuniversity.ac.in or please
contact
1. Ishan Rayal, Ph.D. Scholar, SENR
(ishanrayal@gmail.com, 8979191358)
2. Deepak Kumar Mishra, Ph.D., SENR
(deepaknikhilmishra74@gmail.com , 9639111483 )
3. Vinay Pandey, Ph.D. Scholar, Dept. of Math, SoPS
(vinaypandeyg21@gmail.com , 9759400598)
4. Suruchi, Ph.D. Scholar, Dept. of Math, SoPS
(maindola555@gmail.com)
5. Sukhwinder Rawat, Ph.D. Scholar, Dept of Math, SoPS
(sukhwinderawat@gmail.com)
3
One Day hands-on Workshop on
Numerical Computation, Modelling & Simulation with PYTHON
Four Sessions
by
Dr. Ujjwal Kumar
Session 1 : 9:00 AM to 11:00 AM
Tea Break (15 min)
Session 2 : 11:15 AM to 1:00 PM
Lunch Break (1 hour)
Session 3 : 2:00 PM to 3:45 PM
Tea Break (15 min)
Session 4 : 4:00 to 5:15 PM
(End of the Session)
Session 1
Python : An Introduction
1. Basics of Python
Data types : integer, float, string, list, tuple, dictionary, set, array
Arithmetic Operators : numerical operations
Relational operators (or, and, not (!) )
2. conditional statements (if, elif ),
conditional operators ( ==, >=, <=, != ),
loops (for, while)
function (def)
3. Introduction to modules : numpy (operations on arrays),
matplotlib (plotting with data)
Session 2 :
Numerical Methods in Python :
1. Root finding methods :
(i)
Bisection, Newton-Raphson, secant, regula falsi, brentq methods
(Program : scipy_bisection_newton_iteration_secant.py)
2. Interpolation :
(i)
Lagrange interpolation
(ii)
Spline methods :
(a) Linear spline
(b) Quadratic spline
(c) Cubic spline
4
(Program : scipy_interpolate_lagrange_linear_quadratic_cubic_spline.py)
3. Curve fitting
Nonlinear least square methods
(Program : curve_fit_nonlinear_scipy.py)
4. Matrices and Linear system of equations :
(i)
Inverse of a matrix
(ii)
Gaussian elimination method
(iii)
LU decomposition
(iv)
Singular Value Decomposition (SVD)
(v)
Tridiagonal system of matrix
(Program : Matrix_system_of_equations.py)
Session 3 :
5. Numerical Differentiation:
(i)
Finite difference approximation
(Program : numerical_derivative_using_scipy.py)
6. Numerical Integration :
(i)
trapezoidal
(ii)
Simpson methods
(iii)
Romberg integration
(iv)
Gaussian quadrature
(Program : num_integration_test_with_scipy.py)
7. Ordinary Differential Equations (ODE) :
(i)
Initial Value problem
(ii)
Boundary value problem
(iii)
Using Runge-Kutta method
Modelling Applications:
(i)
(ii)
(iii)
(iv)
(v)
Lorenz Attractor
Population growth model (Malthusian, Logistic growth model)
A Model for the spread of a disease
Meteorological Model (Equations of Motion in NWP)
Lotka Volterra Model (An Ecological Model)
(Program : scipy_ode_ivp_ujjwal_2.py)
SESSION 4 :
Finite Difference Methods and Finite Elements Methods for PDE : An Introduction
8. Partial Differential Equations (PDE) :
(Finite Difference Method) (py-pde implementation)
(i)
Laplace Equation
(ii)
Poisson Equations
5
(iii)
Time variable problem (Heat Equation, Diffusion Equation)
Modelling Applications :
(i)
(ii)
(iii)
(iv)
Diffusion Equation with spatial dependence
Stochastic Diffusion Equation
Brusselator Equation
Kuramaot-Sivashinsky Equation
9. Partial Differential Equations (PDE) :
(Finite Elements Method)
(FEniCS implementation) (Linux/Unix System)
Modelling Applications :
(i)
(ii)
(iii)
(iv)
(v)
Poisson Equation (in two dimension)
Applications :
Deflection of a membrane
Heat Equation (Time Dependence PDE)
Applications :
Heat Equation
Diffusion of a Gaussian Membrane
Nonlinear Poisson Equation
Applications :
Linear Elasticity
Navier-Stokes Equations
Applications :
Channel Flow : Poiseuille flow
Flow past a cylinder
Advection Diffusion Reaction
6
Download