{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 3 - Refração crítica\n", "\n", "Hoje vamos estudar o fenômeno da refração no ângulo crítico (ângulo de incidência que gera refração a 90°). Essa onda possui propriedades distintas que possibilitam seu uso para inferir propriedades da subsuperfície (o método da sísmica de refração). Veremos quais são essas propriedades e possíveis fatores limitantes para a aplicação do método.\n", "\n", "Utilizaremos as simulações de ondas da biblioteca [Fatiando a Terra](http://www.fatiando.org). Essas simulações utilizam o [método de diferenças finitas](http://en.wikipedia.org/wiki/Finite_difference_method) para calcular soluções da equação da onda." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Objetivos\n", "\n", "* Observar como a refração crítica ocorre durante a propagação de ondas P.\n", "* Verificar as condições para que haja a refração crítica.\n", "* Treinar como calcular o ângulo crítico e a distância mínima para haver refração crítica." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Questão para entregar\n", "\n", "
\n", "Sua resposta deve conter no mínimo:\n", "
\n", "Failed to display Jupyter Widget of type interactive
.
\n", " If you're reading this message in the Jupyter Notebook or JupyterLab Notebook, it may mean\n", " that the widgets JavaScript is still loading. If this message persists, it\n", " likely means that the widgets JavaScript library is either not installed or\n", " not enabled. See the Jupyter\n", " Widgets Documentation for setup instructions.\n", "
\n", "\n", " If you're reading this message in another frontend (for example, a static\n", " rendering on GitHub or NBViewer),\n", " it may mean that your frontend doesn't currently support widgets.\n", "
\n" ], "text/plain": [ "interactive(children=(IntSlider(value=0, description=u'tempo', max=1999, step=50), FloatSlider(value=45.0, description=u'incidencia', max=90.0, step=0.5), FloatSlider(value=10000.0, description=u'x', max=27000.0, step=500.0), FloatSlider(value=0.0, description=u'angulo', max=90.0, step=0.5), Output()), _dom_classes=('widget-interact',))" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def plot_with_rays(tempo, incidencia, x, angulo):\n", " fig = plt.figure()\n", " ax = plt.subplot(111)\n", " simul.snapshot(frame=tempo, ax=ax, cutoff=2, cmap='Greys')\n", " fig.set_size_inches(14, 5.4)\n", " ax.set_title('Tempo em segundos: {} s'.format(tempo*simul.dt))\n", " y_bottom = shape[0]*spacing\n", " y_interface = interface*spacing\n", " y_source = fonte[0]*spacing\n", " x_source = fonte[1]*spacing\n", " x_incidence = (np.tan(np.radians(incidencia))*(y_interface - y_source)\n", " + x_source)\n", " ax.plot([x_source, x_incidence], [y_source, y_interface], '-k', linewidth=2)\n", " arg = (vp2/vp1)*np.sin(np.radians(incidencia))\n", " if arg <= 1:\n", " refract = np.arcsin(arg)\n", " x_refract = (np.tan(refract)*(y_bottom - y_interface) + x_incidence)\n", " ax.plot([x_incidence, x_refract], [y_interface, y_bottom], '-r', linewidth=2) \n", " tmp = np.tan(np.radians(angulo))\n", " x_marc_topo = (y_interface - 0)*tmp + x\n", " x_marc_base = (y_interface - y_bottom)*tmp + x\n", " ax.plot([x_marc_base, x_marc_topo], [y_bottom, 0], '--b', linewidth=2)\n", " ax.hlines(y_interface, 0, shape[1]*spacing, colors='grey')\n", " \n", "ipw.interactive(plot_with_rays, \n", " tempo=ipw.IntSlider(value=0, min=0, max=simul.it, step=50),\n", " incidencia=ipw.FloatSlider(value=45, min=0, max=90, step=0.5),\n", " x=ipw.FloatSlider(value=10e3, min=0, max=shape[1]*spacing, step=500),\n", " angulo=ipw.FloatSlider(value=0, min=0, max=90, step=0.5))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Para pensar\n", "\n", "* Use a figura acima para descobrir o caminho que a onda refratada no ângulo crítico percorre até um ponto na superfície. **Dica**: tente achar o caminho que é perpendicular a frente de onda que volta para a superfície.\n", "* Qual é o ângulo com o qual a onda refratada no ângulo crítico retorna a superfície?\n", "* Qual é a distância mínima da fonte para que haja refração no ângulo crítico? Tente calcular essa distância?\n", "* Sabendo a distância acima, qual seria a distância mínima para que a refração seja observada na superfície?\n", "* Tente observar quando a onda refratada no ângulo crítico passa pelas outras **na superfície**.\n", "* O que acontece quando a onda refletida na superfície incide na interface com ângulo crítico? " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## License and information\n", "\n", "**Course website**: https://github.com/leouieda/geofisica2\n", "\n", "**Note**: This notebook is part of the course \"Geofísica 2\" of Geology program of the \n", "[Universidade do Estado do Rio de Janeiro](http://www.uerj.br/). \n", "All content can be freely used and adapted under the terms of the \n", "[Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by/4.0/).\n", "\n", "![Creative Commons License](https://i.creativecommons.org/l/by/4.0/88x31.png)" ] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.14" } }, "nbformat": 4, "nbformat_minor": 1 }