Scientific Computing with Python-I

ANPA, Summer 2019


Class-I: Basic Data Structure

List, Tuple & Dictionary, and Loops & Conditions


  • Discussed property of List (e.g., immutability, append,indexing,list to array). Introduced Tuple.
  • Discussed usefulness of Dictionary (e.g., key-valu pair paradigm of NoSQL database, search by key, involvement of list in dictionary, dictionary of dictionary, I/O data with json).
  • Explored loops and conditions (e.g., for loop, while loop, zip, enumerate, break) and iterated over list and dictionary.
  • Implemented loops and condition in creating Fern.

Read More Project Repo
Class-II: Function & Class

Object Oriented Programming


  • Demonstrated data encapsulation and functionality in python object created by python class.
  • Implemented data and function interaction with sample classes (e.g., Math, Circle, Newton).
  • Implemented function and class to create (1) electric potential of lattice of charges (2) random walk in 1D and 2D (3) diffusion in 2D.

Read More Project Repo
Class-III: Numpy

Array, Grid, Algebra & Statistics


  • Explored random array,heatmap of array, extraction of subarray and array manupulation (e.g.,reshaping, flattening, concatenation, row sum, column sum).
  • Implemented arange and meshgrid techniques for creating contour and 3D plots.
  • Explored basic functionalities in Algebra (e.g., vector and matrix manipulation), statistics (e.g.,central tendency, probability.

Read More Project Repo
Class-IV: Pandas

Dataframe, Indexing, Groupby & Lambda functions


  • Introduced Dataframe in Pandas and basic data visualization.
  • Explored the data iteration and indexing in pandas (e.g.,iterrows, loc, iloc)
  • Performed data exploration with different plottings (e.g., histogram, pairplot, barplot,factorplot,countplot,jointplot).
  • Implemented groupby and lambda function methods to wrangling data in Dataframe.
  • Read More Project Repo
Class-V: Scientific Computing

Numerical Methods, Special Functions, Optimization & Simulation


  • Introduced numerical methods in Python with Scipy package (e.g., Integration, differential equations).
  • Explored Special Functions and visualized them.
  • Explored Optimization (e.g., Gradient descent, Newton's Conjugate Gradient Method).
  • Performed Monte Carlo Simulation of lattice system in Condensed Matter Physics (e.g., Ising Model).

Read More Project Repo
Class-VI: Data Science

Machine Learning, Reinforcement Learning & Deep Learning


  • Introduced concept of supervised (e.g.,regression,classification) and unsupervised (e.g., clustering) learning.
  • Explored basic ideas in Machine Learning Models with sample data (e.g., Titanic, Boston Housing).
  • Explored Reinforcement Learning with learning agent in 2D world.
  • Explored the basic idea in Deep Learning with image classification with neural network and convolutional neural network.

Read More Project Repo