Skip to content

unlam/ComputationalAnalyticalMechanics

Repository files navigation

Computational Analytical Mechanics

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.

DIIT-UNLaM CC BY-NC-SA 2026 Víctor A. Bettachini

Table of Contents

About the Course

This course subject matter Introduction to this course

  • 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.

Learning Materials

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.

Teaching Approach

Course methodology Course methodology

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

Technology

  • 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:

Get in touch

If you have a question regarding this course, feel free to open an issue. We welcome community feedback and suggestions!

Weekly Schedule

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

01 Vector kinematics

02 Kinetic energy and gravitational potential energy

03 Euler-Lagrange equation

04 Constraints

05 Numerical simulation

To visualize the dynamics of the systems that we have modelled so far, the Euler-Lagrange equations are now solved numerically.

06 Constraint reactions

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.

07 Nonconservative forces

08 The inertia tensor

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.

09 Distributed mass

10 Euler equations for the rotation of rigid bodies

Now that you know how to write the inertia tensor of a rigid body, it's time to make it rotate.

12 Oscillations of single degree of freedom systems

13 Oscillations in multiple degrees of freedom systems

15 Final project

Bibliography

Main

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.

Vector mechanics

  • 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)

Analytical and vector mechanics

Analytical mechanics

  • Cornelius Lanczos, The Variational Principles of Mechanics (University of Toronto press, 1952).
  • 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)

About

From Lagrangian to Simulation: Computational Dynamics of Mechanical Systems.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages