{
"cells": [
{
"cell_type": "markdown",
"id": "ad7409de",
"metadata": {},
"source": [
"# 3.0 Scientific Python"
]
},
{
"cell_type": "markdown",
"id": "2a9fb39a",
"metadata": {},
"source": [
"*Estimated time to complete this notebook: 5 minutes*"
]
},
{
"cell_type": "markdown",
"id": "a21bbb1c",
"metadata": {},
"source": [
"Why is Python so popular for research work?"
]
},
{
"cell_type": "markdown",
"id": "95af2d9f",
"metadata": {},
"source": [
"Historically, FORTRAN was the most popular \"language of technical computing\".\n",
"Later, MATLAB was created with strong built-in support for efficient numerical analysis with matrices (the *mat* in MATLAB is for Matrix, not Maths), and plotting.\n",
"\n",
"Early Python users developed three critical libraries, to match the power of MATLAB for scientific work:\n",
"- Matplotlib, the plotting library created by [John D. Hunter](https://en.wikipedia.org/wiki/John_D._Hunter)\n",
"- NumPy, a fast matrix maths library created by [Travis Oliphant](https://www.anaconda.com/people/travis-oliphant)\n",
"- IPython, the precursor of the notebook, created by [Fernando Perez](http://fperez.org)"
]
},
{
"cell_type": "markdown",
"id": "b5060771",
"metadata": {},
"source": [
"By combining a plotting library, a matrix maths library, and an easy-to-use interface allowing live plotting commands in a persistent environment, the powerful capabilities of MATLAB were matched by a free and open toolchain."
]
},
{
"cell_type": "markdown",
"id": "1f9b8d54",
"metadata": {},
"source": [
"Further tools such as `pandas` and `scipy` are built on, extend, or utilise these libraries.\n",
"In this module we will use these libraries to deal with data of the type that might be used in a research project."
]
}
],
"metadata": {
"jekyll": {
"display_name": "Scientific Python"
},
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.12"
}
},
"nbformat": 4,
"nbformat_minor": 5
}