{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Tutoraggio 1"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Esercizio 1"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Data la funzione:\n",
    "\n",
    "$f(x) = e^{2x - 2} - \\cos(x), \\quad x \\in [0,1]$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Punto a\n",
    "\n",
    "Spiegare perché è possibile stabilire che nell'intervallo considerato $f$ ammette un'unica radice.\n",
    "\n",
    "1. La funzione $f$ è continua dato che è composizione di funzioni continue;\n",
    "2. la funzione ha valutazioni in $a$ e $b$ di segno discorde, ovvero si dimostra tramite il teorema di Cauchy che la funzione ammette almeno uno zero;\n",
    "    - $f(0) = e^{-2} - 1 < 0$\n",
    "    - $f(1) = 1 - cos(1) > 0$\n",
    "3. la funzione è monotona crescente o decrescente, si può stabilire tramite calcolo della derivata prima di $f$\n",
    "    - $f'(x) = 2 e^{2x-2} + sin(x) > 0$, $\\forall x \\in [0,1]$\n",
    "\n",
    "Per verificare che $f$ ammette zero unico si può anche impiegare il grafico della funzione."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "f = @(x) exp(2*x-2) - cos(x);\n",
    "t = linspace(0, 1);\n",
    "\n",
    "plot(t, f(t), t, 0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Punto b\n",
    "\n",
    "Detta $\\sigma$ l'unica radice di $f$ in $[0,1]$, stabilire se entrambe le seguenti funzioni di iterazione:\n",
    "\n",
    "$$ g_1(x) = \\frac{\\log_e(\\cos(x)) + 2}{2},  g_2(x) = \\arccos(e^{2x-2})$$\n",
    "\n",
    "possono generare un procedimento iterativo convergente a $\\sigma$ e, in caso affermativo, calcolarne l'ordine di convergenza."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Funzione g1(x)\n",
    "\n",
    "- $\\log_e(\\cos(x))$ è ben definito in $[0,1]$, si ha che $\\cos(x) > 0, \\forall x \\in [0,1]$, perciò la scrittura di $g_1(x)$ è valida.\n",
    "\n",
    "- Il punto fisso di $g_1(x)$ è zero di $f(x)$, in altri termini vale $\\sigma = g_1(\\sigma)$\n",
    "    - $\\sigma = \\frac{\\log_e(\\cos(\\sigma)) + 2}{2} \\implies e^{2 \\sigma - 2} = \\cos(\\sigma)$ perciò si ottiene $f(\\sigma) = e^{2\\sigma - 2} - \\cos(\\sigma) = 0$\n",
    "    \n",
    "Ciò permette di affermare che $g_1(x)$ è un buon candidato per un metodo di punto fisso. Per verificare che $g_1(x)$ sia effettivamente in grado di generare un procedimento iterativo convergente a $\\sigma$ si deve calcolare la derivata prima.\n",
    "\n",
    "$g'_1(x) = \\frac{1}{2} \\cdot \\frac{\\sin(x)}{\\cos(x)} = \\frac{\\tan(x)}{2}$\n",
    "\n",
    "Dato che vale $|g'_1(x)| < 1$ (la tangente vale $1$ per un valore pari a circa $\\frac{\\pi}{2}$), in $[0,1]$, allora si ha convergenza.\n",
    "\n",
    "Per determinare se la convergenza è superlineare si verifica se un valore per cui $g'_1$ si annulla in $[0,1]$ è anche un possibile zero di $f$. Ciò non accade, dato che $g'_1$ si annulla solo in $0$ e per questo valore $f(0) < 0$. Si può concludere che un metodo iterativo di punto fisso che sfrutta $g'_1$ converge con convergenza lineare."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Funzione g2(x)\n",
    "\n",
    "Si verifica se vale: $\\sigma = \\arccos(e^{2 \\sigma - 2}) = g_2(\\sigma)$\n",
    "\n",
    "Si ha $\\cos(\\sigma) = e^{2\\sigma - 2} \\implies f(\\sigma) = e^{2\\sigma - 2} - cos(\\sigma) = 0$, perciò anche la funzione $g_2$ è un buon candidato per un metodo di punto fisso con $f$.\n",
    "\n",
    "In modo analogo a quanto visto per $g_1$ si calcola la derivata di $g_2$ e si verifica se vale la condizione $|g'_2(x)| < 1$ in $[0,1]$.\n",
    "\n",
    "$g'_2(x) = \\frac{-2e^{2x - 2}}{\\sqrt{1 - e^{4x - 4}}}$\n",
    "\n",
    "Per $x \\to 1$ si ha $g'_2(x) \\to \\infty$ perciò la funzione non converge."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Punto c\n",
    "\n",
    "Utilizzando le funzioni del punto b che possono generare un procedimento iterativoconvergente si implementi il metood id punto fisso per il calcolo dello zero $\\sigma$ di $f$. Rappresentare su un grafico il valore dell'approssimazione $x_k$ ottenuta al variare di $k \\ge 0$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjAAAAGkCAIAAACgjIjwAAAJMmlDQ1BkZWZhdWx0X3JnYi5pY2MAAEiJlZVnUJNZF8fv8zzphUASQodQQ5EqJYCUEFoo0quoQOidUEVsiLgCK4qINEWQRQEXXJUia0UUC4uCAhZ0gywCyrpxFVFBWXDfGZ33HT+8/5l7z2/+c+bec8/5cAEgiINlwct7YlK6wNvJjhkYFMwE3yiMn5bC8fR0A9/VuxEArcR7ut/P+a4IEZFp/OW4uLxy+SmCdACg7GXWzEpPWeGjy0wPj//CZ1dYsFzgMt9Y4eh/eexLzr8s+pLj681dfhUKABwp+hsO/4b/c++KVDiC9NioyGymT3JUelaYIJKZttIJHpfL9BQkR8UmRH5T8P+V/B2lR2anr0RucsomQWx0TDrzfw41MjA0BF9n8cbrS48hRv9/z2dFX73kegDYcwAg+7564ZUAdO4CQPrRV09tua+UfAA67vAzBJn/eqiVDQ0IgALoQAYoAlWgCXSBETADlsAWOAAX4AF8QRDYAPggBiQCAcgCuWAHKABFYB84CKpALWgATaAVnAad4Dy4Aq6D2+AuGAaPgRBMgpdABN6BBQiCsBAZokEykBKkDulARhAbsoYcIDfIGwqCQqFoKAnKgHKhnVARVApVQXVQE/QLdA66At2EBqGH0Dg0A/0NfYQRmATTYQVYA9aH2TAHdoV94fVwNJwK58D58F64Aq6HT8Id8BX4NjwMC+GX8BwCECLCQJQRXYSNcBEPJBiJQgTIVqQQKUfqkVakG+lD7iFCZBb5gMKgaCgmShdliXJG+aH4qFTUVlQxqgp1AtWB6kXdQ42jRKjPaDJaHq2DtkDz0IHoaHQWugBdjm5Et6OvoYfRk+h3GAyGgWFhzDDOmCBMHGYzphhzGNOGuYwZxExg5rBYrAxWB2uF9cCGYdOxBdhK7EnsJewQdhL7HkfEKeGMcI64YFwSLg9XjmvGXcQN4aZwC3hxvDreAu+Bj8BvwpfgG/Dd+Dv4SfwCQYLAIlgRfAlxhB2ECkIr4RphjPCGSCSqEM2JXsRY4nZiBfEU8QZxnPiBRCVpk7ikEFIGaS/pOOky6SHpDZlM1iDbkoPJ6eS95CbyVfJT8nsxmpieGE8sQmybWLVYh9iQ2CsKnqJO4VA2UHIo5ZQzlDuUWXG8uIY4VzxMfKt4tfg58VHxOQmahKGEh0SiRLFEs8RNiWkqlqpBdaBGUPOpx6hXqRM0hKZK49L4tJ20Bto12iQdQ2fRefQ4ehH9Z/oAXSRJlTSW9JfMlqyWvCApZCAMDQaPkcAoYZxmjDA+SilIcaQipfZItUoNSc1Ly0nbSkdKF0q3SQ9Lf5RhyjjIxMvsl+mUeSKLktWW9ZLNkj0ie012Vo4uZynHlyuUOy33SB6W15b3lt8sf0y+X35OQVHBSSFFoVLhqsKsIkPRVjFOsUzxouKMEk3JWilWqUzpktILpiSTw0xgVjB7mSJleWVn5QzlOuUB5QUVloqfSp5Km8oTVYIqWzVKtUy1R1WkpqTmrpar1qL2SB2vzlaPUT+k3qc+r8HSCNDYrdGpMc2SZvFYOawW1pgmWdNGM1WzXvO+FkaLrRWvdVjrrjasbaIdo12tfUcH1jHVidU5rDO4Cr3KfFXSqvpVo7okXY5upm6L7rgeQ89NL0+vU++Vvpp+sP5+/T79zwYmBgkGDQaPDamGLoZ5ht2GfxtpG/GNqo3uryavdly9bXXX6tfGOsaRxkeMH5jQTNxNdpv0mHwyNTMVmLaazpipmYWa1ZiNsulsT3Yx+4Y52tzOfJv5efMPFqYW6RanLf6y1LWMt2y2nF7DWhO5pmHNhJWKVZhVnZXQmmkdan3UWmijbBNmU2/zzFbVNsK20XaKo8WJ45zkvLIzsBPYtdvNcy24W7iX7RF7J/tC+wEHqoOfQ5XDU0cVx2jHFkeRk4nTZqfLzmhnV+f9zqM8BR6f18QTuZi5bHHpdSW5+rhWuT5z03YTuHW7w+4u7gfcx9aqr01a2+kBPHgeBzyeeLI8Uz1/9cJ4eXpVez33NvTO9e7zofls9Gn2eedr51vi+9hP0y/Dr8ef4h/i3+Q/H2AfUBogDNQP3BJ4O0g2KDaoKxgb7B/cGDy3zmHdwXWTISYhBSEj61nrs9ff3CC7IWHDhY2UjWEbz4SiQwNCm0MXwzzC6sPmwnnhNeEiPpd/iP8ywjaiLGIm0iqyNHIqyiqqNGo62ir6QPRMjE1MecxsLDe2KvZ1nHNcbdx8vEf88filhICEtkRcYmjiuSRqUnxSb7JicnbyYIpOSkGKMNUi9WCqSOAqaEyD0tandaXTlz/F/gzNjF0Z45nWmdWZ77P8s85kS2QnZfdv0t60Z9NUjmPOT5tRm/mbe3KVc3fkjm/hbKnbCm0N39qzTXVb/rbJ7U7bT+wg7Ijf8VueQV5p3tudATu78xXyt+dP7HLa1VIgViAoGN1tubv2B9QPsT8M7Fm9p3LP58KIwltFBkXlRYvF/OJbPxr+WPHj0t6ovQMlpiVH9mH2Je0b2W+z/0SpRGlO6cQB9wMdZcyywrK3BzcevFluXF57iHAo45Cwwq2iq1Ktcl/lYlVM1XC1XXVbjXzNnpr5wxGHh47YHmmtVagtqv14NPbogzqnuo56jfryY5hjmceeN/g39P3E/qmpUbaxqPHT8aTjwhPeJ3qbzJqamuWbS1rgloyWmZMhJ+/+bP9zV6tua10bo63oFDiVcerFL6G/jJx2Pd1zhn2m9az62Zp2WnthB9SxqUPUGdMp7ArqGjzncq6n27K7/Ve9X4+fVz5ffUHyQslFwsX8i0uXci7NXU65PHsl+spEz8aex1cDr97v9eoduOZ67cZ1x+tX+zh9l25Y3Th/0+LmuVvsW523TW939Jv0t/9m8lv7gOlAxx2zO113ze92D64ZvDhkM3Tlnv296/d5928Prx0eHPEbeTAaMip8EPFg+mHCw9ePMh8tPN4+hh4rfCL+pPyp/NP637V+bxOaCi+M24/3P/N59niCP/Hyj7Q/Fifzn5Ofl08pTTVNG02fn3Gcufti3YvJlykvF2YL/pT4s+aV5quzf9n+1S8KFE2+Frxe+rv4jcyb42+N3/bMec49fZf4bmG+8L3M+xMf2B/6PgZ8nFrIWsQuVnzS+tT92fXz2FLi0tI/QiyQvpTNDAsAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAfdEVYdFNvZnR3YXJlAEdQTCBHaG9zdHNjcmlwdCA5LjUzLjNvnKwnAAASwUlEQVR4nO3dv28jx93A4eGbq0+pUnmvi1WQQCoXkjonxRGposIC0oQCInXBNXedBQQW0kTXXCsVMZDGCpBDqtBFWpOA4XJZKOm0qVKF+Qf4Futb0KJEcSlK/JJ8HhgBb/ljJ2PZH8+QWjZGo1ECgGX7v2UPAABSEiQAghAkAEIQJABCWEyQhsNhURQLeSkANtNigvSXv/zlq6++WshLAbCZFhCk/f39t2/fPvx1ANhkCwjS+/fvf/vb3z78dQDYZD7UAEAITxGk7e3txpgnOCMAK+fZ05zGBYoAmM6WHQAhNJ5g7bK9vX11dfXYZwFgpVkhARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARDCkoPUaKRGY7lDACCEZ0s8d6ORRqPvb6T0/W0ANtPSVkhVjZIUAbD0Lbs0tjyydwewyZYfJABIcYI0voMHwAZa2ocaxvfobNYBsMwV0viHGiyPADbckrfsdAiAUpT3kADYcIIEQAjLv3QQAKSlBwkASoIEQAiCBEAIggRACMsPksuqApAiBAkAkiABEIQgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARBCvSDleT4cDmc/DgAzqhGkTqdzeXl5eHjY6/Wqg8PhsNPpdLvdw8PDbrf7CCMEYCM8m/Fx3W43y7LT09OiKE5OTnZ3d8vj5+fn7Xb74OBgOBweHh622+1HGyoA62zWFVKe561WK6WUZVm/3x+/6/nz5ymlra2twWCw8PEBsCFmXSGllLIsK2/s7OxUB/f29t6+fZtS+vrrr8syAcAcaryHVBRFeWN8hbS7u/vFF1/keX5wcDDluY0xk/f6BgoAZl0htVqtPM9TSkVRNJvN6ni32/3f//735s2boiiqN5YmjUajBw4UgPU2a5Da7fbFxcXZ2Vm/3z86Okop9Xq9w8PDb7/9dn9///r6ut/vf/HFF485VADWWaPW2qXX62VZVr2ZVBoOh4PBoNlsbm1t3fqs7e3tq6ur20/fSOX5qxsAbKZ6QZqPIAFwL5cOAiAEQQIgBEECIARBAiAEQQIgBEECIARBAiAEQQIghGUGyS/DAlCxQgIghChB8g0UABsuSpAA2HCCBEAIggRACIIEQAiCBEAIggRACIIEQAiCBEAIggRACIIEQAiCBEAIggRACIIEQAiCBEAIgYLkGygANlmgIAGwyQQJgBAECYAQBAmAEAQJgBAECYAQni17AHO68QHx0WhJ4wBgQVYySI3GzQJNHgFgtdiyAyCE1Q6SKzsArI3VDhIAa2MlgzR+1btGwxtIAOtgJYOUftgkNQJYA6sapKRDAOslVpBqfQOFnTqAdbK0IC0qJ75FCWA9xFohAbCxBAmAEAQJgBAECYAQ1iFIPtcAsAbWIUgArIFVDZJfQgJYM6saJADWzJoEydtIAKtuTYIEwKpbya8wf7jx5ZT3ogAi2MQg3fhAhM9HAESwPlt2M76NdGt+vP8EsHThgvRkH08ov2o22bIDiCFckGbxkE22yeDZsgOIYBPfQ0pjEZpvNWZpBbBwK7lCusuM231ViuZbG5XPKs/lzSeARVmrINVSRiU94HvTqyzVUmZs7pI9sIIPfK4AA49nE7fsJhdGZVdqrZYesrqa8gpTfkFqfJ+w7nPHn37rfuON0tx16ruWlbOcepZ75xvYfPfWGthTDjvswAz7iX8MNtAmBulWtZpUPvLW5cKUH7Ibrz95xnt/QWp8cVbruTcWdjeOTJ7orlPfmsPF/nH6MOYb9mOMc+5hxxnYig47bcaPwWbauC27KX/XZ9x/q15hfMev+qvcx6v2AyefO/5XdWT6wMbvHT/RlNHOsZd476lnv7c69a3/BMYc9vipJ8ewwGHHmc+nHPbjDWy6h/wY1B3YAudzY63bCqnWQqeWxsS2VfXDN/4fa9XDxp81Prwbr1llZvLBN47c+sqTD5j+9Ke5N039l9ESBzb7sMMObEWHHWpg0YatTJV1C9J097Zq8r9xJjepRne/lTL++HRbHcf/OPma0xf4t/7X3JR77zrXYu9d7B8NO+zADPuxh01axS27p/kbWW273dqeu3bk7n3AaGx/r9ZeQZrYU5qyQzL5gBsvvsB7b5z63nun/J9a7rAnLWXYk6c2n0sc9o1/6J5s2Btrg1ZIs/8tH31Yr1T/O6PRDxc6t55xyhhunOvW5zYad96Vpm4CjL/4wu+tTl333sce2IoOO+zANm3Y409/4mFvpjUM0o0q1FI9ce4XeeAP2b1Pmf6AZd27xFOv5bCXeGrDjnPvBqq3ZZfn+XA4nP34ypnMyRxZGt39KTsA7lIjSJ1O5/Ly8vDwsNfrVQeHw+H+/v7l5WX5v48wwsWwRQsQ3KxB6na7WZadnp6+e/fu/Py8Ov7111/v7Oycnp6+f/++2+0uZEy13rZZuNHE7xUB8ARmfQ8pz/NWq5VSyrKs3+9Xx5vN5uXlZa/XGwwGzWbzUcZY3ywfLpj+dACeWI0tuyzLyhs7OzvjB58/f97tdrvd7osXLxY8OgA2Ro1P2RVFUd4YXyGdn5+32+2Dg4OU0s9//vPyxqTG2B7c6AELkDn20Gy7AayEWVdIrVbr+vo6pVQUxRxbc6MxSSQAmDDrCqndbl9cXJydnfX7/aOjo5RSr9c7PDz8xz/+0el0rq+vB4PBy5cvH3OotS3xkxEA1NWotYHW6/WyLKveTLr3eGl7e/vq6uoHZ71vhXTXA2ZcWo1fYeEhvycLwJOpF6T5PHGQqscIEsAKWb2Lq9aiQwCrYp2DpEYAK2QNg3TjQg8+2gCwElbpat91vz+iug1AfKsUpFp0CGC1rOGWHQCrSJAACCFokJb7DRQAPL2gQQJg0wgSACEIEgAhCBIAIaxMkFwgFWC9rUyQAFhvggRACIIEQAiCBEAIggRACIIEQAiCBEAIqxEkv4QEsPZWI0gArL24QfINFAAbJW6QANgoggRACIIEQAiCBEAIggRACCsQJL+EBLAJViBIAGyCJQTJigeASVZIAIQgSACEIEgAhCBIAIQgSACEIEgAhBA6SOU3UPiMOMAmCB0kADbHs2UP4E7Vt/OVN6yTANZb0BVSuVNXRkiKADZB0CDd4OvMAdbeagQJgLUXPUj26wA2RNAg3dij8+FvgLUX91N2401SI4C1FzdISYcANknQLTsANo0gARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEIIgARCCIAEQgiABEMJTB8mXkQNwKyskAEIQJABCECQAQhAkAEKoF6Q8z4fD4SMNBYBN9mz2h3Y6nSzLBoPB69evd3d3y4OXl5fdbre8PRgM/vSnP7VarcUPE4B1N2uQut1ulmWnp6dFUZycnFRBOjg4ODg4SCnled7tdtUIgPnMumWX53kZmyzL+v3+5APevn17fHy8yKEBsElqvIeUZVl5Y2dn58Zdl5eXe3t7W1tbCxsXABumRpCKoihvTK6QLi8vP/vssynPbXxQd3wAbIhZg9Rqta6vr1NKRVE0m83xu/I8bzab05dHow/mHigA623WILXb7X6/f3Z29urVq6Ojo5RSr9fb3t5OKfksAwAP16i1aun1elmWVW8mzWh7e/vq6ur787m4KgC3qfF7SCml6tPeALBYLh0EQAiCBEAIggRACIIEQAiCBEAIggRACIIEQAiCBEAIggRACIIEQAiCBEAIggRACIIEQAiCBEAIggRACIIEQAiCBEAIggRACE8apEYjjUZPeUIAVoYVEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAITxdkBqNNBo92dkAWDFWSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEUC9IeZ4Ph8PJ40VRFEWxoCEBsImezf7QTqeTZdlgMHj9+vXu7m51/OTkJKVUFEW73T44OFj8GAHYALOukLrdbpZlp6en7969Oz8/r473er2UUnm8vA0Ac5h1hZTneavVSillWdbv96vj33zzzYsXLy4vL1NK7969e4whArAJaryHlGVZeWNnZ2f8+FdffZVSur6+7nQ6ixsYAJulxntI1ccWxldIKaWXL1+Wbx3t7+/f9dxGo5HSqNFopJRGo9E8IwVgrc26Qmq1WtfX1ymloiiazWZ1/MWLF9XtWz+AVyojNBqN1AiAWzVmL8T+/v7Ozk6/3z86Omq3271e7/Dw8Orqqjw+GAzu+pTd9vb21dVVo5HECIC71AhSSqnX62VZVr2ZdO/xkiABcK96QZqPIAFwL5cOAiAEQQIgBEECIARBAiAEQQIgBEECIARBAiCEJwqSX0ICYDorJABCECQAQhAkAEIQJABCECQAQhAkAEIQJABCECQAQhAkAEIQJABCECQAQhAkAEIQJABCECQAQhAkAEIQJABCECQAQhAkAEIQJABCECQAQhAkAEIQJABCECQAQhAkAEIQJABCECQAQhAkAEIQJABCECQAQhAkAEIQJABCECQAQniiII1GT3MeAFaVFRIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAhCBIAIQgSACEIEgAh1AtSnufD4fCRhkKp0WgsewgrxozVZcbqMmO1zD1dz2Z/aKfTybJsMBi8fv16d3e3Ov7JJ580m82UUrPZfPPmzcTI0scfzzc2ADbIrEHqdrtZlp2enhZFcXJyUgWpKIpms/nll1/e+qxGI41GaXv7+xsAcJdZg5TneavVSillWdbv96vjRVFsbW2dnJw8f/78+Ph4a2urums8QqORJgEwTWM0WyXOzs729vbKhVGn06mWRN1uN8/zvb29wWDwzTffVMfH87O9vb3oYQMQ2tXVVd2n1HgPqSiK8sb4Cqndbrfb7ZTS7u5ut9u99Yn//OdVSuV7XKPZE7ixGg1TVI8Zq8uM1WXGapl7umb9lF2r1bq+vk4f3jSqjl9cXPR6vcnHl3t01e3RaJTS6MMNpjFFdZmxusxYXWaslrmnq0bH9vf3d3Z2+v3+0dFRu93u9XqHh4d//etfX7169fLly8Fg0G63Dw4OfvDqHzbuvIEEwHT1Fla9Xi/LsizLZjye0vfrJDUCYDobowCE8OiXDnJxhxkNh8PqYyMlUzddnudmrJZerzc+P6ZrFkVRVLNkxuqqO2M/+v3vf/9og0mdTqcoiouLi7s29Kj8+c9//u677/b29so/mrophsPhr3/96//85z9/+9vf/vWvf5WTZsamKGdsNBr94Q9/+MlPfvLTn/7UdM1iOBz+8pe//N3vfpf8gN3nk08+6fV6D/1HcvRo/v73v3/++eej0ej6+vo3v/nN451oDfzqV7/6+OOP//jHP5Z/NHXTnZ+fV3P16aefjszYfc7Pz8/Pz0cf5sd0zejzzz//9NNP//vf/5qx6SanZb4Zq/F7SHXddXEHJr1///7s7Kz6o6mb7uXLl+WN8b0UMzbF0dFReSPP8yzLTNcsLi4uXrx4UV6MxoxNN3nJnvlm7HHfQ6qWaTs7O496ovVj6qYodwDKXzw4Pj6uDpY3zNhdzs7O3r59W/1rojxoum6V53me51XIkxmbajgcfvTRR+12+8c//vGrV6/Kg3PM2COukNIdF3dgFqZuurOzs3//+9/v3r2rfujN2L3evHlzfHz8i1/84rPPPjNd011cXHz00UdnZ2fl5aQbjYYZm+LWS/bMMWOPuEK66+IO3MvUTXd5eXmjRmZsupOTk/JfE+Xlj03XvY6Ojvb29vb29ra2ttrt9s9+9jMzNsXkJXvm+xl7xBVSu92+uLg4OzsrL+7weCdaP6ZuuvID351Op/zjl19+acamOzg4ePXqVZ7ng8Hg+PjYdN2r3NhMKT1//ry8qPT+/r4Zu8vOzk51yZ7yej3z/Yw9+i/GTrmIA9OZurrM2BTD4XAwGIzPj+mqy4xNNzk/dWfMlRoACOHRr9QAALMQJABCECQAQhAkAEIQJABC+H/ii//jX8CuHgAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "g_1 = @(x) (log(cos(x)) + 2) / 2;\n",
    "x = [1/2; g_1(1/2)];\n",
    "\n",
    "count = 2;\n",
    "\n",
    "while abs(x(count) - x(count - 1)) > 10^-12 % da 10^-6 è accettabile\n",
    "    count = count + 1;\n",
    "    x(count) = g_1(x(count-1));\n",
    "end\n",
    "\n",
    "figure\n",
    "plot((0:1:count-1), x, \"b-o\")\n",
    "box off"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Esercizio 2\n",
    "\n",
    "A partire dal sistema lineare:\n",
    "\n",
    "- si determini per quali valori di $k$, con $k \\in \\mathcal{R}^{+}$ il sistema lineare ammette un'unica soluzione. \n",
    "- Per $k = 2$ si risolva il sistema lineare implementando l'algoritmo di fattorizzazione LU parziale."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "pkg load symbolic\n",
    "addpath(\"./functions\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Punti a e b"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "ans = (sym)\n",
      "\n",
      "   2   7\n",
      "  k  - ─\n",
      "       4\n",
      "\n",
      "ans = (sym 2×1 matrix)\n",
      "\n",
      "  ⎡-√7 ⎤\n",
      "  ⎢────⎥\n",
      "  ⎢ 2  ⎥\n",
      "  ⎢    ⎥\n",
      "  ⎢ √7 ⎥\n",
      "  ⎢ ── ⎥\n",
      "  ⎣ 2  ⎦\n",
      "\n"
     ]
    }
   ],
   "source": [
    "% conversione del sistema in forma matriciale\n",
    "% workaround: https://github.com/cbm755/octsympy/issues/8#issuecomment-40945844\n",
    "syms k\n",
    "A = [-3/2 4 -k; [1 -3/2 0]; 0 -k 1];\n",
    "\n",
    "% se la matrice è invertibile il sistema ammette un'unica soluzione\n",
    "% se il determinante è non nullo allora la matrice è invertibile\n",
    "det(A)\n",
    "solve(det(A))\n",
    "warning(\"off\", \"OctSymPy:sym:rationalapprox\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Per $k = \\frac{\\sqrt{7}}{2}$ si può determinare se sono presenti soluzioni tramite il teorema di Rouche-Capelli.\n",
    "\n",
    "Si determinano quindi il rango di $A$ e di $(A|b)$. Dato che $\\det(A) = \\frac{-\\sqrt{7}}{2} < 0$ e $rank(A|b) = rank(A)$ il sistema non ha soluzioni per $k = \\frac{\\sqrt{7}}{2}$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "ans = 3\n"
     ]
    }
   ],
   "source": [
    "rank(subs(A, k, sqrt(7)/2))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "ans = 3\n"
     ]
    }
   ],
   "source": [
    "rank([subs(A, k, sqrt(7)/2), [1; 0; 0]])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "error: 'A' undefined near line 1 column 17\n",
      "error: 'A' undefined near line 1 column 32\n",
      "error: 'L' undefined near line 1 column 20\n",
      "error: 'x' undefined near line 1 column 1\n"
     ]
    }
   ],
   "source": [
    "A = double(subs(A, k, 2));\n",
    "b = [1 0 0]';\n",
    "[L, U, P, err] = gauss_partial(A);\n",
    "[x, err] = lusolve(L, U, P, [], b);\n",
    "x"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Punti c e d\n",
    "\n",
    "Si permutano le equazioni del sistema lineare in modo che la matrice dei coefficienti associata al nuovo sistema lineare sia simmetrica e definita positiva $\\forall k \\in (0, k^*)$.\n",
    "\n",
    "Per prima cosa si nota che l'unico elemento non ripetuto è 4, perciò deve stare su una diagonale perché $A$ possa essere simmetrica. Si effettua quindi uno scambio di righe nella matrice A."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [],
   "source": [
    "A = [[1 3/2 0]; -3/2 4 -k; 0 -k 1];\n",
    "b = [0 1 0]';"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Perché $A$ sia definita positiva per ogni valore di $k$ si può ricorrere a due approcci:\n",
    "\n",
    "- calcolo degli autovalori di $A$, con parametro $k$, e verifica della loro positività. Questo approccio richiede il calcolo del polinomio caratteristico della matrice $A$;\n",
    "\n",
    "- applicazione del criterio di Sylvester, per cui affinché $A$ simmetrica sia definita positiva è necessario che tutti il determinante di tutti i minori principali di $A$ siano strettamente positivi.\n",
    "\n",
    "#### Primo metodo con il polinomio caratteristico\n",
    "\n",
    "Sapendo che il polinomio caratteristico è pari a $\\det(A - xI)$, si ha:\n",
    "\n",
    "$$\\begin{align*}\\mbox{p}_{car} &= \\det(A)\\\\ &= (1-x)^{2(4-x)} -  \\frac{9}{4}(1-x) - (1-x)k^2 \\\\ &= (1-x)\\left(x^2 - 5x + \\frac{7}{4} - k^2 \\right)\\end{align*}$$\n",
    "\n",
    "Ci sono tre autovalori. 1 è sempre positivo. Per gli altri due si impiegano la regole per cui il termine noto di un polinomio di secondo grado è pari al prodotto delle radici mentre il coefficiente di $x$ è pari al negativo della somma delle radici pe revitare di risolvere il polinomio.\n",
    "\n",
    "Devono perciò valere le seguenti condizioni:\n",
    "\n",
    "- $-5 < 0$\n",
    "- $\\frac{7}{4} - k^2 > 0 \\implies -\\frac{\\sqrt{7}}{2} < k < \\frac{\\sqrt{7}}{2}$\n",
    "\n",
    "\n",
    "#### Secondo metodo con il criterio di Sylvester\n",
    "\n",
    "Si calcolano i determinanti dei tre minori principali e si verifica che siano tutti positivi:\n",
    "\n",
    "- $\\det(1) > 0$\n",
    "- $\\det \\left (\\begin{bmatrix}\n",
    "       1 & -\\frac{3}{2} \\\\[0.3em]\n",
    "       -\\frac{3}{2} & 4 \\\\[0.3em]\n",
    "     \\end{bmatrix} \\right ) = 4 - \\frac{9}{4} = \\frac{7}{4} > 0$\n",
    "- $\\det(A) = 4 - \\frac{9}{4} - k^2 > 0$\n",
    "\n",
    "Tutte e tre le condizioni sono valide per $k \\in \\left [-\\frac{\\sqrt{7}}{2}, \\frac{\\sqrt{7}}{2} \\right ]$. \n",
    "\n",
    "Dato che $k^*$ deve essere positivo si ha che la matrice dei coefficienti associata al nuovo sistema lineare è simmetrica e definita positiva se $k^* < \\frac{\\sqrt{7}}{2}$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "%syms x\n",
    "%A = [1-x, -3/2, 0; -3/2, 4-x, -k; 0,-k,1-x]\n",
    "%solve(det(A))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "metadata": {},
   "outputs": [],
   "source": [
    "b = [0 1 0]';\n",
    "\n",
    "syms k\n",
    "k = linspace(0, sqrt(7)/2, 22); % 20 punti e gli estremi\n",
    "k = k(2:end-1);\n",
    "norma_inf = zeros(20, 1);\n",
    "norma_2 = zeros(20, 1);\n",
    "\n",
    "for j = 1:20\n",
    "\n",
    "    A = [[1 -3/2 0]; -3/2 4 -k(j); 0 -k(j) 1];\n",
    "    [R, p] = chol(A);\n",
    "    \n",
    "    if p > 0\n",
    "        warning(\"La matrice A non risulta definita positiva\");\n",
    "    end\n",
    "    \n",
    "    y = lsolve(R', b);\n",
    "    x = usolve(R, y);\n",
    "    \n",
    "    norma_2(j) = norm(x, 2);\n",
    "    norma_inf(j) = norm(x, inf);\n",
    "\n",
    "end"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 94,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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KpX9/X2nSyD0sbW1lcvlVFfhilOpmn83hXPlmn83tRLkOSRzQGN8fDzAlw1J22rlsEylUrl79+7i4qKi0jppW3atVqvVagsLC4qKcsXpx+PJkydCiKOjo/n5+f5X1ZVT2ZlMJp1Ob29vb29vDw0NqSgtWfT/brYVie+mPgLrkISLRRy04lRtLpf78OHD+vq6nqfB2pa9sbFx/vz5XC4nF71dXFzUsHinD3xqampubk4IMTMzo6CsbpzKLhQK09PTsvJr167JDYRK8+9mW5H4buojsEAaHR2t1Wqi4yIO+nCqtlgsyp94daV14lT2wsLCx48fhRC7u7vT09PpdFpZiQ6cKh8aGpJrfwgth2Ki9VMdb5p/N53o/93USmCBND09vbGxkcvl5CIOQb1sSGzVynGAg4MDOanUHDtqu3qsQq0fslm53CGdTut5TxCnD3xubm5mZiaXy+3v72s4DtPhA799+/b8/PzR0dH+/r55egOBi8p308Ys25x+qe13UysBXxgbrUUcolWtKaJlC+fKNf8bdShP88qBaGGlBgCAFgJeqQEAAH8IJACAFggkAIAWCCQAgBYIJACAFggkAIAWCCTESqVSicoqogBsCCQAgBYIJMRTsVikVQKiJcjVvgFNFIvFYrH47bffqi4EgAd0SIib3d3dlZWVubk57ocGRAuBhBj69ttv8/m8hvezANABgYS4GR8fn5iYuHXrVqFQUF0LAA8IJMTT4uLiy5cvK5WK6kIAuMXtJwAAWqBDAgBogUACAGjh/wDYVUjyipcsngAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "figure\n",
    "plot( k, norma_inf, \"-*\", ...\n",
    "      k, norma_2, \"-*\", ...\n",
    "      sqrt(7)/2, 0:0.3:14);\n",
    "legend(\"norma inf\",\"norma 2\",\"Location\",\"eastoutside\");\n",
    "xlabel(\"k\");\n",
    "box off"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A partire dal valore delle ascisse $\\frac{\\sqrt{7}}{2}$ si nota che la norma della soluzione cresce. \n",
    "\n",
    "Questo perché quando $k = \\frac{\\sqrt{7}}{2}$ la matrice $A$ è singolare, quindi non invertibile. \n",
    "\n",
    "Per $k \\to \\frac{\\sqrt{7}}{2}$ l'autovalore di $A$ diventa sempre più piccolo e la matrice che si ottiene a partire dalla risoluzione del sistema lineare associato ad $A$ tramite l'algoritmo di Cholesky ha un autovalore sempre più grande. Ciò provoca la dilatazione di entrambe le norme. Questo effetto si verifica indipendentemente dalla norma scelta."
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Octave",
   "language": "octave",
   "name": "octave"
  },
  "language_info": {
   "file_extension": ".m",
   "help_links": [
    {
     "text": "GNU Octave",
     "url": "https://www.gnu.org/software/octave/support.html"
    },
    {
     "text": "Octave Kernel",
     "url": "https://github.com/Calysto/octave_kernel"
    },
    {
     "text": "MetaKernel Magics",
     "url": "https://metakernel.readthedocs.io/en/latest/source/README.html"
    }
   ],
   "mimetype": "text/x-octave",
   "name": "octave",
   "version": "5.2.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}