Learning mechanical vibrations through computation.
Project description
Introduction
This repository contains the interactive learning materials designed for the upper-level UC Davis engineering course on Mechanical Vibrations (ENG 122). The materials are designed with these ideas in mind:
That students can learn about mechanical vibrations engineering through “computational thinking” and “computational experimentation”, i.e. actively interacting with a computer by writing code to simulate and analyze computational models and experimental data.
That the computer allows students to solve vibration engineering problems without knowing all of the mathematical theory a priori. This means that we can motivate students to dig deeper into the theory and by presenting it posteriori when the motivation is high. The students will be introduced to data analysis techniques to study vibrations before analytical techniques.
Students learn best by doing. The content is meant to used in class while the instructors act as a coach through the learning.
That each lesson should have a motivated real life example that drives the investigation.
Open access materials promote easy reuse, remixing, and dissemination.
The current course website can be found at:
https://moorepants.github.io/eng122/
All of the Jupyter notebooks are rendered at:
Learning Objectives
There are three broad learning objectives that we focus on in the course:
Students will be able to analyze vibrational measurement data to draw conclusions about the measured system’s vibrational nature and describe how the systems behaves vibrational.
Students will be able to create simple mathematical and computational models of real vibrating systems that can be used to answer specific questions about the system by concisely demonstrating the vibrational phenomena.
Students will be able to design a mechanical structure that has desirable vibrational behavior.
Students that master these three core learning objectives will be well prepared to use mechanical vibration concepts, theories, and tools to solve engineering problems.
For a more detailed topical outline with specific per-activity learning objectives see the outline.
Assessment
The students will be assessed through a series of in- and out-of- class exercises that focus on individual lesson topics, two examinations, and on an individual open-ended vibration design project.
License
The contents of this repository are licensed under the MIT license.
Acknowledgements
Much of this work has been made possible through the Undergraduate Instructional Innovation Program funds provided by the Association of American Universities (AAU) and Google which is administered by UC Davis’s Center for Educational Effectiveness.
This work is also made possible by the broad open source software stack that underpins the Scientific Python Ecosystem, in particular: Jupyter, NumPy, SymPy, SciPy, and matplotlib.
Installation
For users, you can create a conda environment called resonance by downloading the environment.yml file and typing the following at the command line:
$ conda env create -f environment.yml
This environment can be activated with:
$ conda activate resonance
To properly view the exercises you will need to enable the exercise2 notebook extension:
(resonance)$ jupyter nbextension enable exercise2/main
If you want to develop resonance, use the dev-environment.yml file:
$ conda env create -f dev-environment.yml $ conda activate resonance-dev
If you don’t want to use our environments, you can use pip to install resonance:
$ pip install resonance
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file resonance-0.22.0.tar.gz
.
File metadata
- Download URL: resonance-0.22.0.tar.gz
- Upload date:
- Size: 59.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0.post20200209 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cc09766e335e0f4ae81caac6bda99ef702636bb097cc1b1d9569a2e70dcdc38 |
|
MD5 | 298207392ce29398be64159cdb2582b0 |
|
BLAKE2b-256 | f9e904628aa8a4feb2c177539e347b7139fcbafdc7da9958fb5a392bdd6481d5 |