This repository contains a collection of Jupyter notebooks exploring classical mechanics and numerical methods in physics. Topics covered include calculus-based motion, curve fitting and optimization, Fourier analysis, pendulum dynamics, projectile motion, and Lennard-Jones potential simulations.
Calculus/: notebooks demonstrating Newton-Raphson vs. bisection methods and other calculus techniques.Curve Fitting and Optimization/: implementations of Taylor series, finite difference methods, and optimization algorithms.Fourier Analysis/: signal processing notebooks using real-world signals.Pendulum/: nonlinear pendulum simulations comparing Runge–Kutta vs. trapezoid methods.Projectile motion/: simulations of projectile motion under air resistance.LJ_potential_Xe.ipynb: notebook exploring Lennard–Jones potential.PHYS_451_Final_Paper 2.pdf: final report for PHYS 451.
- Clone the repository.
- (Optional) Create a Python virtual environment and install any required packages (see notebook headers for dependencies).
- Launch Jupyter Notebook or JupyterLab and open any of the notebooks in the folders above.
- Run the cells sequentially to see outputs and interactive plots.
These notebooks were created as part of coursework and self-study in physics. Feel free to explore, modify, and run the simulations. Contributions and suggestions are welcome.