This course has three components: Theory, Python programming labs, Abaqus labs. Some of the course materials, in particular the Python labs, are available through our Github. Additionally, at the time of writing, with the Covid-19 pandemic, some of the lectures are available through the M489 Youtube channel

** Theory **
Introduction:
Trusses in one-dimension (1D) and two-dimension (2D) as already discrete systems to introduce the finite element assembly process and solution of the linear system of equations.

Part I: Strong form and weak form in 1D for linear elasticity and heat transfer. Discretization of functions and derivatives in 1D with linear and quadratic shape functions. Discrete weak form and system of equations for linear elements. Numerical integration. Isoparametric map. Solution of 1D problems with quadratic elements. Convergence.

Part II: Strong and weak form of heat transfer in 2D and 3D. Discretization of functions in 2D with linear triangular elements. Discrete weak form with linear triangular elements and resulting system of equations. Linear quadrilateral element, the isoparametric map in 2D, numerical integration in 2D. Verification and validation.

Part III: Linear elasticity in 2D, strong form and weak form. Discretization of displacement field, stress, and strain with finite elements: the Be matrix. Constant strain triangle. Solution of linear elasticity problems with the constant strain triangle. Outlook.

** Python labs **
Solution of trusses in 1D and 2D. Linear and quadratic shape functions, interpolation and plotting. Gauss quadrature. Solution of 1D linear elasticity and heat transfer with linear and quadratic elements. Convergence. Interpolation and plotting with linear triangles and linear quadrilaterals. Numerical integration in 2D with linear quadrilaterals. Solution of 2D heat transfer with linear triangles and quadrilaterals.

** Abaqus labs **
Trusses by writing directly the input file. Trusses using the GUI. Linear elasticity in 2D (plate with a hole). Mesh quality and convergence. Steady state and transient heat transfer in 2D. Anisotropy. Element selection, full or reduced integration, linear or quadratic, mesh convergence, accuracy of displacements and stresses. Fatigue in 3D.

Taught on Spring 2019, Fall 2019, Spring 2020.

Vector operations, forces and couples. Free body diagrams, equilibrium of a particle and of rigid bodies. Distributed forces. Centers of gravity and centroids. Friction. Trusses, frames, and machines. Internal reactions resulting from axial, shear, torsional, and bending loading. Stress and strain analyses and elementary failure criteria.

Taught on Fall 2016, Spring 2017, Fall 2017.

Particle motion, velocity and acceleration with cartesian, path and polar descriptions. Rigid body kinematics. Relative motion. Kinetics of particles. Newton's second law, work-energy, impulse-momentum. Kinetics of rigid bodies. Vibrations.

Taught on Spring 2018 and Fall 2018.

This course covers the fundamentals of the theory of elasticity for large deformations, and how these equations can be solved with the finite element method to predict the deformation of soft and biological materials. The course is intended for an undergraduate audience with a background on mechanics of materials. The course includes a theoretical foundation covering the basic concepts needed to use a finite element software. Examples related to application of soft robotics and biomedical engineering are covered and solved with the free software FEBio.

Kinematics of robots with different descriptions. Dynamics in natural coordinates. Project: implement in Python the equations of motion of a parallel manipulator and plan a trajectory. Intercultural learning outcomes: self-awareness and empathy.