Skip to content

Commit 6020fbc

Browse files
authored
Revise README for clarity and completeness
Updated README to provide detailed information about the repository, its purpose, structure, requirements, and teaching suggestions.
1 parent 12fb86c commit 6020fbc

1 file changed

Lines changed: 101 additions & 2 deletions

File tree

README.md

Lines changed: 101 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,101 @@
1-
# python-math
2-
python assignment 1 and 2
1+
# Math using Python
2+
3+
Welcome — this repository contains teaching materials, examples, and exercises that use Python to explore and teach mathematics.
4+
5+
## About the instructor
6+
I am ADIL MUKHTAR SHAH, a mathematics teacher with over 17 years of classroom experience. I created these materials to help students (and fellow teachers) learn mathematical concepts through interactive Python examples, clear visualisations, and hands-on exercises.
7+
8+
## Purpose
9+
This repo is designed to:
10+
- Demonstrate mathematical concepts with runnable Python code and Jupyter notebooks.
11+
- Provide classroom-ready exercises and solutions.
12+
- Offer visualisations that make abstract ideas concrete.
13+
- Help teachers adopt Python in their teaching practice.
14+
15+
## Who is this for?
16+
- Secondary and early undergraduate students learning algebra, calculus, linear algebra, probability, and statistics.
17+
- Teachers who want ready-made Python examples and lesson material.
18+
- Self-learners who prefer learning mathematics by doing.
19+
20+
## Repository structure (suggested)
21+
- notebooks/ — interactive Jupyter notebooks for lessons and demos
22+
- examples/ — small, focused Python examples and scripts
23+
- exercises/ — student exercises and worksheets
24+
- solutions/ — solution notebooks and scripts
25+
- slides/ — slide decks and lesson plans
26+
- data/ — example datasets used in lessons
27+
- requirements.txt — Python packages used in the repo
28+
29+
## Requirements
30+
Typical dependencies:
31+
- Python 3.8+
32+
- numpy
33+
- scipy
34+
- sympy
35+
- matplotlib
36+
- pandas
37+
- jupyter (or jupyterlab)
38+
39+
Install with:
40+
```bash
41+
pip install -r requirements.txt
42+
```
43+
44+
## Quick start
45+
Open a notebook from the `notebooks/` folder with Jupyter, or run small examples from `examples/`. Here is a short Python example that solves a quadratic equation and plots the quadratic:
46+
47+
```python name=examples/quick_start.py url=https://github.com/ADIL8590/python-math/blob/main/examples/quick_start.py
48+
import numpy as np
49+
import matplotlib.pyplot as plt
50+
from math import sqrt
51+
52+
# coefficients for ax^2 + bx + c = 0
53+
a, b, c = 1, -3, 2 # roots: 1 and 2
54+
55+
discriminant = b**2 - 4*a*c
56+
roots = ((-b + np.sqrt(discriminant)) / (2*a), (-b - np.sqrt(discriminant)) / (2*a))
57+
print("Roots:", roots)
58+
59+
# plot
60+
x = np.linspace(-1, 4, 400)
61+
y = a * x**2 + b * x + c
62+
plt.axhline(0, color='black', linewidth=0.8)
63+
plt.plot(x, y, label=f'{a}x^2 + {b}x + {c}')
64+
plt.scatter(roots, [0, 0], color='red')
65+
plt.legend()
66+
plt.title('Quadratic: roots and curve')
67+
plt.xlabel('x')
68+
plt.ylabel('y')
69+
plt.show()
70+
```
71+
72+
## Example lesson topics
73+
- Algebra: solving equations, factorisation, polynomial behaviour
74+
- Calculus: limits, derivatives (symbolic via sympy), numerical differentiation, integrals and area
75+
- Linear Algebra: vectors, matrices, eigenvalues, visual intuition
76+
- Probability & Statistics: distributions, sampling, hypothesis basics
77+
- Geometry: coordinate geometry, transformations, plotting conic sections
78+
- Number Theory & Sequences: modular arithmetic, recurrence relations
79+
80+
## Teaching suggestions
81+
- Use notebooks to present theory, then switch to hands-on exercises.
82+
- Start with numeric examples (numpy) then introduce symbolic reasoning (sympy).
83+
- Encourage students to modify parameters and observe changes in plots.
84+
- Provide short, targeted exercises with immediate automated checks where possible.
85+
86+
## Contributing
87+
Contributions are welcome:
88+
- Add new notebooks or exercises
89+
- Improve explanations and visualisations
90+
- Submit issues for errors or unclear material
91+
Please follow the repository style (clear markdown explanations, working notebooks, and minimal dependencies).
92+
93+
## License
94+
This repository is shared for educational use. If you have a preferred license, add a LICENSE file (e.g., MIT).
95+
96+
## Contact
97+
ADIL MUKHTAR SHAH
98+
Mathematics Teacher — 17+ years experience
99+
GitHub: [ADIL8590](https://github.com/ADIL8590)
100+
Email: (add your email here)
101+

0 commit comments

Comments
 (0)