{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "ZyYxarWXICGB"
   },
   "source": [
    "<a rel=\"license\" href=\"http://creativecommons.org/licenses/by-nc-sa/4.0/\"><img alt=\"Licencia Creative Commons\" style=\"border-width:0\" src=\"https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png\" /></a><br /><span xmlns:dct=\"http://purl.org/dc/terms/\" property=\"dct:title\">Python en ciencias e ingeniería: tutoriales basados en ejemplos</span> por <span xmlns:cc=\"http://creativecommons.org/ns#\" property=\"cc:attributionName\">Sergio Gutiérrez Rodrigo y Adrián Navas Montilla</span> se distribuye bajo una <a rel=\"license\" href=\"http://creativecommons.org/licenses/by-nc-sa/4.0/\">Licencia Creative Commons Atribución-NoComercial-CompartirIgual 4.0 Internacional</a>."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "cU67irCkAoSz"
   },
   "source": [
    "---\n",
    "Programa de Recursos en Abierto en la UZ (2022)\n",
    "\n",
    "**Python en ciencias e ingeniería: tutoriales basados en ejemplos**\n",
    "---\n",
    "Universidad de Zaragoza\n",
    "---\n",
    "*PRAUZ-739*\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "CzP4_HjkBhof"
   },
   "source": [
    "## <center> Ondas Electromagnéticas planas en distintos medios </center>\n",
    "\n",
    "\n",
    "-----------------------------------------"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "TfuwPY3JNp0P"
   },
   "source": [
    "+ La primera parte de este notebook contiene un resumen de la teoría que hay detrás de las Ondas Electromagnéticas (OEM). \n",
    "+ En el apartado *Ondas planas en medios conductores* se explican las propiedades de propagación de las OEM en estos medios mediante ejemplos numérios implementados con Python."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "7e3S-KiRPnGi"
   },
   "source": [
    "### Ecuaciones separadas para $\\mathbf{E}$ y $\\mathbf{B}$\n",
    "\n",
    "No existen cargas ni corrientes libres:\n",
    "$$\n",
    "\\begin{aligned}\n",
    "\\nabla \\cdot \\mathbf{E}(\\mathbf{r}, t) &=0 \\\\\n",
    "\\nabla \\times \\mathbf{E}(\\mathbf{r}, t) &=-\\frac{\\partial}{\\partial t} \\mathbf{B}(\\mathbf{r}, t) \\\\\n",
    "\\nabla \\cdot \\mathbf{B}(\\mathbf{r}, t) &=0\\\\\n",
    "\\nabla \\times \\mathbf{B}(\\mathbf{r}, t) &=\\mu \\sigma \\mathbf{E}(\\mathbf{r}, t)+\\mu\\varepsilon\\frac{\\partial}{\\partial t} \\mathbf{E}(\\mathbf{r}, t)\\\\\n",
    "\\end{aligned}\n",
    "$$\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "e_m7gHCuRs2z"
   },
   "source": [
    "Se toma el rotacional de la ley de Faraday\n",
    "\n",
    "$\\nabla \\times \\nabla \\times \\mathbf{E} =-\\dfrac{\\partial (\\nabla \\times\\mathbf{B})}{\\partial t}$\n",
    "\n",
    "..."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "02r8dxO3SUwJ"
   },
   "source": [
    "Ecuación de ondas:\n",
    "\n",
    "$$\\nabla^2 \\mathbf{E} -\\mu \\sigma \\dfrac{\\partial \\mathbf{E}}{\\partial t}-\\mu\\varepsilon\\dfrac{\\partial^2 \\mathbf{E}}{\\partial t^2} =0 \\\\\n",
    "\\nabla^2 \\mathbf{B} -\\mu \\sigma \\dfrac{\\partial \\mathbf{B}}{\\partial t}-\\mu\\varepsilon\\dfrac{\\partial^2 \\mathbf{B}}{\\partial t^2} =0 \n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "KwAQ6R9ti9u6"
   },
   "source": [
    "$\\nabla^2 \\psi -\\mu \\sigma \\dfrac{\\partial \\psi}{\\partial t}-\\mu\\varepsilon\\dfrac{\\partial^2 \\psi}{\\partial t^2} =0 $\n",
    "\n",
    "donde $\\psi$ es cada una de las componentes del campo eléctrico o magnético"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "-l_cluRaTkjp"
   },
   "source": [
    "### Ondas planas en medios no conductores"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "bnFnth0vjTIy"
   },
   "source": [
    "$\\nabla^2 \\psi -\\mu\\varepsilon\\dfrac{\\partial^2 \\psi}{\\partial t^2} =0 $"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "3yHesvIbgnvq"
   },
   "source": [
    "La luz es una onda EM:\n",
    "\n",
    "$\\psi(x,t)=f(x-vt)+g(x+vt)$ es una solución genérica de las ecuaciones de onda\n",
    "\n",
    "Para \n",
    "$f(x-vt), w=x-vt \\rightarrow (1-v^2\\mu \\varepsilon)\\dfrac{\\partial^2 f}{\\partial w^2}=0$\n",
    "\n",
    "Y por lo tanto: \n",
    "$$v=\\dfrac{1}{\\sqrt{\\mu \\varepsilon}}$$\n",
    "donde:\n",
    "+ $\\psi$ es una de las componentes del campo eléctrico o magnético\n",
    "+ Igual con $g(x+vt)$\n",
    "+ $v=c/n$ y $n=\\sqrt {\\varepsilon_r \\mu_r}$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "X5hxZCORxBqx"
   },
   "source": [
    "Si  $\\nabla^2 \\psi=\\dfrac{1}{v^2}\\dfrac{\\partial^2 \\psi}{\\partial t^2} $ y \n",
    "$\\psi(x,t)=X(x)T(t) \\Rightarrow$\n",
    "\n",
    "\n",
    "$\\dfrac{d^2 X}{d x^2} +k^2 X=0$\n",
    "\n",
    "$\\dfrac{ d^2 T}{d t^2}+\\omega^2 T=0$\n",
    "\n",
    "donde $k^2=\\dfrac{\\omega^2}{v^2}$ es la relación de dispersión\n",
    "\n",
    "... \n",
    "\n",
    "Para una onda viajera en la dirección $x$ se llega a que:\n",
    "\n",
    "$\\mathbf{E}=\\mathbf{E}_0 e^{\\imath(kx - \\omega t)}$\n",
    "\n",
    "$\\mathbf{B}=\\mathbf{B}_0 e^{\\imath(kx - \\omega t)}$\n",
    "\n",
    "Y para una dirección cualquiera: \n",
    "\n",
    "$\\mathbf{E}=\\mathbf{E}_0 e^{\\imath(\\mathbf{k} \\mathbf{r} - \\omega t)}$\n",
    "\n",
    "$\\mathbf{B}=\\mathbf{B}_0 e^{\\imath(\\mathbf{k} \\mathbf{r} - \\omega t)}$\n",
    "\n",
    "siendo $\\mathbf{k}=k_x\\mathbf{\\hat x}+k_y\\mathbf{\\hat y}+k_z\\mathbf{\\hat z}$\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "lfQMBJ733px1"
   },
   "source": [
    "Medios no conductores"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "NCgNCMyw043v"
   },
   "source": [
    "Las ecuaciones de Maxwell\n",
    "$$\n",
    "\\begin{aligned}\n",
    "\\nabla \\cdot \\mathbf{E}(\\mathbf{r}, t) &=0 \\\\\n",
    "\\nabla \\times \\mathbf{E}(\\mathbf{r}, t) &=-\\frac{\\partial}{\\partial t} \\mathbf{B}(\\mathbf{r}, t) \\\\\n",
    "\\nabla \\cdot \\mathbf{B}(\\mathbf{r}, t) &=0\\\\\n",
    "\\nabla \\times \\mathbf{B}(\\mathbf{r}, t) &=\\mu\\varepsilon\\frac{\\partial}{\\partial t} \\mathbf{E}(\\mathbf{r}, t)\\\\\n",
    "\\end{aligned}\n",
    "$$\n",
    "\n",
    "se pueden escribir entonces\n",
    "\n",
    "$$\n",
    "\\begin{aligned}\n",
    "\\mathbf{k} \\cdot \\mathbf{E} &=0 \\\\\n",
    "\\mathbf{k} \\times \\mathbf{E} &=\\omega \\mathbf{B} \\\\\n",
    "\\mathbf{k} \\cdot \\mathbf{B} &=0\\\\\n",
    "\\mathbf{k} \\times \\mathbf{B} &=- \\omega \\mu\\varepsilon\\mathbf{E}\\\\\n",
    "\\end{aligned}\n",
    "$$\n",
    "\n",
    "y por lo tanto\n",
    "$$\n",
    "\\mathbf{B}=\\dfrac{k}{\\omega}\\mathbf{\\hat k} \\times \\mathbf{E}\n",
    "$$\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "fjzJf3mNq0Aa"
   },
   "source": [
    "Casi siempre estaremos interesados en el promedio temporal de $\\mathbf{S}$\n",
    "\n",
    "+ Asumiendo que los campos son armónicos, lineales y no dispersivos \n",
    "$$\n",
    "\\langle -\\int_{V}\\left[\\mathbf{H} \\cdot \\frac{\\partial \\mathbf{B}}{\\partial t}+\\mathbf{E} \\cdot \\frac{\\partial \\mathbf{D}}{\\partial t}\\right] d V \\rangle= 0$$\n",
    "\n",
    "Además, suponemos que la densidad de energía solo tiene en cuenta las corrientes de polarización y magnetización que están libres de pérdidas, es decir, todas las pérdidas están asociadas con el término $\\mathbf{J} \\cdot \\mathbf{E}$. De ahí que el promedio temporal resulta ser:\n",
    "$$\n",
    "\\oint_{A}\\langle\\mathbf{S}(\\mathbf{r})\\rangle \\cdot \\mathbf{n} d a=-\\frac{1}{2} \\int_{V} \\operatorname{Re}\\left\\{\\mathbf{J}^{*}(\\mathbf{r}) \\cdot \\mathbf{E}(\\mathbf{r})\\right\\} d V\n",
    "$$\n",
    "donde hemos usado notación compleja. El término de la derecha define la disipación de energía media dentro del volumen $V$.\n",
    "\n",
    "$\\langle\\mathbf{S}\\rangle$ representa el promedio temporal del vector de Poynting \n",
    "$$\n",
    "\\langle\\mathbf{S}(\\mathbf{r})\\rangle=\\frac{1}{2} \\operatorname{Re}\\left\\{\\mathbf{E}(\\mathbf{r}) \\times \\mathbf{H}^{*}(\\mathbf{r})\\right\\}\n",
    "$$\n",
    "La magnitud $\\langle\\mathbf{S}\\rangle$ se conoce como intensidad  $I(\\mathbf{r})=|\\langle\\mathbf{S}(\\mathbf{r})\\rangle|$.\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "anvkEAnFq5R6"
   },
   "source": [
    "En el campo lejano, es decir, lejos de las fuentes y los límites materiales, el campo electromagnético puede aproximarse localmente mediante una onda plana.\n",
    "Los campos eléctrico y magnético están en fase, perpendiculares entre sí, y la relación de sus amplitudes es constante. \n",
    "\n",
    "Entonces $\\langle\\mathbf{S}\\rangle$ se puede expresar por el campo eléctrico solo como\n",
    "$$\n",
    "\\langle\\mathbf{S}(\\mathbf{r})\\rangle=\\frac{1}{2} \\frac{1}{Z_{i}}|\\mathbf{E}(\\mathbf{r})|^{2} \\mathbf{n}_{r}=\\frac{1}{2} \\sqrt{\\frac{\\varepsilon_{0}}{\\mu_{0}}} n_{i}|\\mathbf{E}(\\mathbf{r})|^{2}\n",
    "$$\n",
    "donde $\\mathbf{n}_{r}$ representa el vector unitario en la dirección radial, $n_{i}=\\sqrt{\\varepsilon_{i} \\mu_{i}}$ es el índice de refracción, y $Z_{i}$ es la impedancia. \n",
    "\n",
    "La integral de superficie $\\langle\\mathbf{S}\\rangle$ se corresponde con la potencia total generada o disipada en el interior de la superficie cerrada, esto es,\n",
    "$$\n",
    "\\bar{P}=\\oint_{A}\\langle\\mathbf{S}(\\mathbf{r})\\rangle \\cdot \\mathbf{n} d a=\\oint_{A} I(\\mathbf{r}) d a\n",
    "$$\n",
    "\n",
    "Se puede demostrar también que: \n",
    "\n",
    "$$\\langle\\mathbf{S}(\\mathbf{r})\\rangle=\\langle u(\\mathbf{r})\\rangle \\mathbf{v}(\\mathbf{r})$$\n",
    "donde:\n",
    "+ $\\langle u(\\mathbf{r})\\rangle$ es el promedio de la densidad total de energía.\n",
    "+$\\mathbf{v}(\\mathbf{r})$ la velocidad de fase en el medio."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "geqlVOGO3mPv"
   },
   "source": [
    "###  Ondas planas en medios conductores"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "TR4mHglA3mee"
   },
   "source": [
    "Las ecuaciones de Maxwell\n",
    "\n",
    "$\n",
    "\\begin{aligned}\n",
    "\\nabla \\cdot \\mathbf{E}(\\mathbf{r}, t) &=0 \\\\\n",
    "\\nabla \\times \\mathbf{E}(\\mathbf{r}, t) &=-\\frac{\\partial}{\\partial t} \\mathbf{B}(\\mathbf{r}, t) \\\\\n",
    "\\nabla \\cdot \\mathbf{B}(\\mathbf{r}, t) &=0\\\\\n",
    "\\nabla \\times \\mathbf{B}(\\mathbf{r}, t) &=\\mu \\sigma \\mathbf{E}(\\mathbf{r}, t)+\\mu\\varepsilon\\frac{\\partial}{\\partial t} \\mathbf{E}(\\mathbf{r}, t)\\\\\n",
    "\\end{aligned}\n",
    "$\n",
    "\n",
    "se pueden escribir entonces\n",
    "\n",
    "$\n",
    "\\begin{aligned}\n",
    "\\mathbf{k} \\cdot \\mathbf{E} &=0 \\\\\n",
    "\\mathbf{k} \\times \\mathbf{E} &=\\omega \\mathbf{B} \\\\\n",
    "\\mathbf{k} \\cdot \\mathbf{B} &=0\\\\\n",
    "\\mathbf{k} \\times \\mathbf{B} &=- (\\imath \\mu\\sigma +\\omega \\mu\\varepsilon)\\mathbf{E}\\\\\n",
    "\\end{aligned}\n",
    "$\n",
    "\n",
    "y por lo tanto\n",
    "$\n",
    "\\mathbf{B}=\\dfrac{k}{\\omega}\\mathbf{\\hat k} \\times \\mathbf{E}\n",
    "$\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "n3CIaUQM4Aoz"
   },
   "source": [
    "$\\nabla^2 \\psi -\\mu \\sigma \\dfrac{\\partial \\psi}{\\partial t}-\\mu\\varepsilon\\dfrac{\\partial^2 \\psi}{\\partial t^2} =0 $\n",
    "\n",
    "$\\psi$ es cada una de las componentes del campo eléctrico o magnético\n",
    "\n",
    "Para \n",
    "$\\psi=\\psi_0 e^{\\imath(kx - \\omega t)}$ encontramos que $k^2=\\omega^2\\mu \\varepsilon+\\imath \\omega \\mu\\sigma $\n",
    "\n",
    "Si se toma $k=\\pm (k_r+\\imath k_i) \\Rightarrow $ $\\psi=\\psi_0 e^{-k_i x} e^{\\imath(k_rx - \\omega t)}$ "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "_tVqeRYr7qpk"
   },
   "source": [
    "$$\n",
    "\\begin{aligned}\n",
    "&k_r=\\omega \\sqrt{\\dfrac{\\mu \\varepsilon}{2}}[\\sqrt{1+(\\dfrac{\\sigma}{\\omega \\varepsilon})^2}+1]^{1/2} \\\\\n",
    "&k_i=\\omega \\sqrt{\\dfrac{\\mu \\varepsilon}{2}}[\\sqrt{1+(\\dfrac{\\sigma}{\\omega \\varepsilon})^2}-1]^{1/2}\n",
    "\\end{aligned}\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "Kx9Z-YKw6xYF"
   },
   "source": [
    "Discusión sobre:\n",
    "+ Longitud de onda $\\lambda = 2 \\pi/k_r$\n",
    "\n",
    "+ Profundidad de penetración $\\delta =1/k_i$\n",
    "\n",
    "+ Índice de refracción $n=n_r+\\imath n_i=c k/\\omega$\n",
    "\n",
    "+ Velocidad en el medio $v=c/n$\n",
    "\n",
    "+ Desfase entre $\\mathbf{B}$ y $\\mathbf{E}$\n",
    "\n",
    "+ Definición del factor de calidad $Q=\\dfrac{\\omega \\varepsilon}{\\sigma}$ e interpretación física $Q=\\dfrac{\\vert \\frac{\\partial}{\\partial t} \\mathbf{D}\\vert}{\\vert \\mathbf{J_{cond}} \\vert}$\n",
    "+ Distintos regímenes según el factor de \n",
    "    calidad $Q \\rightarrow$ Aislante vs Conductor."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "Wf5kRPZaXWpE"
   },
   "source": [
    "Modelo microscópico de la conductividad.\n",
    "\n",
    "\n",
    "$$\\mathbf{F}=m\\mathbf{a}=-e\\mathbf{E}-\\gamma\\mathbf{v}$$\n",
    "\n",
    "Para un campo estático la conductividad resulta ser: \n",
    "$$ \\sigma_0=\\dfrac{ne^2}{\\gamma}$$\n",
    "\n",
    "Para la excitación mediante una OEM de la forma $\\mathbf{E}=\\mathbf{E}_0 e^{\\imath(\\mathbf{k} \\mathbf{r} - \\omega t)}=\\mathbf{E}(\\mathbf{r}) e^{-\\imath \\omega t}$ y teniendo en cuenta que:\n",
    "+ $\\mathbf{v}=\\mathbf{v}_0 e^{-\\imath \\omega t}$\n",
    "+ $\\mathbf{J}=\\sigma \\mathbf{E}$\n",
    "+ $\\mathbf{J}=-ne\\mathbf{v}$\n",
    "\n",
    "Entonces:\n",
    "$$ \\sigma(\\omega)=\\sigma_R+\\imath\\sigma_I=\\dfrac{ne^2}{\\gamma-\\imath m \\omega}=\\dfrac{ne^2/\\gamma}{1-\\imath m \\omega/\\gamma}=\\dfrac{\\sigma_0}{1-\\imath(\\sigma_0 m\\omega/ne^2)}$$\n",
    "\n",
    "Esta conductividad da lugar a una relación de dispersión:\n",
    "\n",
    "$$k^2=\\omega^2\\mu(\\varepsilon+\\imath \\sigma(\\omega)/\\omega)$$\n",
    "\n",
    "tal que\n",
    "$$\n",
    "\\begin{aligned}\n",
    "&k_r=\\omega \\sqrt{\\dfrac{\\mu \\varepsilon}{2}}[\\sqrt{1+(\\dfrac{\\sigma_R(\\omega)}{\\omega \\varepsilon(\\omega)})^2}+1]^{1/2} \\\\\n",
    "&k_i=\\omega \\sqrt{\\dfrac{\\mu \\varepsilon}{2}}[\\sqrt{1+(\\dfrac{\\sigma_R(\\omega)}{\\omega \\varepsilon(\\omega)})^2}-1]^{1/2}\n",
    "\\end{aligned}$$\n",
    "donde \n",
    "$\\varepsilon(\\omega)=\\varepsilon-\\dfrac{\\sigma_I}{\\omega}$\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "zL8jHQD2JFHg"
   },
   "source": [
    "Límite $m \\omega/\\gamma \\lll 1$  ó  $\\omega\\lll ne^2/\\sigma_0 m$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "O2aPEZJ1V5iF"
   },
   "outputs": [],
   "source": [
    "from math import pi\n",
    "eps0=8.8541878176e-12 #F/m\n",
    "e=1.6e-19    # C\n",
    "m=9.11e-31   # kg\n",
    "#Cobre  \n",
    "n=8.5e28     # m-3\n",
    "sigma0=6.0e7 #(ohm-metro)-1  \n",
    "def sigma(omega):   \n",
    "  resigma=sigma0/(1+(sigma0*m*omega/(n*e**2))**2)\n",
    "  imsigma=resigma*(sigma0*m*omega/(n*e**2))\n",
    "  return resigma,imsigma"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "syI6qoaFPy8k"
   },
   "source": [
    "$$ \\sigma(\\omega)=\\sigma_R+\\imath\\sigma_I=\\dfrac{\\sigma_0}{1+(\\sigma_0 m\\omega/ne^2)^2} \\left(1+\\imath\\dfrac{\\sigma_0 m\\omega}{ne^2} \\right )$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 552
    },
    "executionInfo": {
     "elapsed": 824,
     "status": "ok",
     "timestamp": 1664732264269,
     "user": {
      "displayName": "SERGIO GUTIERREZ RODRIGO",
      "userId": "07959720391705098820"
     },
     "user_tz": -120
    },
    "id": "mS-XxN3JbYTs",
    "outputId": "a592c8f9-82e8-45a0-d145-0e0c85626136"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "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": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt \n",
    "N = 1000                        \n",
    "\n",
    "#Microondas\n",
    "nuini=300.0e6 #Hz (Microondas, lambda=1m)\n",
    "nufin=3.0e12  #Hz (Terahercios, lambda=100mu)\n",
    "\n",
    "freq = np.linspace(nuini, nufin, N)     \n",
    "sigma_real,sigma_imag=sigma(2.0*pi*freq)\n",
    "\n",
    "# Re(Sigma)\n",
    "fig, ax  = plt.subplots() \n",
    "ax.plot(freq,sigma_real/sigma0)     \n",
    "ax.set_xlabel(r'$\\nu$(Hz)') \n",
    "ax.set_ylabel(\"$Re(\\sigma)/\\sigma_0$\") \n",
    "ax.set_ylim(0,1.2)\n",
    "plt.show()\n",
    "\n",
    "# Im(Sigma)\n",
    "fig, ax  = plt.subplots() #genera el objeto \"figura\"\n",
    "ax.plot(freq,sigma_imag/sigma0)          #pinta la gráfica\n",
    "ax.set_xlabel(r'$\\nu$(Hz)') \n",
    "ax.set_ylabel(\"$Im(\\sigma)/\\sigma_0$\") \n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "Jdx2qRe5LAG5"
   },
   "source": [
    "Límite $m \\omega/\\gamma \\ggg 1$  ó  $\\omega\\ggg ne^2/\\sigma_0 m$\n",
    "\n",
    "$ \\sigma(\\omega) \\approx \\imath \\left ( \\dfrac{ne^2}{m\\omega} \\right )$\n",
    "\n",
    "$k^2=\\omega^2\\mu\\varepsilon\\left (1-  \\dfrac{ne^2}{m \\varepsilon \\omega^2} \\right )=\\omega^2\\mu\\varepsilon_0\\left (\\varepsilon_r-\\dfrac{\\omega_p^2}{\\omega^2} \\right )$\n",
    "\n",
    "$\\omega_p^2=\\dfrac{ne^2}{m \\varepsilon_0}$ es la frecuencia de plasma.\n",
    "\n",
    "En materiales no magnéticos como los metales $\\mu_r \\approx 1$ y por lo tanto:\n",
    "$k^2=\\dfrac{\\omega^2}{c^2}\\left (\\varepsilon_r-\\dfrac{\\omega_p^2}{\\omega^2} \\right )$\n",
    "\n",
    "Y por lo tanto el índice de refracción es $n^2=\\varepsilon(\\omega)=\\varepsilon_r-\\dfrac{\\omega_p^2}{\\omega^2}$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "qTmFPVPgxMM6"
   },
   "outputs": [],
   "source": [
    "def epsilon(omega):\n",
    "  eps_r=1.0\n",
    "  wp=np.sqrt(n*e**2/(m*eps0)) \n",
    "  print(\"Frecuencia de plasma (Hz)\",wp)\n",
    "  print(\"Longitud de onda (nm)\",round(2.0*pi*c*1e9/wp,1))\n",
    "  return eps_r-(wp/omega)**2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 317
    },
    "executionInfo": {
     "elapsed": 384,
     "status": "ok",
     "timestamp": 1664733069163,
     "user": {
      "displayName": "SERGIO GUTIERREZ RODRIGO",
      "userId": "07959720391705098820"
     },
     "user_tz": -120
    },
    "id": "NRpZsMQYxJwy",
    "outputId": "f94a5ebd-1e3f-449e-967d-72e604928f3d"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Frecuencia de plasma (Hz) 1.6424641233724826e+16\n",
      "Longitud de onda (nm) 114.7\n"
     ]
    },
    {
     "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": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt \n",
    "N = 1000      \n",
    "#VISIBLE INFRARROJO\n",
    "nuini=30.0e12 #Hz (INFRARROJO, lambda=1 micra)\n",
    "nufin=750.0e12  #Hz (VISIBLE lambda=400 nm)\n",
    "\n",
    "freq = np.linspace(nuini, nufin, N)     \n",
    "eps=epsilon(2.0*pi*freq)\n",
    "\n",
    "#Re(epsilon)\n",
    "fig, ax  = plt.subplots() \n",
    "ax.plot(freq,eps)  \n",
    "ax.set_xlabel(r'$\\nu$(Hz)') \n",
    "ax.set_ylabel(\"$Re(\\epsilon)$\") \n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "Nyk2LAhJLAG5"
   },
   "outputs": [],
   "source": [
    "from math import pi\n",
    "#Cobre  \n",
    "e=1.6e-19    # C\n",
    "m=9.11e-31   # kg\n",
    "n=8.5e28     # m-3\n",
    "sigma0=6.0e7 #(ohm-metro)-1  \n",
    "def sigma(omega):   \n",
    "  resigma=sigma0/(1+(sigma0*m*omega/(n*e**2))**2)\n",
    "  imsigma=resigma*(sigma0*m*omega/(n*e**2))\n",
    "  return resigma,imsigma"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "executionInfo": {
     "elapsed": 437,
     "status": "ok",
     "timestamp": 1664733219649,
     "user": {
      "displayName": "SERGIO GUTIERREZ RODRIGO",
      "userId": "07959720391705098820"
     },
     "user_tz": -120
    },
    "id": "E5JzqZlaLUKP",
    "outputId": "6c38d185-93ca-47dd-a775-cab9918b59dc"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "3.997232773333333e-07\n"
     ]
    }
   ],
   "source": [
    "nu=750.0e12\n",
    "omega=2.0*pi*nu\n",
    "c=299792458 #m/s\n",
    "print(c/nu)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 569
    },
    "executionInfo": {
     "elapsed": 663,
     "status": "ok",
     "timestamp": 1664733221303,
     "user": {
      "displayName": "SERGIO GUTIERREZ RODRIGO",
      "userId": "07959720391705098820"
     },
     "user_tz": -120
    },
    "id": "O9GD_ersLAG6",
    "outputId": "7e8f1757-1e1d-42fa-c8c9-6734b355156a"
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "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": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt \n",
    "N = 1000                       \n",
    "\n",
    "#VISIBLE INFRARROJO\n",
    "nuini=30.0e12 #Hz (INFRARROJO, lambda=1 micra)\n",
    "nufin=750.0e12  #Hz (VISIBLE lambda=400 nm)\n",
    "\n",
    "freq = np.linspace(nuini, nufin, N)     \n",
    "sigma_real,sigma_imag=sigma(2.0*pi*freq)\n",
    "sigma_aprox=n*e**2/(m*2.0*pi*freq)\n",
    "\n",
    "#Re(Sigma)\n",
    "fig, ax  = plt.subplots() \n",
    "ax.plot(freq,sigma_real)  \n",
    "ax.set_xlabel(r'$\\nu$(Hz)') \n",
    "ax.set_ylabel(\"$Re(\\sigma)$\") \n",
    "plt.show()\n",
    "\n",
    "#Im(Sigma)\n",
    "fig, ax  = plt.subplots() \n",
    "ax.plot(freq,sigma_imag,label='exacta')  \n",
    "ax.plot(freq,sigma_aprox,'--',label='aproximada')   \n",
    "ax.set_xlabel(r'$\\nu$(Hz)') \n",
    "ax.set_ylabel(\"$Im(\\sigma)$\") \n",
    "plt.legend()\n",
    "\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "colab": {
   "authorship_tag": "ABX9TyNYxfgJHZbWiIW7YM0FiIKE",
   "provenance": [
    {
     "file_id": "1kbar_RZjg_hwquNzkuMvrHLyGFmvUKb6",
     "timestamp": 1685375249334
    }
   ],
   "toc_visible": true
  },
  "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.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
