{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## This notebook both plots a parametic curve and along with its evolute.\n",
    "\n",
    "Start by importing the required libraries:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sympy import *  #python symbolic math package.\n",
    "import numpy as np   #numerical mathmatics library.\n",
    "import matplotlib.pyplot as plt    #plotting library.\n",
    "init_printing()            #to get good looking output."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Declare $t$ to be a symbol, give the domain $[a,b]$ of \n",
    "the curve, and define $x$ and $y$ as functions of $t$.\n",
    "These should all be editted as needed."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "t = symbols('t')\n",
    "a = 0\n",
    "b = 2*pi+.1\n",
    "x = (1+2*cos(t))*cos(t)\n",
    "y = (1+2*cos(t))*sin(t)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Divide the domain into pieces of length $h$ to be used in plotting\n",
    "and compute the $x$ and $y$ values at these the subdivsions of the domain\n",
    "and store in them in lists."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "h = .05   #edit if need be.\n",
    "t_dom = np.arange(a,b,h)\n",
    "x_vals = [x.subs(t,s) for s in t_dom]\n",
    "y_vals = [y.subs(t,s) for s in t_dom]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Plot the curve."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$$\\left ( -0.281064897632275, \\quad 3.156241185601537, \\quad -1.9361487103523003, \\quad 1.935709130706745\\right )$$"
      ],
      "text/plain": [
       "(-0.281064897632275, 3.156241185601537, -1.9361487103523003, 1.935709130706745\n",
       ")"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x_vals,y_vals)\n",
    "plt.axis('equal')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Compute the deriviatives of $x$ and $y$ with respect to $t$ and use\n",
    "them to compute the speed, $v$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$$\\left(4 \\cos{\\left (t \\right )} + 5\\right)^{0.5}$$"
      ],
      "text/plain": [
       "              0.5\n",
       "(4⋅cos(t) + 5)   "
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "dx = diff(x,t)\n",
    "dy = diff(y,t)\n",
    "v = (dx**2 + dy**2)**(1/2)\n",
    "v.simplify()  # simplfy v if possible."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Compute the components of the unit normal $\\mathbf n$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "n1 = -simplify(dy/v)\n",
    "n2 = simplify(dx/v)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Compute the second derivatives of $x$ and $y$ and use them to \n",
    "compute the curvature and the components of the evolute\n",
    "and make lists of the values of the components."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "ddx = diff(dx,t)\n",
    "ddy = diff(dy,t)\n",
    "num = simplify(dx*ddy - ddx*dy)\n",
    "curvature = simplify(num/v**3)\n",
    "curvature.simplify()\n",
    "E1 = simplify(x + n1/curvature)\n",
    "E2 = simplify(y + n2/curvature)\n",
    "E1.simplify()\n",
    "E2.simplify()\n",
    "E1_vals = [E1.subs(t,s) for s in t_dom]\n",
    "E2_vals = [E2.subs(t,s) for s in t_dom]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/latex": [
       "$$\\left ( -0.281064897632275, \\quad 3.156241185601537, \\quad -1.9361487103523003, \\quad 1.935709130706745\\right )$$"
      ],
      "text/plain": [
       "(-0.281064897632275, 3.156241185601537, -1.9361487103523003, 1.935709130706745\n",
       ")"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x_vals,y_vals,E1_vals,E2_vals)\n",
    "plt.axis('equal')\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "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.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
