This repository hosts all the teaching materials for the introductory course to Analytical Mechanics of the Mechanical Engineering degree at the Universidad Nacional de La Matanza.
Una versión en castellano de este repositorio, Mecánica Analítica Computacional, también está disponible.
- About the Course
- Weekly Schedule
- 01 Vector kinematics
- 02 Kinetic energy and gravitational potential energy
- 03 Euler-Lagrange equation
- 04 Constraints
- 05 Numerical simulations
- 06 Constraint reactions
- 07 Nonconservative forces
- 08 The inertia tensor
- 09 Distributed mass
- 10 Euler equations for the rotation of rigid bodies
- 11 (continues 10)
- 12 Oscillations of single degree of freedom systems
- 13 Oscillations in multiple degrees of freedom systems
- 14 (continues 13)
- 15 Final project
- 16 Final project - 2.nd defense chance
- Bibliography
- Introduces analytical mechanics using computational methods within a one-semester schedule.
- Aimed to undergraduate engineering students without any programming experience.
- Mechanical devices as modelled as rigid bodies.
- System dynamics and stress analysis are derived using Euler-Lagrange equations.
- All analytical derivations and numerical solutions are computationally implemented.
Weekly topics are presented at one or more Jupyter notebooks that combine:
- Physics theory and concepts
- Python-based computational tools
- Worked examples illustrating the code that performs all required calculations
For each topic a PDF is presented containing a problem set. Its exercises can be solved by making incremental modifications to the worked examples code. Thus, the focus of the student effort is shifted from solving complex mathematical expressions by hand towards physics modeling and result interpretation.
Course materials were designed for a flipped classroom model where students:
- Study materials and attempt exercises before weekly synchronous meetings
- Address questions and doubts with teaching staff at these meetings
- Finish their own problem-solving by these meetings end
- No installation required - Cloud-based notebook execution
- Open source - Even the problem sets LaTeX sources are provided
- Requirements
Notebooks in this repository explicitly import the following Python libraries when required:
- SymPy 1.14.0
- NumPy 2.3.3
- SciPy 1.16.2
- Matplotlib 3.10.6
If you have a question regarding this course, feel free to open an issue. We welcome community feedback and suggestions!
Course topics are divided by areas. Some of them are covered through more than one week, so a further descriptor, Folder, indicates where to find each week's material.
| Weekly folder | Area | Topics |
|---|---|---|
| 01Vector | Newtonian Mechanics | Course methodology. Vector calculus using SymPy. |
| 02Energy | Analytical Mechanics | Generalized coordinates. Kinetic and potential energies. |
| 03EulerLagrange | " | Euler-Lagrange equations. |
| 04Constraints | " | Constraints as functions of coordinates. |
| 05Simulation | Numerical | Numerical resolution of Euler-Lagrange equations. |
| 06ConstraintForces | Forces | Constraint reactions by Lagrange multipliers. |
| 07Nonconservative | " | Nonconservative forces in the Euler-Lagrange formalism. |
| 08InertiaTensor | Rigid body | Inertia tensor of point masses systems. Steiner theorem. |
| 09DistributedMass | " | Inertia tensor of masses distributions. |
| 10EulerRotation | " | Euler equations for the rigid body. |
| 11 (continues 10) | " | Final project: discussion on the statement of the problem |
| 12OscillationsSDOF | Oscillations | Forced oscillations in single degree of freedom systems. |
| 13OscillationsMDOF | " | Forced oscillations in multiple degrees of freedom systems. |
| 14 (continues 13) | " | " |
| 15FinalProject | Evaluation | Final project defense |
| 16 (continues 15) | " | 2.nd defense chance |
- Vector kinematics
- First problem set (pset01) - Vector kinematics
- Exercise pset01e01 should be turned-in in one hour.
- pset01e02 at next week meeting beginning.
- Those of pset02 at end of next meeting (begin during the week).
- Kinetic energy
- Gravitational potential energy: pendulum with pivot free to slide horizontally
- Problem set - Energy
- pset02e02
- pset02e03
- pset02e04
- Euler-Lagrange equation - Pendulums
- Problem set - Euler-Lagrange
- Euler-Lagrange template
- pset03e01c
- pset03e02
- pset03e03
- pset03e04
- Euler-Lagrange template
- Constraints
- Atwood machine with constraint
- Solving systems of differential equations
- Problem set - Constraints
- pset04e02
- pset04e03
- pset04e04
To visualize the dynamics of the systems that we have modelled so far, the Euler-Lagrange equations are now solved numerically.
- Atwood machine
- Pendulum with pivot free to slide horizontally
- Problem set - Simulation
- pset05e02a
- pset05e02c
- pset05e03
- pset05e04
- Reference
The determination of the dynamics of each part in a device is important, but it's equally important to determine the strains that they have to withstand. Let's start calculating these torques and forces.
- Constraint reactions
- Constraint reactions - Ideal physical pendulum
- Constraint reactions - Rolling
- Constraint reactions - Nonholonomic systems
- Problem set - Constraint reactions
- pset06e03
- pset06e04
- pset06e05
- Nonconservative forces and Euler-Lagrange
- Problem set - Nonconservative forces
- Linked cylinders - Help
- pset07e02
- pset07e03
- pset07e04
- Linked cylinders - Help
We now begin studying solids of increasing complexity. In the same manner that a force gives more or less acceleration to different bodies according to their masses, a torque changes more or less the angular velocity according to how the mass is distributed around the axis of rotation. The relation is more complex than a simple scalar quantity like mass, it is the inertia tensor, which we are going to calculate for simple geometric figures for now, to then move forward to work on more realistic mechanic devices.
- Angular momentum and torque
- Inertia Tensor
- Carbon Monoxide
- Problem set - Inertia tensor
- pset08e02
- pset08e04
- pset08e05
- Distributed mass
- Inertia tensor of a cube
- Problem set - Distributed mass
- pset09e01
- pset09e02
- pset09e03
- pset09e04
Now that you know how to write the inertia tensor of a rigid body, it's time to make it rotate.
- Euler equations
- Misaligned gear
- Flywheel
- Problem set - Euler equations for the rotation
- pset10e02
- pset10e03
- pset10e05
- Damped oscillations of a single degree of freedom system (SDoF)
- Single degree of freedom system harmonically forced
- Single degree of freedom system with arbitrary force
- Problem set - Oscillations SDoF
- pset12e01
- pset12e02
- pset12e03
- pset12e04
- Discrete system with multiple degrees of freedom
- Problem set - Oscillations MDoF
- pset13e01
- pset13e02
This course's theoretical foundations are fully exposed at:
- L. D. Landau and E. M. Lifshitz, Mechanics: Volume 1 (Course of Theoretical Physics) (Butterworth-Heinemann, 3rd edition, 1976)
The following books are as complementary material.
- F. Beer, E. Johnston et al., Vector Mechanics for Engineers: Statics and Dynamics (McGraw Hill, 11th edition, 2015)
- W. Moebs, S. Ling and J. Sanny, University Physics Volume 1 (OpenStax, 2016)
- S. Alrasheed, Principles of Mechanics (Springer Cham, 2019)
- S. M. Targ, Theoretical Mechanics: A Short Course (Mir Publishers Moscow, 1962)
- Cornelius Lanczos, The Variational Principles of Mechanics (University of Toronto press, 1952).
- A course note summarises the main relevant subjects.
- Douglas Cline, Variational Principles in Classical Mechanics (University of Rocherster River Campus Libraries, 2021)
- John Robert Taylor, Classical Mechanics (University Science Books, 2005)
- Stephen T. Thornton y Jerry B. Marion, Classical Dynamics of Particles and Systems (Cengage Learning, 5th edition, 2003)
