{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Homework 4\n", "#### CHE 116: Numerical Methods and Statistics\n", "\n", "\n", "*(2/6/2020)*\n", "\n", "----" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 1. Lists Problems\n", "\n", "1. [2 points] Create a variable called `x` which is a list containing all even numbers less than 100 using the `list(range(...))` syntax. \n", "\n", "2. [1 point] Compute the sum of `x` without using a `for` loop\n", "\n", "3. [4 points] Compute the sum of `x` with a `for ` loop.\n", "\n", "4. [1 point] Print the elements of `x` reversed using a slice\n", "\n", "5. [2 point] Print the second half of `x` using the `len(x) // 2` syntax\n", "\n", "6. [4 points] Create a new empty list `y`. Using a `for` loop and the `append` keyword, make `y` contain the square of each element of `x`. So it should contain: `[4, 16, ..., ]`." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98]\n" ] } ], "source": [ "#1.1\n", "x = list(range(2,100,2))\n", "print(x)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2450\n" ] } ], "source": [ "#1.2\n", "print(sum(x))" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2450\n" ] } ], "source": [ "#1.3\n", "s = 0\n", "for xi in x:\n", " s += xi\n", "print(s)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[98, 96, 94, 92, 90, 88, 86, 84, 82, 80, 78, 76, 74, 72, 70, 68, 66, 64, 62, 60, 58, 56, 54, 52, 50, 48, 46, 44, 42, 40, 38, 36, 34, 32, 30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2]\n" ] } ], "source": [ "#1.4\n", "print(x[::-1])" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98]\n" ] } ], "source": [ "#1.5\n", "print(x[len(x)//2:])" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[4, 16, 36, 64, 100, 144, 196, 256, 324, 400, 484, 576, 676, 784, 900, 1024, 1156, 1296, 1444, 1600, 1764, 1936, 2116, 2304, 2500, 2704, 2916, 3136, 3364, 3600, 3844, 4096, 4356, 4624, 4900, 5184, 5476, 5776, 6084, 6400, 6724, 7056, 7396, 7744, 8100, 8464, 8836, 9216, 9604]\n" ] } ], "source": [ "#1.6\n", "y = []\n", "for xi in x:\n", " y.append(xi**2)\n", "print(y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 2. Array Problem\n", "\n", "1. [2 points] Create a variable called `a` which is an array containing all even numbers less than 100 using the `numpy` `arange` syntax. \n", "\n", "2. [1 point] Compute the sum of `a` without using a `for` loop\n", "\n", "3. [1 point] Print the elements of `a` reversed using a slice\n", "\n", "4. [2 points] Print the minimum, maximum, and mean elements of `a` using `numpy` functions.\n", "\n", "5. [1 point] Print the square of each element in `a` without using a `for` loop or lists. You should just have one line of `numpy` code." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48\n", " 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96\n", " 98]\n" ] } ], "source": [ "#2.1\n", "import numpy as np\n", "a = np.arange(2,100,2)\n", "print(a)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2450\n" ] } ], "source": [ "#2.2\n", "print(np.sum(a))" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[98 96 94 92 90 88 86 84 82 80 78 76 74 72 70 68 66 64 62 60 58 56 54 52\n", " 50 48 46 44 42 40 38 36 34 32 30 28 26 24 22 20 18 16 14 12 10 8 6 4\n", " 2]\n" ] } ], "source": [ "#2.3\n", "print(a[::-1])" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2 98 50.0\n" ] } ], "source": [ "#2.4\n", "print(np.min(a), np.max(a), np.mean(a))" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 4 16 36 64 100 144 196 256 324 400 484 576 676 784\n", " 900 1024 1156 1296 1444 1600 1764 1936 2116 2304 2500 2704 2916 3136\n", " 3364 3600 3844 4096 4356 4624 4900 5184 5476 5776 6084 6400 6724 7056\n", " 7396 7744 8100 8464 8836 9216 9604]\n" ] } ], "source": [ "print(a**2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 3 Plotting\n", "\n", "For each problem below, use numpy to create `x` and `y` arrays which are plotted. Be sure to label your x-axis, y-axis, put the problem number as the title, use at least 500 points, make your figures be 4x3 inches, and add a legend if you have more than one line being plotted.\n", "\n", "1. [6 points] Plot $y = x^2$ from $-1$ to $1$\n", "\n", "2. [8 points] A hanging rope, wire, or chain follows a catenary curve ($y = a\\textrm{cosh}\\frac{x}{a} - a$), although many including Galileo mistakenly believed hanging ropes a parabolas. Compare the catenary and parabolic ($y = x^2$) curves over $-1$ to $1$ where $a = 0.63$.\n", "\n", "3. [8 points] Compare the functions $\\cos x$ and $\\cosh x - 1$ from $-\\pi/2$ to $\\pi/2$" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#3.1\n", "\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "\n", "x = np.linspace(-1, 1, 500)\n", "y = x**2\n", "\n", "plt.figure(figsize=(4,3))\n", "plt.plot(x,y)\n", "plt.xlabel('$x$')\n", "plt.ylabel('$y$')\n", "plt.title('Problem 3.1')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# 3.2\n", "x = np.linspace(-1, 1, 500)\n", "a = 0.62\n", "y2 = a * np.cosh(x / a) - a\n", "\n", "plt.figure(figsize=(4,3))\n", "plt.plot(x,y, label='Parabolic')\n", "plt.plot(x,y2, label='Catenary')\n", "plt.legend()\n", "plt.xlabel('$x$')\n", "plt.ylabel('$y$')\n", "plt.title('Problem 3.2')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#3.3\n", "\n", "x = np.linspace(-np.pi/2, np.pi/2, 500)\n", "y1 = np.cos(x)\n", "y2 = np.cosh(x) - 1\n", "\n", "plt.figure(figsize=(4,3))\n", "plt.plot(x,y1, label='$\\cos x$')\n", "plt.plot(x,y2, label='$\\cosh x$')\n", "plt.legend()\n", "plt.xlabel('$x$')\n", "plt.ylabel('$y$')\n", "plt.title('Problem 3.3')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 4 Expected Value/Variance\n", "\n", "\n", "Use this probability distribution:\n", "\n", "$$\n", "Q = \\{\\textrm{red},\\textrm{ green}, \\textrm{blue}\\}\n", "$$\n", "\n", "$$\n", "P(\\textrm{red}) = 0.1,\\, P(\\textrm{green}) = 0.5,\\, P(\\textrm{blue}),\\, = 0.4\n", "$$\n", "\n", "1. [2 points] Create a dictionary called `prob` where the key is the colors as a string and the values are the probability.\n", "\n", "2. [4 points] Starting with this fragment, show that your probability distribution is normalized.\n", "\n", "```\n", "for key,value in prob.items():\n", " print(key, value)\n", "```\n", "\n", "3. [4 points] Let's define a random variable $X$ that is 1 for red, 2 for green, and 0 for blue. Using your `for` loop from 4.2, use boolean statements to set a variable $x$ to what the value of $X$ should be using the `key` variable. Print out `key, x`, which should look like `red, 1`, `green, 2`...\n", "\n", "4. [4 points] Compute the expected value of `x` using the `for` loop from 4.3\n", "\n", "5. [4 points] Compute the variance by hand, showing the steps in Markdown" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "#4.1\n", "prob = {'red': 0.1, 'green': 0.5, 'blue': 0.4}" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1.0\n" ] } ], "source": [ "#4.2\n", "psum = 0\n", "for key, value in prob.items():\n", " psum += value\n", "print(psum)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "red 1\n", "green 2\n", "blue 0\n" ] } ], "source": [ "#4.3\n", "for key,value in prob.items():\n", " x = 0\n", " if key == 'red':\n", " x = 1\n", " elif key == 'green':\n", " x = 2\n", " print(key, x)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1.1\n" ] } ], "source": [ "#4.4\n", "ev = 0\n", "for key,value in prob.items():\n", " x = 0\n", " if key == 'red':\n", " x = 1\n", " elif key == 'green':\n", " x = 2\n", " ev += x * value\n", "print(ev)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4.5\n", "\n", "$$\n", "Var(x) = E[x^2] - E[x]^2\n", "$$\n", "\n", "$$\n", "E[x] = \\sum_Q X(q)P(q)\n", "$$\n", "\n", "$$\n", "E[x] = 1 \\times 0.1 + 2 \\times 0.5 + 0 \\times 0.4 = 1.1\n", "$$\n", "\n", "$$\n", "E[x] = 1^2 \\times 0.1 + 2^2 \\times 0.5 + 0^2 \\times 0.4 = 2.1\n", "$$\n", "\n", "$$\n", "Var(x) = 2.1 - 1.1^2 = 0.89\n", "$$" ] } ], "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.7.3" } }, "nbformat": 4, "nbformat_minor": 2 }