{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "This notebook is about demonstrating:\n", "* How to make a **demonstration available to students** in the form of an **exercise including different types of questions**\n", "* Using notebook cells to encourage students to **take notes** when they use a virtual demonstration\n", "\n", "The example chosen is voluntarily *simple* so that anyone can understand what is illustrated and focus the pedagogical features of the example.\n", "\n", "---" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Falling objects \"apple \n", "\n", "## The problem \n", "We **drop** an object from a given height with **no initial velocity**. Just like an apple would fall from a tree. \n", "We consider the movement of the object, **ignoring resistance from the air**.\n", "\n", " \n", "\n", "## Initial questions\n", "\n", "Answer the following questions _before_ using the virtual lab.\n", "\n", "**Question 1:** Which object would reach the ground first: a bowling ball (5 kg) or a tennis ball (0.05 kg)? Write down your answer in the cell below." ] }, { "cell_type": "raw", "metadata": {}, "source": [ "### Type your answer here." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Question 2:** Why? In the cell below, describe in words your explanation for this behavior." ] }, { "cell_type": "raw", "metadata": {}, "source": [ "### Type your answer here." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Tip:* In physics, as in many disciplines, sketching your ideas can really help you figure out problems. \n", "It might be a good idea to take a piece of paper and sketch what you think the following variables will look like as a function of time: the *height* of the object, the *velocity* of the object and the *acceleration* of the object." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " \n", "\n", "## Virtual lab\n", "The virtual demonstration below illustrates the movement of different objects. \n", "Execute the cell below to launch the virtual demonstration, then *answer the questions below*." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "cb5ed06adcc341d38169b49a6149f51a", "version_major": 2, "version_minor": 0 }, "text/plain": [ "VBox(children=(Output(layout=Layout(margin='2px 6px')), HBox(children=(VBox(children=(HBox(children=(Label(val…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "from lib.fallingobjects import *\n", "FallingObjectsLab(show_withair=False);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " \n", "\n", "**Question 1:** Choose an initial height that will be the same for all the objects you will observe, e.g. 5 meters. \n", "When does the each object reaches the ground? \n", "Note down the time in seconds below." ] }, { "cell_type": "raw", "metadata": {}, "source": [ "### Object 1 reaches the ground at:\n", "### Object 2 reaches the ground at:\n", "### Object 3 reaches the ground at:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Tip:* Actually, the interactive figure allows you to plot the movement of several objects simultaneously by maintaining the 'ctrl' key selected while clicking with your mouse on the objects you want to display. \n", "Try to select several objects to display simultaneously.\n", "\n", "**Question 2:** What can you conclude from this experiment? \n", "*If you wonder how the virtual lab works and would like to see the code, [you can have a look at it at the end of this notebook](#How-does-the-virtual-lab-work%3F).*" ] }, { "cell_type": "raw", "metadata": {}, "source": [ "### Type your answer here." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " \n", "\n", "## Synthesis\n", "\n", "**Question 1:** How does your own explanation compare with the explanation provided below?" ] }, { "cell_type": "raw", "metadata": {}, "source": [ "### Type your answer here." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Problem analysis\n", "\n", "\n", "We are looking for the time at which the object will reach the ground. Therefore *we are looking for an equation giving us the height of the object as a function of time*.\n", "\n", "We know the initial height and velocity of the object, as well as its mass. \n", "In addition, if we ignore the friction from air, we know that the only force applied on the object is the weight: $\\vec F = m \\vec g$\n", "\n", "#### Movement of the object\n", "Since there is only one force involved, it seems quite straightforward to use Newton's second law: $\\sum \\vec F = m \\vec a$\n", "\n", "With the weight the only force on the object, we get: $\\vec F = m \\vec a$ \n", "Using the expression of the weight it gives us: $m \\vec g = m \\vec a$ \n", "Therefore the movement of the object is described by $\\vec a = \\vec g$.\n", "\n", "To get the equation of acceleration as a function of time, we project onto our coordinate system: $a = -g$, therefore $a(t) = -g$. \n", "This means that the ball is under **constant acceleration**.\n", "\n", "From there we can get the equations for velocity and height by integrating successively: \n", "$\\left\\{\\begin{matrix} a(t) = -g \\\\ v(t) = -g\\,t + v_0 \\\\ h(t) = -\\frac{1}{2}\\,g\\,t^2 + v_0\\,t + h_0\\end{matrix}\\right. $\n", "\n", "The above equations have the following parameters:\n", "* the initial height $h_0$ from which the object is dropped\n", "* the initial velocity of the object $v_0$, with $v_0 = 0$ when the object is dropped with no initial velocity\n", "* and of course the acceleration due to gravity $g$\n", "\n", "#### Conclusion\n", "We see clearly that **the mass $m$ of the object plays no role at all in the equations of the movement**.\n", "\n", "**Question 2:** What happens if we don't ignore the resistance of the air?" ] }, { "cell_type": "raw", "metadata": {}, "source": [ "### Type your answer here." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Execute the cell below, then click on the button to show the effect of friction from the air. \n", "Select different objects to see how they are affected depending on their characteristics." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "FallingObjectsLab();" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Question 3:** When is it reasonable to ignore the resistance of the air and why? \n", "List the criteria that you could you to decide if resistance from the air can be ignored or not when solving a problem." ] }, { "cell_type": "raw", "metadata": {}, "source": [ "### Type your answer here." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " \n", "\n", " \n", "\n", "---\n", "\n", "## How does that look in real life?\n", "\n", "The following video demonstrates how a bowling ball and ostrich feathers fall in a vacuum chamber, thus illustrating how what we have seen so far looks in the real world." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from IPython.display import YouTubeVideo\n", "YouTubeVideo('E43-CfukEgs', 560, 315)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " \n", "\n", "---\n", "## How does the virtual lab work?\n", "\n", "You can have a look at the code of the virtual lab by [opening this python file](lib/fallingobjects.py). \n", "By executing the following three cells, you will see the code of the three functions used to compute the movement equations for the falling object.\n", "\n", "#### Code of $a(t) = -g$\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "accel_time??" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Code of $v(t) = -g\\,t + v_0$" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "veloc_time??" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Code of $h(t) = -\\frac{1}{2}\\,g\\,t^2 + v_0\\,t + h_0$" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "height_time??" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " \n", "\n", "---\n", "\n", "## Other resources on the web\n", "\n", "Detailed explanations with examples on falling objects: https://opentextbc.ca/physicstestbook2/chapter/falling-objects/\n", "\n", "Impact of air resistance on falling objects (in French): http://www.physagreg.fr/mecanique/m12/M12-chute-libre-frottements.pdf" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.8" } }, "nbformat": 4, "nbformat_minor": 2 }