Computational Mechanics

ME 3255 Spring 2020

Github page: https://github.uconn.edu/rcc02007/Computational_Mechanics/

JupyterHub server: https://compmech.uconn.edu/

Course Description

This course introduces students to computational methods in Python. Computational methods, best programming practices, and version control are introduced. These methods will be applied to a number of physics-based problems.

This is a project-based introduction to computational mechanics. There are five modules with exercises, homeworks, and final projects. The overall goal of the course is learn to frame engineering problems as computational methods. Once we can communicate our engineering problems to Python code (or any other computer language) we can use standardized computational methods to solve those problems.

Course Expectations

Students are expected to create numerical approximations for linear and nonlinear problems, understand approximations due to floating point operations and numerical approaches and solve differential equations using numerical differentiation and integration. Students are also expected to learn basics of git version control, Python functions and programming best practices.

Lectures: TTh 9:30-10:45 AM, MCHU rm 301

Lab times: TTh 9:30-10:00 AM and 10:15-10:45 AM, EII rm 202

Instructor: Prof. Ryan C. Cooper (ryan.c.cooper@uconn.edu)

Office hours: MW 9:00-11:00 AM in EII rm 314

Teaching Assistants:

Course Information

Prerequisite: CE 3110, MATH 2410Q

Tools used: Python, Jupyter , git, and Github

Required Resources:

Minimum Technical Skills:

Recommended Resources:

Recommended Textbooks:

Grading

Item Percent Requirement
Participation 30 % Complete the notebook exercises and discussion questions
Homework 30 % Complete the end-of-notebook problems
Projects 40 % Complete the module project and submit to Github

Note on Participation

You will have 30 minutes twice a week to work in the computer lab with me. I expect you to come to the lab with exercises and discussions complete. For the exercises/discussions that you have questions, I expect you to prepare some questions to help me help you understand the material. You will submit a pdf of your completed notebook at the end of the lab session time.

Note on Homeworks

The homework assignments are the problem sets at the end of each notebook. You do not have to complete these during the lab session time. They will be due before the next lab.

Academic Integrity:

Course Schedule (which is subject to change based upon feedback and pace of course)

Date Subject/Notebook Module
Tue (01-21) Welcome! NEW Lecture01 - Introduction
Thu (01-23) 01_Interacting_with_Python Getting-Started
Tue (01-28) 02_Working_with_Python Getting-Started
Thu (01-30) 03_Numerical_error Getting-Started
Tue (02-04) Module 1 Project Review and submit
Thu (02-06) meet MCHU 301-Review Lecture
Tue (02-11) 01_Cheers_Stats_Beers Analyze Data
Thu (02-13) 02_Seeing_Stats Analyze Data
Tue (02-18) 03_Linear_Regression_with_Real_Data Analyze Data
Thu (02-20) 04_Stats_and_Montecarlo Analyze Data
Tue (02-25) module 2 Project Review and submit
Thu (02-27) 01_Catch_Motion Initial Value Problems
Tue (03-03) 02_Step_Future Initial Value Problems
Thu (03-05) 03_Get_Oscillations Initial Value Problems
Tue (03-10) 04_Shooting_solutions Initial Value Problems
Thu (03-12) Module 3 Project Review and submit
Tue (03-17) Spring Break!! R&R
Thu (03-19) Spring Break!! R&R
Tue (03-24) meet MCHU 301-Review Lecture
Thu (03-26) 01_Solving_equations Linear Algebra
Tue (03-31) 02_Gauss_elimination Linear Algebra
Thu (04-02) 03_Linear_regression_revisited Linear Algebra
Tue (04-07) Catch-up day Linear Algebra
Thu (04-09) Module 4 project Review and Submit
Tue (04-14) 01_Finite_differences Boundary Value Problems
Thu (04-16) 02_Solutions_in_1D Boundary Value Problems
Tue (04-21) 03_Solutions_in_2D Boundary Value Problems
Thu (04-23) Catch-up day Boundary Value Problems
Tue (04-28) Review course material Lecture
Thu (04-30) Module 5 project Review and Submit