{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "99986ea7",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "# Periodično vzbujanje\n",
    "\n",
    "Prevod Mathematica zvezka (dr. Janko Slavič, marec 2013) v Python.\n",
    "\n",
    "Zvezek obravnava odziv linearnega nihajnega sistema na periodično\n",
    "vzbujanje: najprej odziv na harmonsko vzbujanje (dinamični faktor in fazni\n",
    "zamik), nato razvoj periodične vzbujevalne sile v Fourierovo vrsto ter na\n",
    "koncu sestavljen ustaljeni odziv kot vsoto odzivov na posamezne harmonske\n",
    "členove vrste."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "2ed082f2",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:15.132595Z",
     "iopub.status.busy": "2026-09-25T06:46:15.132494Z",
     "iopub.status.idle": "2026-09-25T06:46:15.707208Z",
     "shell.execute_reply": "2026-09-25T06:46:15.706616Z"
    }
   },
   "outputs": [],
   "source": [
    "\n",
    "import numpy as np\n",
    "import sympy as sp\n",
    "import matplotlib.pyplot as plt\n",
    "from ipywidgets import interact, IntSlider, FloatSlider\n",
    "from sympy import pprint\n",
    "\n",
    "sp.init_printing(use_unicode=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "34843f6c",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "## Harmonično vzbujanje\n",
    "\n",
    "### Reševanje gibalne enačbe\n",
    "\n",
    "Normirana gibalna enačba vsiljenega nihanja:\n",
    "$$\\ddot{x}(t) + \\omega_0^2\\, x(t) = f_0 \\sin(\\omega t)$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "a2fa6acc",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:15.709071Z",
     "iopub.status.busy": "2026-09-25T06:46:15.708856Z",
     "iopub.status.idle": "2026-09-25T06:46:15.812731Z",
     "shell.execute_reply": "2026-09-25T06:46:15.812041Z"
    },
    "lines_to_next_cell": 1
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "            2                     \n",
      "  2        d                      \n",
      "ω₀ ⋅x(t) + ───(x(t)) = f₀⋅sin(ω⋅t)\n",
      "             2                    \n",
      "           dt                     \n"
     ]
    }
   ],
   "source": [
    "\n",
    "t_s, omega0_s, omega_s, f0_s, delta_s = sp.symbols(\n",
    "    \"t omega0 omega f0 delta\", real=True, positive=True\n",
    ")\n",
    "x = sp.Function(\"x\")\n",
    "\n",
    "eq = sp.Eq(sp.diff(x(t_s), t_s, 2) + omega0_s**2 * x(t_s), f0_s * sp.sin(omega_s * t_s))\n",
    "pprint(eq)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "56bdc12c",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "Pričakovana rešitev v ustaljenem stanju (partikularna rešitev):\n",
    "$$x_p(t) = X \\sin(\\omega t - \\varphi)$$\n",
    "\n",
    "Kjer je:\n",
    "$$X = X_0 \\beta, \\qquad X_0 = \\frac{f_0}{\\omega_0^2}$$\n",
    "\n",
    "$\\beta$ je dinamični faktor, $\\varphi$ pa fazni zamik odziva za\n",
    "vzbujanjem:\n",
    "$$\\beta = \\frac{1}{\\sqrt{\\left(1-(\\omega/\\omega_0)^2\\right)^2 +\n",
    "\\left(2\\delta\\,\\omega/\\omega_0\\right)^2}}$$\n",
    "\n",
    "Namesto ločenega primera za $\\delta=0$ (kot v izvirnem zvezku, kjer je\n",
    "fazni zamik za nedušen sistem definiran z `If`) uporabimo `arctan2`, ki isti\n",
    "poseben primer ($\\delta=0$: $\\varphi=0$ za $\\omega<\\omega_0$ in\n",
    "$\\varphi=\\pi$ za $\\omega>\\omega_0$) zajame samodejno:\n",
    "$$\\varphi = \\operatorname{atan2}\\!\\left(2\\delta\\,\\frac{\\omega}{\\omega_0},\\,\n",
    "1-\\left(\\frac{\\omega}{\\omega_0}\\right)^2\\right)$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "7b49dfff",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:15.814192Z",
     "iopub.status.busy": "2026-09-25T06:46:15.814051Z",
     "iopub.status.idle": "2026-09-25T06:46:15.818095Z",
     "shell.execute_reply": "2026-09-25T06:46:15.817652Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fazni zamik za delta=0 se ujema z If-vejama iz izvirnega zvezka.\n"
     ]
    }
   ],
   "source": [
    "\n",
    "def dinamicni_faktor(Omega, omega0, delta):\n",
    "    \"\"\"Dinamični faktor (razmerje amplitud) pri vzbujevalni frekvenci Omega.\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "    Omega : float ali ndarray\n",
    "        Vzbujevalna krožna frekvenca [rad/s].\n",
    "    omega0 : float\n",
    "        Lastna krožna frekvenca nedušenega sistema [rad/s].\n",
    "    delta : float\n",
    "        Brezdimenzijsko razmerje dušenja.\n",
    "\n",
    "    Returns\n",
    "    -------\n",
    "    beta : float ali ndarray\n",
    "        Dinamični faktor.\n",
    "    \"\"\"\n",
    "    r = Omega / omega0\n",
    "    return 1.0 / np.sqrt((1 - r**2) ** 2 + (2 * delta * r) ** 2)\n",
    "\n",
    "\n",
    "def fazni_zamik(Omega, omega0, delta):\n",
    "    \"\"\"Fazni zamik odziva za vzbujanjem pri vzbujevalni frekvenci Omega.\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "    Omega : float ali ndarray\n",
    "        Vzbujevalna krožna frekvenca [rad/s].\n",
    "    omega0 : float\n",
    "        Lastna krožna frekvenca nedušenega sistema [rad/s].\n",
    "    delta : float\n",
    "        Brezdimenzijsko razmerje dušenja.\n",
    "\n",
    "    Returns\n",
    "    -------\n",
    "    phi : float ali ndarray\n",
    "        Fazni zamik [rad].\n",
    "    \"\"\"\n",
    "    r = Omega / omega0\n",
    "    return np.arctan2(2 * delta * r, 1 - r**2)\n",
    "\n",
    "\n",
    "# Kontrola posebnega primera nedušenega sistema (delta = 0)\n",
    "assert fazni_zamik(0.5, 1.0, 0.0) == 0.0\n",
    "assert np.isclose(fazni_zamik(2.0, 1.0, 0.0), np.pi)\n",
    "print(\"Fazni zamik za delta=0 se ujema z If-vejama iz izvirnega zvezka.\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "bec44ab5",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "## Periodično vzbujanje\n",
    "\n",
    "### Osnovna perioda in amplituda vzbujanja"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "e0acae84",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:15.819419Z",
     "iopub.status.busy": "2026-09-25T06:46:15.819281Z",
     "iopub.status.idle": "2026-09-25T06:46:15.821372Z",
     "shell.execute_reply": "2026-09-25T06:46:15.820933Z"
    },
    "lines_to_next_cell": 1
   },
   "outputs": [],
   "source": [
    "\n",
    "T = 1.0\n",
    "omega = 2 * np.pi / T\n",
    "f0 = 1.0"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "6aecbf73",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "Vzbujevalna sila (pospešek) v normirani obliki -- stopničasta funkcija, ki\n",
    "je nič na prvi polovici periode in $f_0$ na drugi:\n",
    "$$f(t) = f_0\\, H\\!\\left(t - \\tfrac{T}{2}\\right)$$\n",
    "kjer je $H$ Heavisideova stopnica. Tako kot v izvirnem zvezku je `f`\n",
    "definirana kot dobesedna formula (ne kot periodično ponovljena funkcija);\n",
    "za izračun Fourierovih koeficientov v nadaljevanju se uporabi le en njen\n",
    "period, $t \\in [0, T]$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "2405006e",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:15.822833Z",
     "iopub.status.busy": "2026-09-25T06:46:15.822613Z",
     "iopub.status.idle": "2026-09-25T06:46:16.016942Z",
     "shell.execute_reply": "2026-09-25T06:46:16.016344Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 800x400 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "def f(t):\n",
    "    \"\"\"Vzbujevalna sila (pospešek) v normirani obliki.\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "    t : float ali ndarray\n",
    "        Čas [s].\n",
    "\n",
    "    Returns\n",
    "    -------\n",
    "    float ali ndarray\n",
    "        Vrednost vzbujevalne sile.\n",
    "    \"\"\"\n",
    "    return f0 * np.heaviside(np.asarray(t, dtype=float) - T / 2, 1.0)\n",
    "\n",
    "\n",
    "t_prikaz = np.linspace(0, 2, 1000)\n",
    "\n",
    "fig, ax = plt.subplots(figsize=(8, 4))\n",
    "ax.plot(t_prikaz, f(t_prikaz), linewidth=1.5, color=\"k\")\n",
    "ax.set_xlabel(\"$t$\")\n",
    "ax.set_ylabel(\"$f(t)$\")\n",
    "ax.grid(True, alpha=0.3)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "448d49cb",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "## Periodično vzbujanje\n",
    "\n",
    "### Zapis vzbujevalne sile s Fourierovo vrsto\n",
    "\n",
    "Definicija cosinusnih in sinusnih členov:\n",
    "$$c_0 = \\frac{2}{T}\\int_0^T f(t)\\,\\mathrm{d}t, \\qquad\n",
    "c_j = \\frac{2}{T}\\int_0^T f(t)\\cos(j\\omega t)\\,\\mathrm{d}t, \\qquad\n",
    "s_j = \\frac{2}{T}\\int_0^T f(t)\\sin(j\\omega t)\\,\\mathrm{d}t$$\n",
    "\n",
    "Ker `sympy` (za razliko od Mathematice) integrala Heavisideove stopnice v\n",
    "splošni obliki ne poenostavi lepo, `f(t)` na intervalu integracije\n",
    "zapišemo z `Piecewise` -- to je le drugačen zapis iste stopničaste\n",
    "funkcije."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "1c292bc1",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:16.018480Z",
     "iopub.status.busy": "2026-09-25T06:46:16.018248Z",
     "iopub.status.idle": "2026-09-25T06:46:16.073069Z",
     "shell.execute_reply": "2026-09-25T06:46:16.072610Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "c0 =\n",
      "f₀\n",
      "c_j =\n",
      "  ⎛        ⎛T⋅j⋅ω⎞                ⎞\n",
      "  ⎜  f₀⋅sin⎜─────⎟                ⎟\n",
      "  ⎜        ⎝  2  ⎠   f₀⋅sin(T⋅j⋅ω)⎟\n",
      "2⋅⎜- ───────────── + ─────────────⎟\n",
      "  ⎝       j⋅ω             j⋅ω     ⎠\n",
      "───────────────────────────────────\n",
      "                 T                 \n",
      "s_j =\n",
      "  ⎛      ⎛T⋅j⋅ω⎞                ⎞\n",
      "  ⎜f₀⋅cos⎜─────⎟                ⎟\n",
      "  ⎜      ⎝  2  ⎠   f₀⋅cos(T⋅j⋅ω)⎟\n",
      "2⋅⎜───────────── - ─────────────⎟\n",
      "  ⎝     j⋅ω             j⋅ω     ⎠\n",
      "─────────────────────────────────\n",
      "                T                \n"
     ]
    }
   ],
   "source": [
    "\n",
    "t_i, T_i, j_i, omega_i, f0_i = sp.symbols(\"t T j omega f0\", positive=True)\n",
    "\n",
    "f_sym = sp.Piecewise((0, t_i < T_i / 2), (f0_i, True))\n",
    "\n",
    "c0_sym = sp.Rational(2, 1) / T_i * sp.integrate(f_sym, (t_i, 0, T_i))\n",
    "cj_sym = (\n",
    "    sp.Rational(2, 1)\n",
    "    / T_i\n",
    "    * sp.integrate(f_sym * sp.cos(j_i * omega_i * t_i), (t_i, 0, T_i))\n",
    ")\n",
    "sj_sym = (\n",
    "    sp.Rational(2, 1)\n",
    "    / T_i\n",
    "    * sp.integrate(f_sym * sp.sin(j_i * omega_i * t_i), (t_i, 0, T_i))\n",
    ")\n",
    "\n",
    "print(\"c0 =\")\n",
    "pprint(c0_sym)\n",
    "print(\"c_j =\")\n",
    "pprint(cj_sym)\n",
    "print(\"s_j =\")\n",
    "pprint(sj_sym)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "923cf291",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "Z vstavljeno periodo $\\omega = 2\\pi/T$ in ob predpostavki, da je $j$ celo\n",
    "število, se izraza za $c_j$ in $s_j$ poenostavita:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "7f9d3ede",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:16.075156Z",
     "iopub.status.busy": "2026-09-25T06:46:16.074984Z",
     "iopub.status.idle": "2026-09-25T06:46:16.103178Z",
     "shell.execute_reply": "2026-09-25T06:46:16.102581Z"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "c0 = f0\n",
      "c_j = 0\n",
      "s_j = f0*((-1)**j - 1)/(pi*j)\n",
      "Ujema se z izvirnim zvezkom: c0=f0, c_j=0, s_j=f0*((-1)^j-1)/(j*pi).\n"
     ]
    }
   ],
   "source": [
    "\n",
    "j_int = sp.symbols(\"j\", integer=True, positive=True)\n",
    "\n",
    "cj_sym_T = cj_sym.subs(omega_i, 2 * sp.pi / T_i)\n",
    "sj_sym_T = sj_sym.subs(omega_i, 2 * sp.pi / T_i)\n",
    "\n",
    "cj_poenostavljen = sp.simplify(cj_sym_T.subs(j_i, j_int))\n",
    "sj_poenostavljen = sp.simplify(sj_sym_T.subs(j_i, j_int))\n",
    "\n",
    "print(\"c0 =\", c0_sym)\n",
    "print(\"c_j =\", cj_poenostavljen)\n",
    "print(\"s_j =\", sj_poenostavljen)\n",
    "\n",
    "assert c0_sym == f0_i\n",
    "assert cj_poenostavljen == 0\n",
    "assert sp.simplify(sj_poenostavljen - f0_i * ((-1) ** j_int - 1) / (j_int * sp.pi)) == 0\n",
    "print(\"Ujema se z izvirnim zvezkom: c0=f0, c_j=0, s_j=f0*((-1)^j-1)/(j*pi).\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5056c636",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "Numerične funkcije koeficientov (za $T=1$, $f_0=1$), dobljene z\n",
    "`lambdify`:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "4d6f0f25",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:16.104846Z",
     "iopub.status.busy": "2026-09-25T06:46:16.104696Z",
     "iopub.status.idle": "2026-09-25T06:46:16.148622Z",
     "shell.execute_reply": "2026-09-25T06:46:16.147865Z"
    }
   },
   "outputs": [],
   "source": [
    "\n",
    "sj_num = sp.lambdify(j_i, sj_poenostavljen.subs({T_i: T, f0_i: f0}), \"numpy\")\n",
    "c0_num = float(c0_sym.subs(f0_i, f0))\n",
    "\n",
    "\n",
    "def cj_num(j):\n",
    "    \"\"\"Kosinusni Fourierov koeficient c_j (identično 0 za to vzbujanje).\"\"\"\n",
    "    return np.zeros_like(np.asarray(j, dtype=float))\n",
    "\n",
    "# Kontrola nekaj vrednosti\n",
    "assert np.isclose(sj_num(1), -2 / np.pi)\n",
    "assert np.isclose(sj_num(2), 0.0)\n",
    "assert np.isclose(sj_num(3), -2 / (3 * np.pi))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "59744c1e",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "### Kontrola s hitro Fourierovo transformacijo\n",
    "\n",
    "Koeficiente lahko preverimo tudi numerično: `f(t)` vzorčimo čez natanko en\n",
    "period in iz `np.fft.rfft` izračunamo $a_j$ (kosinusni) in $b_j$\n",
    "(sinusni) člen. Ker je `f` na sredini periode nezvezna, se zaradi\n",
    "končnega vzorčenja (Gibbsov pojav) pojavi majhna numerična napaka, zato\n",
    "primerjamo s toleranco."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "7591ea68",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:16.150535Z",
     "iopub.status.busy": "2026-09-25T06:46:16.150330Z",
     "iopub.status.idle": "2026-09-25T06:46:16.154124Z",
     "shell.execute_reply": "2026-09-25T06:46:16.153489Z"
    },
    "lines_to_next_cell": 1
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fourierova koeficienta s_j (FFT in zaprta oblika) se ujemata.\n"
     ]
    }
   ],
   "source": [
    "\n",
    "N_fft = 4096\n",
    "t_perioda = np.linspace(0, T, N_fft, endpoint=False)\n",
    "F = np.fft.rfft(f(t_perioda))\n",
    "\n",
    "a_fft = 2 * F.real / N_fft\n",
    "b_fft = -2 * F.imag / N_fft\n",
    "\n",
    "for j in range(1, 6):\n",
    "    assert np.isclose(a_fft[j], 0.0, atol=1e-3)\n",
    "    assert np.isclose(b_fft[j], sj_num(j), atol=1e-3)\n",
    "print(\"Fourierova koeficienta s_j (FFT in zaprta oblika) se ujemata.\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "04ac0a81",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "## Periodično vzbujanje\n",
    "\n",
    "### Aproksimacija vzbujanja\n",
    "\n",
    "Vzbujanje aproksimiramo s prvimi $n$ harmonskimi členi Fourierove vrste;\n",
    "vsota po členih je vektorizirana (brez zanke po $j$)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "d4839ca6",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:16.155691Z",
     "iopub.status.busy": "2026-09-25T06:46:16.155546Z",
     "iopub.status.idle": "2026-09-25T06:46:16.191650Z",
     "shell.execute_reply": "2026-09-25T06:46:16.190792Z"
    },
    "lines_to_next_cell": 1
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "fA(t, 10) =\n",
      "  2⋅sin(2⋅π⋅t)   2⋅sin(6⋅π⋅t)   2⋅sin(10⋅π⋅t)   2⋅sin(14⋅π⋅t)   2⋅sin(18⋅π⋅t)  ↪\n",
      "- ──────────── - ──────────── - ───────────── - ───────────── - ─────────────  ↪\n",
      "       π             3⋅π             5⋅π             7⋅π             9⋅π       ↪\n",
      "\n",
      "↪   1\n",
      "↪ + ─\n",
      "↪   2\n",
      "Numerična in simbolna aproksimacija fA(t, 10) se ujemata.\n"
     ]
    }
   ],
   "source": [
    "\n",
    "def fA(t, n):\n",
    "    \"\"\"Aproksimacija vzbujevalne sile s prvimi n harmonskimi členi.\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "    t : float ali ndarray\n",
    "        Čas [s].\n",
    "    n : int\n",
    "        Število upoštevanih harmonskih členov.\n",
    "\n",
    "    Returns\n",
    "    -------\n",
    "    float ali ndarray\n",
    "        Vrednost aproksimacije.\n",
    "    \"\"\"\n",
    "    t = np.atleast_1d(np.asarray(t, dtype=float))\n",
    "    j = np.arange(1, n + 1)\n",
    "    kot = np.outer(j, omega * t)  # oblika (n, len(t))\n",
    "    vrsta = (cj_num(j)[:, None] * np.cos(kot) + sj_num(j)[:, None] * np.sin(kot)).sum(\n",
    "        axis=0\n",
    "    )\n",
    "    return c0_num / 2 + vrsta\n",
    "\n",
    "\n",
    "# Kontrola: fA(t, 10) se mora ujemati s simbolnim izrazom iz izvirnega zvezka\n",
    "j_sym = sp.Symbol(\"j\", integer=True, positive=True)\n",
    "fA_10_sym = sp.Rational(1, 2) + sum(\n",
    "    sj_poenostavljen.subs({T_i: T, f0_i: f0, j_int: jj}) * sp.sin(jj * 2 * sp.pi * t_i)\n",
    "    for jj in range(1, 11)\n",
    ")\n",
    "print(\"fA(t, 10) =\")\n",
    "pprint(sp.nsimplify(sp.expand(fA_10_sym)))\n",
    "\n",
    "t_kontrola = np.linspace(0, 2, 50)\n",
    "fA_10_num = sp.lambdify(t_i, fA_10_sym, \"numpy\")(t_kontrola)\n",
    "assert np.allclose(fA(t_kontrola, 10), fA_10_num)\n",
    "print(\"Numerična in simbolna aproksimacija fA(t, 10) se ujemata.\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b18debc4",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "Primerjava vzbujevalne sile in njene aproksimacije, s prilagodljivim\n",
    "številom upoštevanih harmonskih členov $n$ (ustreza\n",
    "`Manipulate[..., {n, 1, 20, 1}]` iz izvirnega zvezka)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "c2637ccd",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:16.193539Z",
     "iopub.status.busy": "2026-09-25T06:46:16.193307Z",
     "iopub.status.idle": "2026-09-25T06:46:16.324790Z",
     "shell.execute_reply": "2026-09-25T06:46:16.324354Z"
    },
    "lines_to_next_cell": 1
   },
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "c2d6b4ae1e3446ed9f9e7a27d2f26335",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "interactive(children=(IntSlider(value=1, description='n', max=20, min=1), Output()), _dom_classes=('widget-int…"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "<function __main__.prikazi_aproksimacijo(n=1)>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "\n",
    "def prikazi_aproksimacijo(n=1):\n",
    "    t = np.linspace(0, 2, 1000)\n",
    "    fig, ax = plt.subplots(figsize=(8, 4))\n",
    "    ax.plot(t, f(t), linewidth=1.5, color=\"k\", label=\"$f(t)$\")\n",
    "    ax.plot(t, fA(t, n), linewidth=1.5, color=\"r\", label=\"$f_A(t,n)$\")\n",
    "    ax.set_title(f\"N={n}\")\n",
    "    ax.set_xlabel(\"$t$\")\n",
    "    ax.grid(True, alpha=0.3)\n",
    "    ax.legend()\n",
    "    plt.show()\n",
    "\n",
    "\n",
    "interact(prikazi_aproksimacijo, n=IntSlider(min=1, max=20, step=1, value=1))"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ebb64af2",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "## Periodično vzbujanje\n",
    "\n",
    "### Iskanje rešitve -- primer\n",
    "\n",
    "Nastavek za ustaljen odziv: konstantni del $x_0$ ter po en kosinusni in\n",
    "sinusni člen za vsak harmonik $j$:\n",
    "$$x_0(t) = \\frac{c_0}{2\\,\\omega_0^2}, \\qquad\n",
    "x_{c,j}(t) = X_{c,j}\\cos(j\\omega t - \\varphi_j), \\qquad\n",
    "x_{s,j}(t) = X_{s,j}\\sin(j\\omega t - \\varphi_j)$$\n",
    "\n",
    "Amplitudi posameznega harmonika:\n",
    "$$X_{c,j} = \\frac{c_j}{\\omega_0^2}\\,\\beta(j\\omega), \\qquad\n",
    "X_{s,j} = \\frac{s_j}{\\omega_0^2}\\,\\beta(j\\omega)$$\n",
    "\n",
    "Dinamični faktor $\\beta$ in fazni zamik $\\varphi$ sta enaka kot pri\n",
    "harmonskem vzbujanju, le da ju tu ovrednotimo pri frekvenci $j$-tega\n",
    "harmonika, $\\Omega_j = j\\omega$; pri nadresonančnem vzbujanju\n",
    "($\\Omega_j > \\omega_0$) je treba paziti na fazo -- v mejnem primeru brez\n",
    "dušenja naraste na $\\pi$ (to je že zajeto v `fazni_zamik` prek `atan2`).\n",
    "\n",
    "Namesto ločenih realnih izrazov za $\\beta$ in $\\varphi$ ju tu izpeljemo iz\n",
    "ene same kompleksne frekvenčne prenosne funkcije $H(\\Omega)$, ki je\n",
    "vektorizirana čez vse harmonike naenkrat:\n",
    "$$H(\\Omega) = \\frac{1}{\\omega_0^2 - \\Omega^2 + \\mathrm{i}\\, 2\\delta\\omega_0\\Omega},\n",
    "\\qquad \\beta(\\Omega) = \\omega_0^2\\,|H(\\Omega)|, \\qquad\n",
    "\\varphi(\\Omega) = -\\arg H(\\Omega)$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "7e17b19b",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:16.327002Z",
     "iopub.status.busy": "2026-09-25T06:46:16.326878Z",
     "iopub.status.idle": "2026-09-25T06:46:16.330555Z",
     "shell.execute_reply": "2026-09-25T06:46:16.330180Z"
    },
    "lines_to_next_cell": 1
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "beta in fazni zamik, izpeljana iz H(Omega), se ujemata s prejšnjima izrazoma.\n"
     ]
    }
   ],
   "source": [
    "\n",
    "def H(Omega, omega0, delta):\n",
    "    \"\"\"Kompleksna frekvenčna prenosna funkcija normiranega sistema.\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "    Omega : float ali ndarray\n",
    "        Vzbujevalna krožna frekvenca (lahko polje frekvenc harmonikov)\n",
    "        [rad/s].\n",
    "    omega0 : float\n",
    "        Lastna krožna frekvenca nedušenega sistema [rad/s].\n",
    "    delta : float\n",
    "        Brezdimenzijsko razmerje dušenja.\n",
    "\n",
    "    Returns\n",
    "    -------\n",
    "    complex ali ndarray\n",
    "        Vrednost prenosne funkcije.\n",
    "    \"\"\"\n",
    "    return 1.0 / (omega0**2 - Omega**2 + 1j * 2 * delta * omega0 * Omega)\n",
    "\n",
    "\n",
    "# Kontrola: beta in fazni_zamik, izračunana iz H, se morata ujemati z\n",
    "# izrazoma iz razdelka o harmonskem vzbujanju\n",
    "Omega_test = np.array([0.3, 1.0, 2.5])\n",
    "Hij = H(Omega_test, 1.0, 0.05)\n",
    "assert np.allclose(1.0**2 * np.abs(Hij), dinamicni_faktor(Omega_test, 1.0, 0.05))\n",
    "assert np.allclose(-np.angle(Hij), fazni_zamik(Omega_test, 1.0, 0.05))\n",
    "print(\"beta in fazni zamik, izpeljana iz H(Omega), se ujemata s prejšnjima izrazoma.\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1abda916",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "## Periodično vzbujanje\n",
    "\n",
    "### Sestavljanje rešitve\n",
    "\n",
    "Skupni ustaljeni odziv je vsota konstantnega dela in prispevkov prvih $n$\n",
    "harmonikov; vsota po harmonikih je vektorizirana čez $j$ (brez zanke po\n",
    "Pythonu)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "11781bcc",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:16.332349Z",
     "iopub.status.busy": "2026-09-25T06:46:16.332215Z",
     "iopub.status.idle": "2026-09-25T06:46:16.335802Z",
     "shell.execute_reply": "2026-09-25T06:46:16.335273Z"
    }
   },
   "outputs": [],
   "source": [
    "\n",
    "def xres(t, omega0, delta, n):\n",
    "    \"\"\"Ustaljeni odziv sistema na periodično vzbujanje, prvih n harmonikov.\n",
    "\n",
    "    Parameters\n",
    "    ----------\n",
    "    t : float ali ndarray\n",
    "        Čas [s].\n",
    "    omega0 : float\n",
    "        Lastna krožna frekvenca nedušenega sistema [rad/s].\n",
    "    delta : float\n",
    "        Brezdimenzijsko razmerje dušenja.\n",
    "    n : int\n",
    "        Število upoštevanih harmonskih členov.\n",
    "\n",
    "    Returns\n",
    "    -------\n",
    "    float ali ndarray\n",
    "        Vrednost ustaljenega odziva.\n",
    "    \"\"\"\n",
    "    t = np.atleast_1d(np.asarray(t, dtype=float))\n",
    "    j = np.arange(1, n + 1)\n",
    "    Omega_j = j * omega\n",
    "\n",
    "    Hj = H(Omega_j, omega0, delta)\n",
    "    Xc_j = cj_num(j) * np.abs(Hj)\n",
    "    Xs_j = sj_num(j) * np.abs(Hj)\n",
    "    phi_j = -np.angle(Hj)\n",
    "\n",
    "    kot = np.outer(j, omega * t) - phi_j[:, None]\n",
    "    vsota = (Xc_j[:, None] * np.cos(kot) + Xs_j[:, None] * np.sin(kot)).sum(axis=0)\n",
    "\n",
    "    x0 = c0_num / (2 * omega0**2)\n",
    "    return x0 + vsota\n",
    "\n",
    "\n",
    "UporabiClenov = 10\n",
    "\n",
    "\n",
    "def xres2(t, omega0, delta):\n",
    "    \"\"\"Ustaljeni odziv z UporabiClenov harmoniki (glej `xres`).\"\"\"\n",
    "    return xres(t, omega0, delta, UporabiClenov)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "323b6d4b",
   "metadata": {},
   "source": [
    "\n",
    "\n",
    "Primerjava vzbujanja (in njegove aproksimacije) z ustaljenim odzivom\n",
    "(povečanim za lažjo primerjavo na isti sliki), s prilagodljivimi $\\omega_0$,\n",
    "$\\delta$ in faktorjem povečave amplitude odziva (ustreza `Manipulate` z\n",
    "tremi drsniki iz izvirnega zvezka)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "0b7d5c1c",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-09-25T06:46:16.337460Z",
     "iopub.status.busy": "2026-09-25T06:46:16.337332Z",
     "iopub.status.idle": "2026-09-25T06:46:16.484861Z",
     "shell.execute_reply": "2026-09-25T06:46:16.484254Z"
    }
   },
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "fc8f8481d4ab49e6a4a87395fb0adb2b",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "interactive(children=(FloatSlider(value=12.566370614359172, description='omega0', max=31.41592653589793, step=…"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "<function __main__.prikazi_resitev(omega0=12.566370614359172, delta=0.0, povecaj_amplitudo=1.0)>"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "\n",
    "def prikazi_resitev(omega0=4 * np.pi, delta=0.0, povecaj_amplitudo=1.0):\n",
    "    t = np.linspace(0, 2, 1000)\n",
    "    fig, ax = plt.subplots(figsize=(8, 4))\n",
    "    ax.plot(t, f(t), linewidth=1.5, color=\"r\", label=\"$f(t)$\")\n",
    "    ax.plot(t, fA(t, UporabiClenov), linewidth=1.5, color=\"k\", label=\"$f_A(t,10)$\")\n",
    "    ax.plot(\n",
    "        t,\n",
    "        povecaj_amplitudo * xres2(t, omega0, delta),\n",
    "        linewidth=1.5,\n",
    "        color=\"C0\",\n",
    "        label=r\"$\\mathrm{PovecajAmplitudo}\\cdot x_{res}(t)$\",\n",
    "    )\n",
    "    ax.set_title(f\"Razmerje $\\\\omega/\\\\omega_0$={omega / omega0:.4g}\")\n",
    "    ax.set_xlabel(\"$t$\")\n",
    "    ax.grid(True, alpha=0.3)\n",
    "    ax.legend()\n",
    "    plt.show()\n",
    "\n",
    "\n",
    "interact(\n",
    "    prikazi_resitev,\n",
    "    omega0=FloatSlider(min=0, max=10 * np.pi, step=0.05, value=4 * np.pi),\n",
    "    delta=FloatSlider(min=0, max=1, step=0.01, value=0.0),\n",
    "    povecaj_amplitudo=FloatSlider(min=0, max=100, step=0.5, value=1.0),\n",
    ")"
   ]
  }
 ],
 "metadata": {
  "jupytext": {
   "formats": "ipynb,py:percent"
  },
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "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.13.15"
  },
  "widgets": {
   "application/vnd.jupyter.widget-state+json": {
    "state": {
     "04858b42b38f494e826fe961c0ec4d1f": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": null,
       "bottom": null,
       "display": null,
       "flex": null,
       "flex_flow": null,
       "grid_area": null,
       "grid_auto_columns": null,
       "grid_auto_flow": null,
       "grid_auto_rows": null,
       "grid_column": null,
       "grid_gap": null,
       "grid_row": null,
       "grid_template_areas": null,
       "grid_template_columns": null,
       "grid_template_rows": null,
       "height": null,
       "justify_content": null,
       "justify_items": null,
       "left": null,
       "margin": null,
       "max_height": null,
       "max_width": null,
       "min_height": null,
       "min_width": null,
       "object_fit": null,
       "object_position": null,
       "order": null,
       "overflow": null,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     },
     "0bcafe7261b54bca880e150d9b6777b8": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "SliderStyleModel",
      "state": {
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "SliderStyleModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "StyleView",
       "description_width": "",
       "handle_color": null
      }
     },
     "0d7293bda6f24a7bb8ac9fcbee5611df": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "IntSliderModel",
      "state": {
       "_dom_classes": [],
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "IntSliderModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/controls",
       "_view_module_version": "2.0.0",
       "_view_name": "IntSliderView",
       "behavior": "drag-tap",
       "continuous_update": true,
       "description": "n",
       "description_allow_html": false,
       "disabled": false,
       "layout": "IPY_MODEL_73c71e072a8f448980b7360d6df65efe",
       "max": 20,
       "min": 1,
       "orientation": "horizontal",
       "readout": true,
       "readout_format": "d",
       "step": 1,
       "style": "IPY_MODEL_0bcafe7261b54bca880e150d9b6777b8",
       "tabbable": null,
       "tooltip": null,
       "value": 1
      }
     },
     "24c6440c06c74f6cb1fe24eb2440ef0b": {
      "model_module": "@jupyter-widgets/output",
      "model_module_version": "1.0.0",
      "model_name": "OutputModel",
      "state": {
       "_dom_classes": [],
       "_model_module": "@jupyter-widgets/output",
       "_model_module_version": "1.0.0",
       "_model_name": "OutputModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/output",
       "_view_module_version": "1.0.0",
       "_view_name": "OutputView",
       "layout": "IPY_MODEL_2b2c13dcf4004469bb222a1a97e9db6d",
       "msg_id": "",
       "outputs": [
        {
         "name": "stderr",
         "output_type": "stream",
         "text": "/tmp/ipykernel_1500957/287345571.py:19: RuntimeWarning: divide by zero encountered in divide\n  return 1.0 / (omega0**2 - Omega**2 + 1j * 2 * delta * omega0 * Omega)\n/tmp/ipykernel_1500957/287345571.py:19: RuntimeWarning: invalid value encountered in divide\n  return 1.0 / (omega0**2 - Omega**2 + 1j * 2 * delta * omega0 * Omega)\n/tmp/ipykernel_1500957/375265369.py:25: RuntimeWarning: invalid value encountered in multiply\n  Xc_j = cj_num(j) * np.abs(Hj)\n/tmp/ipykernel_1500957/375265369.py:26: RuntimeWarning: invalid value encountered in multiply\n  Xs_j = sj_num(j) * np.abs(Hj)\n"
        },
        {
         "data": {
          "image/png": "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",
          "text/plain": "<Figure size 800x400 with 1 Axes>"
         },
         "metadata": {},
         "output_type": "display_data"
        }
       ],
       "tabbable": null,
       "tooltip": null
      }
     },
     "29c4a5faa9604146b9a36e2b5e052c6b": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "FloatSliderModel",
      "state": {
       "_dom_classes": [],
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "FloatSliderModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/controls",
       "_view_module_version": "2.0.0",
       "_view_name": "FloatSliderView",
       "behavior": "drag-tap",
       "continuous_update": true,
       "description": "omega0",
       "description_allow_html": false,
       "disabled": false,
       "layout": "IPY_MODEL_6dcbdf772b464c12a2afc7cc5ad6c2f8",
       "max": 31.41592653589793,
       "min": 0.0,
       "orientation": "horizontal",
       "readout": true,
       "readout_format": ".2f",
       "step": 0.05,
       "style": "IPY_MODEL_9d74f5a41de64758b133182354481c80",
       "tabbable": null,
       "tooltip": null,
       "value": 12.566370614359172
      }
     },
     "2b2c13dcf4004469bb222a1a97e9db6d": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": null,
       "bottom": null,
       "display": null,
       "flex": null,
       "flex_flow": null,
       "grid_area": null,
       "grid_auto_columns": null,
       "grid_auto_flow": null,
       "grid_auto_rows": null,
       "grid_column": null,
       "grid_gap": null,
       "grid_row": null,
       "grid_template_areas": null,
       "grid_template_columns": null,
       "grid_template_rows": null,
       "height": null,
       "justify_content": null,
       "justify_items": null,
       "left": null,
       "margin": null,
       "max_height": null,
       "max_width": null,
       "min_height": null,
       "min_width": null,
       "object_fit": null,
       "object_position": null,
       "order": null,
       "overflow": null,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     },
     "30a48dee2e3c4a98a76d7a4cf1e18c22": {
      "model_module": "@jupyter-widgets/output",
      "model_module_version": "1.0.0",
      "model_name": "OutputModel",
      "state": {
       "_dom_classes": [],
       "_model_module": "@jupyter-widgets/output",
       "_model_module_version": "1.0.0",
       "_model_name": "OutputModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/output",
       "_view_module_version": "1.0.0",
       "_view_name": "OutputView",
       "layout": "IPY_MODEL_04858b42b38f494e826fe961c0ec4d1f",
       "msg_id": "",
       "outputs": [
        {
         "data": {
          "image/png": "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",
          "text/plain": "<Figure size 800x400 with 1 Axes>"
         },
         "metadata": {},
         "output_type": "display_data"
        }
       ],
       "tabbable": null,
       "tooltip": null
      }
     },
     "3a446e4fea5d49c399d2313690e3ea29": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": null,
       "bottom": null,
       "display": null,
       "flex": null,
       "flex_flow": null,
       "grid_area": null,
       "grid_auto_columns": null,
       "grid_auto_flow": null,
       "grid_auto_rows": null,
       "grid_column": null,
       "grid_gap": null,
       "grid_row": null,
       "grid_template_areas": null,
       "grid_template_columns": null,
       "grid_template_rows": null,
       "height": null,
       "justify_content": null,
       "justify_items": null,
       "left": null,
       "margin": null,
       "max_height": null,
       "max_width": null,
       "min_height": null,
       "min_width": null,
       "object_fit": null,
       "object_position": null,
       "order": null,
       "overflow": null,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     },
     "410171aff6154cfba5dce9985c4d9994": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": null,
       "bottom": null,
       "display": null,
       "flex": null,
       "flex_flow": null,
       "grid_area": null,
       "grid_auto_columns": null,
       "grid_auto_flow": null,
       "grid_auto_rows": null,
       "grid_column": null,
       "grid_gap": null,
       "grid_row": null,
       "grid_template_areas": null,
       "grid_template_columns": null,
       "grid_template_rows": null,
       "height": null,
       "justify_content": null,
       "justify_items": null,
       "left": null,
       "margin": null,
       "max_height": null,
       "max_width": null,
       "min_height": null,
       "min_width": null,
       "object_fit": null,
       "object_position": null,
       "order": null,
       "overflow": null,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     },
     "4426eb842a93481eb25f86369f0925a5": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "SliderStyleModel",
      "state": {
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "SliderStyleModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "StyleView",
       "description_width": "",
       "handle_color": null
      }
     },
     "4e6ebd2958b04307bf634832e6780f52": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "FloatSliderModel",
      "state": {
       "_dom_classes": [],
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "FloatSliderModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/controls",
       "_view_module_version": "2.0.0",
       "_view_name": "FloatSliderView",
       "behavior": "drag-tap",
       "continuous_update": true,
       "description": "povecaj_amplitudo",
       "description_allow_html": false,
       "disabled": false,
       "layout": "IPY_MODEL_410171aff6154cfba5dce9985c4d9994",
       "max": 100.0,
       "min": 0.0,
       "orientation": "horizontal",
       "readout": true,
       "readout_format": ".2f",
       "step": 0.5,
       "style": "IPY_MODEL_562c07710e0143b48903f623bac5efce",
       "tabbable": null,
       "tooltip": null,
       "value": 1.0
      }
     },
     "507df77e45c346858942310c0cc3cf05": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "FloatSliderModel",
      "state": {
       "_dom_classes": [],
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "FloatSliderModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/controls",
       "_view_module_version": "2.0.0",
       "_view_name": "FloatSliderView",
       "behavior": "drag-tap",
       "continuous_update": true,
       "description": "delta",
       "description_allow_html": false,
       "disabled": false,
       "layout": "IPY_MODEL_a8779a47d7404f9f8e408562ef27ede5",
       "max": 1.0,
       "min": 0.0,
       "orientation": "horizontal",
       "readout": true,
       "readout_format": ".2f",
       "step": 0.01,
       "style": "IPY_MODEL_4426eb842a93481eb25f86369f0925a5",
       "tabbable": null,
       "tooltip": null,
       "value": 0.0
      }
     },
     "562c07710e0143b48903f623bac5efce": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "SliderStyleModel",
      "state": {
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "SliderStyleModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "StyleView",
       "description_width": "",
       "handle_color": null
      }
     },
     "6dcbdf772b464c12a2afc7cc5ad6c2f8": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": null,
       "bottom": null,
       "display": null,
       "flex": null,
       "flex_flow": null,
       "grid_area": null,
       "grid_auto_columns": null,
       "grid_auto_flow": null,
       "grid_auto_rows": null,
       "grid_column": null,
       "grid_gap": null,
       "grid_row": null,
       "grid_template_areas": null,
       "grid_template_columns": null,
       "grid_template_rows": null,
       "height": null,
       "justify_content": null,
       "justify_items": null,
       "left": null,
       "margin": null,
       "max_height": null,
       "max_width": null,
       "min_height": null,
       "min_width": null,
       "object_fit": null,
       "object_position": null,
       "order": null,
       "overflow": null,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     },
     "73c71e072a8f448980b7360d6df65efe": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": null,
       "bottom": null,
       "display": null,
       "flex": null,
       "flex_flow": null,
       "grid_area": null,
       "grid_auto_columns": null,
       "grid_auto_flow": null,
       "grid_auto_rows": null,
       "grid_column": null,
       "grid_gap": null,
       "grid_row": null,
       "grid_template_areas": null,
       "grid_template_columns": null,
       "grid_template_rows": null,
       "height": null,
       "justify_content": null,
       "justify_items": null,
       "left": null,
       "margin": null,
       "max_height": null,
       "max_width": null,
       "min_height": null,
       "min_width": null,
       "object_fit": null,
       "object_position": null,
       "order": null,
       "overflow": null,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     },
     "9d74f5a41de64758b133182354481c80": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "SliderStyleModel",
      "state": {
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "SliderStyleModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "StyleView",
       "description_width": "",
       "handle_color": null
      }
     },
     "a8779a47d7404f9f8e408562ef27ede5": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": null,
       "bottom": null,
       "display": null,
       "flex": null,
       "flex_flow": null,
       "grid_area": null,
       "grid_auto_columns": null,
       "grid_auto_flow": null,
       "grid_auto_rows": null,
       "grid_column": null,
       "grid_gap": null,
       "grid_row": null,
       "grid_template_areas": null,
       "grid_template_columns": null,
       "grid_template_rows": null,
       "height": null,
       "justify_content": null,
       "justify_items": null,
       "left": null,
       "margin": null,
       "max_height": null,
       "max_width": null,
       "min_height": null,
       "min_width": null,
       "object_fit": null,
       "object_position": null,
       "order": null,
       "overflow": null,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     },
     "c2c5abd9cc064e03a5836ba14c525912": {
      "model_module": "@jupyter-widgets/base",
      "model_module_version": "2.0.0",
      "model_name": "LayoutModel",
      "state": {
       "_model_module": "@jupyter-widgets/base",
       "_model_module_version": "2.0.0",
       "_model_name": "LayoutModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/base",
       "_view_module_version": "2.0.0",
       "_view_name": "LayoutView",
       "align_content": null,
       "align_items": null,
       "align_self": null,
       "border_bottom": null,
       "border_left": null,
       "border_right": null,
       "border_top": null,
       "bottom": null,
       "display": null,
       "flex": null,
       "flex_flow": null,
       "grid_area": null,
       "grid_auto_columns": null,
       "grid_auto_flow": null,
       "grid_auto_rows": null,
       "grid_column": null,
       "grid_gap": null,
       "grid_row": null,
       "grid_template_areas": null,
       "grid_template_columns": null,
       "grid_template_rows": null,
       "height": null,
       "justify_content": null,
       "justify_items": null,
       "left": null,
       "margin": null,
       "max_height": null,
       "max_width": null,
       "min_height": null,
       "min_width": null,
       "object_fit": null,
       "object_position": null,
       "order": null,
       "overflow": null,
       "padding": null,
       "right": null,
       "top": null,
       "visibility": null,
       "width": null
      }
     },
     "c2d6b4ae1e3446ed9f9e7a27d2f26335": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "VBoxModel",
      "state": {
       "_dom_classes": [
        "widget-interact"
       ],
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "VBoxModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/controls",
       "_view_module_version": "2.0.0",
       "_view_name": "VBoxView",
       "box_style": "",
       "children": [
        "IPY_MODEL_0d7293bda6f24a7bb8ac9fcbee5611df",
        "IPY_MODEL_30a48dee2e3c4a98a76d7a4cf1e18c22"
       ],
       "layout": "IPY_MODEL_3a446e4fea5d49c399d2313690e3ea29",
       "tabbable": null,
       "tooltip": null
      }
     },
     "fc8f8481d4ab49e6a4a87395fb0adb2b": {
      "model_module": "@jupyter-widgets/controls",
      "model_module_version": "2.0.0",
      "model_name": "VBoxModel",
      "state": {
       "_dom_classes": [
        "widget-interact"
       ],
       "_model_module": "@jupyter-widgets/controls",
       "_model_module_version": "2.0.0",
       "_model_name": "VBoxModel",
       "_view_count": null,
       "_view_module": "@jupyter-widgets/controls",
       "_view_module_version": "2.0.0",
       "_view_name": "VBoxView",
       "box_style": "",
       "children": [
        "IPY_MODEL_29c4a5faa9604146b9a36e2b5e052c6b",
        "IPY_MODEL_507df77e45c346858942310c0cc3cf05",
        "IPY_MODEL_4e6ebd2958b04307bf634832e6780f52",
        "IPY_MODEL_24c6440c06c74f6cb1fe24eb2440ef0b"
       ],
       "layout": "IPY_MODEL_c2c5abd9cc064e03a5836ba14c525912",
       "tabbable": null,
       "tooltip": null
      }
     }
    },
    "version_major": 2,
    "version_minor": 0
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
