A course for first year students at IIT Madras.
Browse the folder for notes, presentations, example scripts and notebooks to help you learn the basic concepts behind scientific computing. If you wish to contribute by editing or adding content, please feel free to drop pull request.
Look at the resources page for useful links.
Videos recorded for the course on System Commands as part of Online BSc in Programming and Data Science are linked here.
This repository contains sessions on the following sections:
- Session-0 Getting access to linux environment
- MacOS-Linux A mapping of MacOS commands to Linux commands
- Session-1 Getting to know your machine and account
- Session-2a Your OS details
- Session-2b Using your admin privileges to manage packages
- Session-2c Shell environment
- Session-2d File system
- Session-3 Finding your way around the linux filesystem, important directories
- Session-4 Going around your machine
You can download the file RollList.csv and use it for the examples given below.
- Session-5 Introduction to regex
- Session-6 Application of regex in sed
- Session-6a Text editors for command line environment
- Session-6b Introduction to vi editor
- Session-7a Application of regex in vi
- Session-7b Introduction to awk language
- Session-8 Network ports
- Session-8b Programming in awk language
- Session-8c Programming in awk language (contd)
- Session-9 Bash scripts - linked with >25 example scripts
- cmdline fun Some fun with commands
- Session-10 Introduction to make
- Session-11 Working with makefile
- Session-12 Shell variables in makefile
- Session-13 Need for datastructures
- Session-14 Introduction to python using Jupyter notebook interface
Some of the notebooks may not render soon enough, try reloading if you want to see the notebook right on this site. You can click on the icon "raw" and save the notebook to your desktop and use.
- python-1 Using python as a calculator
- python-2 collections in python: list, tuple, dict, set
- python-3 loops, functions, maps, simple plots
- python-4 copies and pointers
- python-5 2D visualization of data
- python-6 Arrays from numpy, fitting polynomials and user defined functions to data
- python-7 Binning of large arrays, Parametric plots, Linear Algebra, Array representation in memory and its role on speed of computation
- python-8 Working on csv file from the cloud
- python-9 Saving the modified dataframe to a csv on google drive
Github may have limited rendering of these notebooks. You can click on the icon on top-right to view the notebook externally in nbviewer. If github does not render the notebook, try reloading. Alternatively download the raw file to your desktop and run it locally.
- sage-1 Introduction to symbolic computation using sage expressions
- sage-2 Manipulation of symbolic expressions
- sage-3 Symbolic differentiation
- sage-4 Symbolic integration
- sage-5 Using LaTeX to render symbols and functions
- sage-6a Integers in sage
- sage-6b Real Numbers in sage
- sage-6c Rational Numbers in sage
- sage-6d Complex Numbers in sage
- latex-1 Getting access to LaTeX typesetting environment
- latex bundle A sample latex bundle is provided for you to get started
- latex-2 Getting your content right
- git-tut Tutorials to help with git
- Message Passing Interface (MPI) library
Look at the contributions by top performing students of this course abhigyan, archish and Raghvani Dhaval for examples and solutions that could help you learn more about the concepts of this course.
- You should explore further and have fun learning.