{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 6 - Sísmica de reflexão: Correção de Normal Moveout (NMO) e empilhamento\n", "\n", "Na aula passada, vimos que uma seção CMP é crucial para conseguirmos uma estimativa da velocidade. Nessa prática, veremos como utilizar a correção de NMO para fazer a **análise de velocidades**. Também veremos a técnica do empilhamento e como ela melhora a razão sinal-ruído do dado.\n", "\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", "* Utilizar a correção de NMO para estimar velocidades.\n", "* Ver como o empilhamento melhora a qualidade dos dados." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Questão para entregar\n", "\n", "
\n", "\n", "Explique como é feita a análise de velocidades. As velocidades determinadas são as velocidades verdadeiras das camadas? Por que? Qual é vantagem de realizar o empilhamento? \n", "\n", "
\n", "\n", "### Regras para a resposta\n", "\n", "* Coloque **nome, data e o número da prática** em sua resposta. \n", "* A resposta pode ter no **máximo 1 página** (não uma folha).\n", "* **Execute o notebook** antes de responder. As simulações abaixo foram feitas para te ajudar.\n", "* **Pense e organize** sua resposta andtes de começar a escrever." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Instruções\n", "\n", "Esse documento é um [Jupyter notebook](http://jupyter.org/), um documento interativo que mistura texto (como esse), código (como abaixo), e o resultado de executar o código (números, texto, figuras, videos, etc).\n", "\n", "O notebook te fornecerá exemplos interativos que trabalham os temas abordados no questionário. Utilize esses exemplos para responder as perguntas.\n", "\n", "As células com números ao lado, como `In [1]:`, são código [Python](http://python.org/). Algumas dessas células não produzem resultado e servem de preparação para os exemplos interativos. Outras, produzem gráficos interativos. **Você deve executar todas as células, uma de cada vez**, mesmo as que não produzem gráficos.\n", "\n", "**Para executar uma célula**, clique em cima dela e aperte `Shift + Enter`. O foco (contorno verde ou cinza em torno da célula) deverá passar para a célula abaixo. Para rodá-la, aperte `Shift + Enter` novamente e assim por diante. Você pode executar células de texto que não acontecerá nada." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Setup\n", "\n", "Rode as células abaixo para carregar os módulos necessários para essa prática." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/home/leo/miniconda3/envs/geofisica2/lib/python2.7/site-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n", " from ._conv import register_converters as _register_converters\n" ] } ], "source": [ "%matplotlib inline\n", "from __future__ import division, print_function\n", "import math\n", "from multiprocessing import Pool, cpu_count\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import ipywidgets as ipw\n", "from fatiando.seismic import RickerWavelet, FDAcoustic2D\n", "from fatiando import utils\n", "from fatiando.vis import anim_to_html\n", "from fatiando.vis.mpl import seismic_image, seismic_wiggle" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Simulação de um CMP para um modelo de duas camadas\n", "\n", "Rode as células abaixo para simular uma seção CMP para um modelo de duas camadas. A célula abaixo cria nosso modelo." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "shape = (150, 200)\n", "spacing = 10\n", "extent = [0, shape[1]*spacing, shape[0]*spacing, 0]\n", "\n", "# Velocidades\n", "v1, v2 = 4000, 5000\n", "\n", "densidade = np.ones(shape)*1600\n", "velocidade = np.ones(shape)*v1\n", "l1 = 40\n", "densidade[l1:,:] = 1800\n", "velocidade[l1:,:] = v2\n", "l2 = 100\n", "densidade[l2:,:] = 2000\n", "velocidade[l2:,:] = 8000" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Em seguida, precisamos definir onde serão localizadas as fontes e os receptores em nossa simulação. Vamos aproveitar e calcular também os espassamentos (offsets) dos receptores. Lembre-se: offset é a distância da conte ao receptor." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Utilizando 14 fontes e 14 receptores.\n", "Fontes: [940 910 880 850 820 790 760 730 700 670 640 610 580 550]\n", "Receptores: [1060 1090 1120 1150 1180 1210 1240 1270 1300 1330 1360 1390 1420 1450]\n", "Offsets: [120 180 240 300 360 420 480 540 600 660 720 780 840 900]\n" ] } ], "source": [ "fontes = np.array(list(reversed(range(55, shape[1]//2 - 3, 3))))\n", "recep = np.array([shape[1] - s for s in fontes])\n", "offsets = (recep - fontes)*spacing\n", "print(\"Utilizando {} fontes e {} receptores.\".format(len(fontes), len(recep)))\n", "print('Fontes: {}'.format(fontes*spacing))\n", "print('Receptores: {}'.format(recep*spacing))\n", "print('Offsets: {}'.format(offsets))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Vamos rodar as simulações que precisamos (uma por fonte). **A barra de progresso não irá aparecer** pois vamos rodar as simulações em paralelo para agilizar o processo." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "def simul_shot(fonte, its=1200, verbose=False):\n", " shot = FDAcoustic2D(velocidade, densidade, spacing=spacing, taper=0.005, padding=50, verbose=verbose)\n", " shot.add_point_source((0, fonte), RickerWavelet(1, 120))\n", " shot.run(its)\n", " return shot" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Simulando... Pronto.\n", "CPU times: user 32.2 ms, sys: 34.3 ms, total: 66.5 ms\n", "Wall time: 29.9 s\n" ] } ], "source": [ "%%time\n", "print('Simulando...', end=' ')\n", "pool = Pool(processes=cpu_count())\n", "shots = pool.map(simul_shot, fontes)\n", "pool.close()\n", "print('Pronto.')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Vamos dar uma olhada na simulação de 1 tiro para ter uuma ideia do que acontece." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " " ], "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "shots[0].animate(embed=True, dpi=60, fps=8, every=20, cutoff=0.5, cmap='Greys')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Vamos extrair os dados CMP da nossa simulação." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "dt = shots[0].dt\n", "times = np.linspace(0, dt*shots[0].simsize, shots[0].simsize)\n", "CMP = np.empty((shots[0].simsize, len(recep)))\n", "for i, s in enumerate(shots):\n", " CMP[:, i] = s[:, 0, recep[i]]\n", " \n", "fig = plt.figure(figsize=(10, 9))\n", "ax = plt.subplot(111)\n", "ax.set_title('CMP')\n", "ax.set_xlabel('offset (m)')\n", "ax.set_ylabel('times (s)')\n", "cutoff = 0.1\n", "ax.imshow(CMP, extent=[offsets.min(), offsets.max(), times.max(), times.min()], \n", " aspect=1000, cmap='Greys', vmin=-cutoff, vmax=cutoff, interpolation='nearest')\n", "fig.tight_layout()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Para pensar\n", "\n", "* Tente identificar a onda direta e as reflexões principais na simulação e no CMP.\n", "* O que é o outro evento que aparece no CMP (acima da segunda reflexão)?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Análise de velocidades" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Agora que temos nosso CMP, podemos aplicar a correção de NMO e fazer a nossa análise de velocidades. Rode a célula abaixo para produzir uma figura interativa." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "745428da795e4230a295c46da4c2ab2e", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type interactive.

\n", "

\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=(FloatSlider(value=2000.0, description=u'v1', max=6000.0, min=2000.0, step=100.0), FloatSlider(value=2000.0, description=u'v2', max=6000.0, min=2000.0, step=100.0), Output()), _dom_classes=('widget-interact',))" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def nmo_correction(CMP, times, offsets, v):\n", " nmo = np.zeros_like(CMP)\n", " for i, t0 in enumerate(times):\n", " for j, o in enumerate(offsets):\n", " t = np.sqrt(t0**2 + o**2/v[i]**2)\n", " k = int(math.floor(t/dt))\n", " if k < times.size - 1:\n", " # Linear interpolation of the amplitude\n", " y0, y1 = CMP[k, j], CMP[k + 1, j]\n", " x0, x1 = times[k], times[k + 1]\n", " nmo[i, j] = y0 + (y1 - y0)*(t - x0)/(x1 - x0)\n", " return nmo\n", "\n", "def analise_velocidades(CMP):\n", " def aplica_nmo(v1, v2):\n", " v = v1*np.ones_like(times)\n", " v[times > 0.35] = v2\n", " nmo = nmo_correction(CMP, times, offsets, v)\n", "\n", " fig = plt.figure(figsize=(12, 6))\n", " ax = plt.subplot(121)\n", " ax.set_title('CMP')\n", " ax.set_xlabel('offset (m)')\n", " ax.set_ylabel('times (s)')\n", " cutoff = 0.1\n", " ax.imshow(CMP, extent=[offsets.min(), offsets.max(), times.max(), times.min()], \n", " aspect=1000, cmap='Greys', vmin=-cutoff, vmax=cutoff, interpolation='nearest') \n", " ax.grid()\n", "\n", " ax = plt.subplot(122)\n", " ax.set_title('Corrigido de NMO')\n", " ax.set_xlabel('offset (m)')\n", " ax.set_ylabel('times (s)')\n", " cutoff = 0.1\n", " ax.imshow(nmo, extent=[offsets.min(), offsets.max(), times.max(), times.min()], \n", " aspect=1000, cmap='Greys', vmin=-cutoff, vmax=cutoff, interpolation='nearest') \n", " ax.grid()\n", "\n", " fig.tight_layout()\n", " widget = ipw.interactive(aplica_nmo, \n", " v1=ipw.FloatSlider(min=2000, max=6000, step=100, value=2000),\n", " v2=ipw.FloatSlider(min=2000, max=6000, step=100, value=2000))\n", " return widget\n", "\n", "analise_velocidades(CMP)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Figura acima\n", "\n", "* O painel da esquerda mostra nosso CMP original.\n", "* O painel da direita mostra o CMP após aplicação da correção NMO usando as velocidades especificadas.\n", "* Você pode controlar as velocidades utilizadas na correção NMO do nosso CMP." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Para pensar\n", "\n", "* **Determine a velocidade das duas reflexões**.\n", "* Essa velocidade é a velocidade real das camadas? Por que?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Empilhamento\n", "\n", "O CMP que simulamos acima não é muito realista pois não está contaminado com qualquer tipo de ruído. Então vamos sacanear o problema adicionando ruído aleatório nos nossos dados." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "image/png": "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q1apFWgWLVqkVqBxnbzoumuf6c23XYBcs2ZN2/+zSpUqpVagGDZsmFqB5owzzlArUKxZs0atQOO6wwP4TrusXbu2WoHmzjvvVCvQHHbYYWoFCucuOc7pZ64pOZdccolaQYJdgLx582bbCn/X4Q+XXnqpWoGmfv36agUK523ne+65R61AM3nyZLUCxYwZM9QKNP3791cr0AwYMECtQDFw4EC1As3cuXPVCjT58+dXKyR2AbsAecOGDZg6dapag8L1g+06jQ4A6tWrp1agePLJJ9UKNF9//bVagebUU09VK1C89957agWaPn36qBVo+vXrp1ag+Oyzz9QKNEcddZRagebCCy9UK1C4jprOFLsAeePGjZg+fbpag+LLL79UK1A4b4E2bNhQrUDxwgsvqBVocuXKpVag+fjjj9UKFO+++65agcb1ugj4Tup0vqafd955agUa5/d6TsQuQK5QoYJt2zHXwivntl233367WoFiw4YNagUa5+3bqlWrqhUonAuXnCfpuRYYrly5Uq1As27dOrUCjeso+5yKXYC8ZcsWLFy4UK1B0alTJ7UChWsvYQC2uw0jRoxQK9BcccUVagUaYuZAIwAAIABJREFU1xSLdu3aqRVoZs+erVagWb9+vVqBwjX1DABq1KihVqDZuHGjWiGxC9gFyDFG2zeZ61S3yy+/XK1AM3jwYLUChes4dcA3LxPwbcXoGtgDwCGHHKJWoHnmmWfUChSuxcuAd41D4cKF1QqJXcAuQC5QoAAOPvhgtQaF66jpPHns3ia/4lrs5rpLAnivfs+ZM0etQDF27Fi1As2QIUPUCjSuo4Nbt26tVqBx7thy2223qRUSu4Bl5OPaVaFy5cpqBYqePXuqFWhcL6auE90A4Nprr1Ur0LgOlmnUqJFagWbz5s1qBRrX9JC///3vagWaQoUKqRVounbtqlageOSRR9QKEiwDZNcVzb59+6oVKFy/BACgS5cuagUK5/HezqOm582bp1agcO5V7lpIC/gGDuPHj1cr0LhOuwSAG2+8Ua1A8fnnn6sVKDp06JDR8XaR5oYNGzBlyhS1BoVzpbkrBQoUUCtQuBYXArDtMgP4vl8ef/xxtQKNa+cQALjooovUChTOQebMmTPVCjRr165VK1A0a9ZMrUBRpEiRjI63C5AXLFhgO6mrV69eagWKX375Ra1A061bN7UChXOf0qefflqtQNO2bVu1AsUtt9yiVqBxHmPr2vPbuc3bEUccoVag+eqrr9QKiV3ALkDOlSuXbX6ma4W885fvSSedpFagcK7Udk0lAoBVq1apFShcr4kAcO+996oVaD744AO1AoXrLiwALF++XK1A891336kVKA4//HC1ggS7ADlfvnyoUqWKWoNi9erVagWKN954Q61A89Zbb6kVKFwDe8B7RfDDDz9UK1C0atVKrUDj3Nd24sSJagWKI488Uq1Ac9NNN6kVaFKbNy9CjFHtsEuEEKLrtpZr9w3nLfO//OUvagWKa665Rq1AM3ToULUCTb58+dQKFMWKFVMr0Hz00UdqBRrX97pr+0vA+4bKtTjSdUfz4osvxvTp0+lejHYryLlz57YdonDooYeqFSjeeecdtQJNuXLl1AoUTzzxhFqBZvv27WoFmpEjR6oVKJyH+bjurAGwrYdxvS4CvmkKAPDjjz+qFShcFyUzxS5Arlu3LoYNG6bWoDjuuOPUChR58+ZVK9C88soragWK9u3bqxVoXIdtAL6jYIsXL65WoHHtVQ74TqRz7j39008/qRVoXG9kXaejZhq72AXIIQTbbdAVK1aoFShcR2QDsM1Xr1WrllqBZtCgQWoFmtNOO02tQHHXXXepFWici4BdAx7n3tNffvmlWoHG9QbcNUBetmxZRsfb5SCXKVMmnnLKKWoNClfvU089Va1A47pS4ryl5ezuWifg2l8VAKZNm6ZWoOnTp49agaJatWpqBZoFCxaoFWjq1aunVqD45JNP1AoUH3/8MVatWkXnINsFyA0bNoyjR49Wa1C4FqM4r/DccMMNagWKTp06qRVo1q1bp1ag2bZtm1qBwjkN6plnnlEr0Fx44YVqBYpx48apFWicp0ZOmDBBrUARAh1jSmnZsiUmTpyYcwLkYsWKxSZNmqg1KFxXYo8//ni1Ao1rj1XnrgQDBgxQK9C43gx27txZrUDTs2dPtQKN627JHXfcoVagWb9+vVqBxjXlzzX17O2338by5ctzTheLAw88EP/617/UGhSPPPKIWoHi6KOPVivQfPzxx2oFisWLF6sVaObPn69WoLn77rvVChTOn9HZs2erFWh++OEHtQKFa6E74NtpBvCdpuu6U5LpYqpdgJwrVy4UKFBArUHhvDXkSqNGjdQKFM6rJF988YVagebkk09WK1C4Fv8AvkEmAJx44olqBYrJkyerFWhchz8BQO/evdUKFK4TRpcsWZLR8XYpFtWqVYuu20OuuXZjx45VK9C4frBnzZqlVqBxXhHMnTu3WoGiSJEiagUa165EAPDUU0+pFSh+/vlntQKNc8eWSpUqqRUoXPtmt27dGpMmTco5KRbz5s2zHTXpWn3btWtXtQLNFVdcoVagGDhwoFqB5oQTTlAr0LjefDsHPM5tJHv06KFWoHC9EQSARYsWqRVoLrvsMrUChWs7w6VLl2Z0vF2AXKNGDfTt21etQdG9e3e1AsUll1yiVqAZMWKEWoHCeZXEdWIkkFX17Ej16tXVCjSunUMA39Vv5zSo9957T61AM3XqVLUChWvdV6bdfexSLMqWLRvPPPNMtQaF68jm+++/X61A8+mnn6oVKFx3SYDM876UnHHGGWoFCueiq/z586sVaFwnGNauXVutQOO60AT47pY4z3CYPHlyzmnzljdv3liqVCm1BoXrhDHXJuGAb//GY489Vq1A49o5BACaN2+uVqBw3jJ3ZvDgwWoFihdeeEGtQONcwHzbbbepFSj69++vVqBYtGgRNm3alHMC5Bo1asTHHntMrUHhOvzhq6++UivQVK5cWa1A8cEHH6gVaFwH4gC+dQJ58thly/2Ka14mABQtWlStQDFlyhS1Ao3rNDrAt32na2pIz549MXfu3JxTpDdnzhxcddVVag2KVq1aqRUo2rVrp1ag6datm1qBwnkaXY0aNdQKNM8//7xagaJjx45qBZoWLVqoFWhcbwbLly+vVqBxHc4CAAcddJBageLtt99WK1Bs2rQpo+PtAuSDDz4YH374oVqDYuHChWoFCueiiDp16qgVKFzbAQHAPffco1agcS2OdK7sf+WVV9QKNK45yDNnzlQr0Li2HAN83V37w7///vsZHW8XIH/77be2wYNrbua0adPUCjRHHHGEWoHi4YcfVivQuK7CAsD06dPVChRlypRRK9B06dJFrUBz+OGHqxUoGjdurFagce0cAvgWMLvOE8i0Q45dDnLp0qVjmzZt1BoUFStWVCtQlC1bVq1As99++6kVKFzv2AHguuuuUyvQfP/992oFCtcR2QBwzDHHqBVo1q5dq1agOO2009QKNK+99ppagcZ1WNh9992nVqBo1qwZxo0bl3NykIsWLYrjjz9erUGxdetWtQKF67hmwLdziHNepnPXE9cx9iNHjlQr0FSrVk2tQPPEE0+oFShc0xQB4MILL1Qr0LgG964DlDIturYLkNevX4/x48erNShcR/A6V8i7joJ1bR8FZN6cXclhhx2mVqBw3QIFgAoVKqgVaFwXD5xz1g888EC1Ao1rfYbrsLDhw4dndLxdikW9evWi66pglSpV1AoUF198sVqBJtMqVhWdO3dWK9Bs2LBBrUDTunVrtQKFawEw4NtpBvDts/7qq6+qFWjmzZunVqBp2rSpWoFi/vz5agWKFStWYMuWLTknxSJfvnyoWrWqWoPCdZKe8xAC1xzkq6++Wq1A45wPe+6556oVKJw7QbhezwHfNm+ff/65WoHmxRdfVCvQTJ48Wa2Qo8g0rdVuBblOnTpxwIABag2KTCsqVZQsWVKtQPP000+rFShcq+MB7x7OPXr0UCtQOA/zcW3FCPjurrkWXQHAzz//rFagGTp0qFqBwnUWwumnn57RqGm7FeQYo+0W7gknnKBWoJg0aZJagca1r63rRDcA6N27t1qBxrUYpW3btmoFmuXLl6sVaFxb1LkOrQK886ddz/uIESPUChSrV6/O6Hi7ALlAgQK2Kw6jRo1SK1Bcf/31agUa15sp5762P/zwg1qB5qKLLlIrUJQuXVqtQONadA34fk4vv/xytQJN//791Qo0PXv2VCtQHHDAAWoFikxHe9sFyFOmTEGtWrXUGhQffPCBWoHCdX484Ftlvn79erUCjWtaCwB8+umnagUK11xYALjsssvUCjQtW7ZUK1B06NBBrUDjOk8AyGpT64hrK8ZMx5Lb5SA3atQofvbZZ2oNijFjxqgVKJyLaPr166dWoHBdyQSAPn36qBVoXKd0NWvWTK1A8+CDD6oVaFx3BW+++Wa1As2zzz6rVqDp1auXWoHCtfd08+bNc9agkPXr12PixIlqDYq//e1vagUK59WGf/zjH2oFCtfiHwAoVqyYWoHGdcS3c5Ge68IBkFUE5Mh3332nVqCpXbu2WoGmSZMmagUK15uSpUuXZnS83QpywYIFo+tyv2v7q9tvv12tQOPap9Q5j9e5A4draovrFxjgPYjo/PPPVytQDBkyRK1Ac84556gVaI488ki1AoXrLk+bNm0wadKknLOCXLNmTbz99ttqDYpDDz1UrUDhGmQCWTnrjnzxxRdqBRrXPF7Ad+v5ySefVCvQfP/992oFGtfR5K7eADB69Gi1As3999+vVqBw3aH65ZdfMjreLkCeNWuWbT5MpgnjKgYOHKhWoHGdpPfWW2+pFWhcK/sB3/6whQoVUivQOE91q1evnlqBokGDBmoFGtdpdAAwdepUtQKF63WxSJEiGR1vFyAXLlzYdgvXtfDqzDPPVCvQuBbRdOzYUa1A45prD/gOClmxYoVagcY1aACAk046Sa1AsXbtWrUCzSWXXKJWoFmzZo1agcK108ycOXMyOt4uQM6VKxcKFy6s1qCYMWOGWoHi3nvvVSvQvPHGG2oFimuvvVatQNO+fXu1Ak2FChXUChSZbiUqefPNN9UKNDfccINageKqq65SK9D8+OOPagUa11avW7ZsUStQZNqG0a5Ir2LFitG1ybnrtpZz30nXjifOwxOqV6+uVqApV66cWoHCdUonACxZskStQOM6QGHjxo1qBZoXXnhBrUDjOuTksMMOUytQvP3221i+fDldRGUXIB922GHRNWF89uzZagUK5/xG13Zpn3/+uVqBxjUFCgDKli2rVqBwHu/tXDDmupvputUPZBXqu+I6JrtSpUpqBYqlS5di8+bNOaeLxcyZM21zYl0rWOvXr69WoHEN7rt27apWoHFtfQX4TgEsWLCgWoHm1ltvVSvQuBbpFS9eXK1A4zq9EPCticmbN69agSLTDlx2AfK2bdtsC1KmTZumVqC444471Ao0bdq0UStQuO42AL4XUwC46aab1AoUriNsAe90Itd2jK+//rpagebqq69WK9C47n6vWrVKrUCxbdu2jI63S7E49NBD49ChQ9UaFK79hEuWLKlWoPn222/VChTLly9XK9AcffTRagUa1y3zzp07qxVonDsqTJ8+Xa1A4TwddfLkyWoFGtcJhmPHjlUrUGzcuBHbt2/POSkWgO/kpZNPPlmtQOG8ZX7ppZeqFSiuvPJKtQLN5s2b1Qo0ritrrkU0gHfHFtdagS+//FKtQOOcTuSakrNhwwa1AkWmu/Z2K8ghhOgaILuuTjVr1kytQOOaquDcleC6665TK9C47k45t2J877331Ao0rjeDrt9FAPDuu++qFWhcU/5cd5HbtWuHyZMn55wV5IMOOggDBgxQa1D07dtXrUDh3BLItfr2iiuuUCvQuH4JAL59bZ1XkOfNm6dWoDn11FPVChSffPKJWoGmefPmagWaBQsWqBUoXnvtNbUC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hQtx3333qTUoHn30UbUCRfHixdUKNK4rgs6DH2rVqqVWoHGdSJdpOyMljz/+uFqBxnXL3LlXuXOP+DZt2qgVKPbbbz+1AkWmQ+XsVpDr1q0bX375ZbUGRa5cudQKFK+88opagcZ19btv375qBZr/+Z//USvQHHbYYWoFikxHqio54IAD1Ao0roseixcvVivQOKcTufZZb926tVqBYvbs2diwYUPOWUGeP38+brvtNrUGhWshjXMbJtc7dueuBN98841agcZ1C3T8+PFqBZq1a9eqFWjmzJmjVshxuObDAkD//v3VChSbNm1SK1Bs3749o+PtAuQCBQrYThnLly+fWoHCuW2X63tlyZIlagUa19UGwHfC2LfffqtWoHEuAnYdivPUU0+pFWhcp9EBwEUXXaRWoHBdJPvrX/+a0fF2AXLx4sVtv4BdW0i5BpkAMHLkSLUCxcyZM9UKNGeccYZageb6669XK1A4530feeSRagUa11qB+++/X61A41wEnD9/frUChet1cd68eRkdb5eDXKhQoegasLmOmTzhhBPUCjSuFfIjRoxQK9A4FwC55n47D35wzp/+6KOP1AoUb775plqBxvlmcMiQIWoFCtfCyDlz5mDjxo05Jwe5Ro0atltyc+fOVStQ1K5dW61A06tXL7UChXOhm+t2HACcc845agWKFStWqBVoTjvtNLUCjWuA7JoaAnh3VXJNnXv11VfVChRXXnllRsfbBcirV6+27cm3Zs0atQLFI488olagqVmzplqB4s4771Qr0DgXXRUoUECtQOHqDWQ183dl0qRJagUK124KgPdk10svvVStQOFam5HpddEuQC5RogROOeUUtQbFa6+9plagqFevnlqBZsGCBWoFCtfUEADo3r27WoHGNX+6QYMGagUa1yAT8G3d6dx7+u6771Yr0Lj2K3/nnXfUChQbNmzI6Hi7AHn27Nm2vW3PPvtstQJF/fr11Qo0rm27+vXrp1agOfzww9UKNK5fYEWKFFEr0LgGmYBvsHb11VerFWguvvhitQJNqVKl1AoUrlOAc1ybtxIlSqBdu3ZqDQrXhvizZs1SK9AsX75crUDhnGLh3BbwkksuUStQfPXVV2oFGteuREDWKFtHhg0bplagefvtt9UKNEuXLlUrUBxxxBFqBYqFCxdmdLxdgFy6dGlccMEFag0K17GkAwYMUCvQnHXWWWoFioEDB6oVaJw7Krh2mmnVqpVagcZ5Mlrp0qXVChTjxo1TK9CsXr1arUAzY8YMtQKFa9H4M888k9HxdgHy6tWrbfNhtmzZolagcO47eeutt6oVKJzbvBUrVkytQONaZe46gAAA8uSx+xr6Fdft/kxX1pS89NJLagWabt26qRUoMu0GoeLll1/O6Hi7K1PJkiVx+umnqzUoGjdurFagGDt2rFqBxnWFx7my37kt4NatW9UKFK7XFsB7UMgPP/ygVqBwvS4CwCGHHKJWoClUqJBagcL1+pLp+bYLkJcvX257B+l61+764QB8pxceffTRagUa5wD5uOOOUytQOBd1ura+AoDLLrtMrUBRvnx5tQLN5MmT1Qo0rikW9913n1qBItMuVnYB8tq1azFq1Ci1BoVrO6MbbrhBrUDjWhRx4IEHqhVorrnmGrUCzR133KFWoHAtRgWAihUrqhVoMm0jpSJv3rxqBZo5c+aoFWhch5w1bdpUrUCxatWqjI63C5CrVatm2+Tctfp2/vz5agUa14vpN998o1agce0yAwA9evRQK1A4D2f54IMP1Ao0zZs3VytQOK8gu85BAHx3Bl0nL15++eUZHW8XIM+ZMwd/+9vf1BoUri2BQqBHmcu54oor1AoUrv14Ad+bEsD3vDv3Qe7Tp49agcY1QHa9LgKwnaQLAF988YVagSLTQFNFpjtrIca4m1T2Doccckh03aZwDRxatGihVqBxDXict0Cdt8xdi/ScV+1dV6cA344ta9asUSvQ1KpVS61A4zpTwLVovGXLlpg4cSK9wmcXIOfKlStmOl9bhetUt8GDB6sVaFy341588UW1Ao1rlxkAtrtTzqODp0+frlagce1t79xaz7VdKgDsv//+agWKN954Q61AsWbNGmzdujXnBMj58+ePritUZ555plqBYtq0aWoFmuOPP16tQOE8KOTaa69VK9C43pi4to8CfINMwLdjS4UKFdQKNM4dW1zTLL/77ju1AsUZZ5yBKVOm0AGy3W1krVq18NZbb6k1KL788ku1AoXrhxoANm3apFagcLtx3RnXYRsAcOihh6oVKM4991y1Ao1r5xDAt0XdGWecoVagcR6TnWlXBRWVK1dWK1Dky5cvo+PtAuRVq1bZtkpp3bq1WoHCuUjPdWvo559/VivQzJ49W61A47qauX37drUCzamnnqpW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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ruido = 0.1\n", "CMP_ruido = CMP + np.random.uniform(-ruido, ruido, CMP.shape)\n", "fig = plt.figure(figsize=(10, 9))\n", "ax = plt.subplot(111)\n", "ax.set_title(u'CMP com ruído aleatório')\n", "ax.set_xlabel('offset (m)')\n", "ax.set_ylabel('times (s)')\n", "cutoff = 0.1\n", "ax.imshow(CMP_ruido, extent=[offsets.min(), offsets.max(), times.max(), times.min()], \n", " aspect=1000, cmap='Greys', vmin=-cutoff, vmax=cutoff, interpolation='nearest')\n", "fig.tight_layout()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Uma técnica que nos possibilita diminuir a influência do ruído aleatório é o **empilhamento**. A ideia é somar diversos dados que possuam um sinal coerente no meio de ruído aleatório.\n", "\n", "Rode a célula abaixo para gerar uma figura interativa que ilustra esse conceito." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "780f1a7fd9aa4ad4bb354735306cd01e", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type interactive.

\n", "

\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=(FloatSlider(value=0.0, description=u'ruido', max=0.5), Output()), _dom_classes=('widget-interact',))" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def empilhamento(ruido):\n", " N = 500\n", " M = 10\n", " if ruido <= 0:\n", " dados_ruido = np.array([np.zeros(N) for i in range(M)])\n", " else:\n", " dados_ruido = np.array([np.random.uniform(-ruido, ruido, size=N) for i in range(M)])\n", " x = np.arange(N)\n", " sinal = 1*utils.gaussian(x, 250, 2)\n", " dados = dados_ruido + sinal\n", " plt.figure(figsize=(10, 6))\n", " plt.subplot(121)\n", " plt.title(u'Dados com ruído e um sinal não-aleatório')\n", " for i, d in enumerate(dados):\n", " plt.plot(d + i + 1, x, '-k')\n", " plt.xlim(0, len(dados) + 1)\n", " plt.xlabel('# do dado')\n", " plt.grid()\n", " ax = plt.subplot(143)\n", " plt.title('Empilhamento')\n", " plt.plot(dados.sum(0), x, '-k')\n", " plt.grid()\n", " plt.xlim(-15, 15)\n", " plt.tight_layout()\n", "ipw.interactive(empilhamento, ruido=ipw.FloatSlider(min=0, max=0.5, step=0.1, value=0))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Figura acima\n", "\n", "* O painel da esquerda mostra 10 conjuntos de dados com 1 sinal coerente no meio.\n", "* O painel da direita mostra o resultado do empilhamento desses dados.\n", "* Você pode controlar a quantidade de ruído aleatório que é inserido nos dados da esquerda." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Para pensar\n", "\n", "* Com o máximo de ruído você consegue enxergar o sinal nos dados originais? E no empilhamento?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Empilhamento após análise de velocidades\n", "\n", "Para poder fazer o empilhamento, precisamos ter um sinal coerente entre todos os traços. Isso significa que a nossa reflexão precisa acontecer no mesmo tempo em todos os traços. Felizmente, é exatamente isso que obtemos após a análise de velocidades e correção NMO.\n", "\n", "Rode a célula abaixo para gerar a figura interativa da análise de velocidades. Dessa vez vamos motrar também o resultado do empilhamento da seção corrigida de NMO." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c3198c234ff44c83b6afdc12775ff268", "version_major": 2, "version_minor": 0 }, "text/html": [ "

Failed to display Jupyter Widget of type interactive.

\n", "

\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=(FloatSlider(value=2000.0, description=u'v1', max=6000.0, min=2000.0, step=100.0), FloatSlider(value=2000.0, description=u'v2', max=6000.0, min=2000.0, step=100.0), Output()), _dom_classes=('widget-interact',))" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def nmo_empilhamento(v1, v2):\n", " v = v1*np.ones_like(times)\n", " v[times > 0.35] = v2\n", " nmo = nmo_correction(CMP_ruido, times, offsets, v)\n", " stack = np.atleast_2d(nmo.sum(1)).T\n", " \n", " fig = plt.figure(figsize=(12, 6))\n", " ax = plt.subplot(131)\n", " ax.set_title('CMP')\n", " ax.set_xlabel('offset (m)')\n", " ax.set_ylabel('times (s)')\n", " cutoff = 0.1\n", " ax.imshow(CMP_ruido, extent=[offsets.min(), offsets.max(), times.max(), times.min()], \n", " aspect=2500, cmap='Greys', vmin=-cutoff, vmax=cutoff, interpolation='nearest') \n", " ax.grid()\n", " \n", " ax = plt.subplot(132)\n", " ax.set_title('Corrigido de NMO')\n", " cutoff = 0.1\n", " ax.imshow(nmo, extent=[offsets.min(), offsets.max(), times.max(), times.min()], \n", " aspect=2500, cmap='Greys', vmin=-cutoff, vmax=cutoff, interpolation='nearest') \n", " ax.grid()\n", " \n", " ax = plt.subplot(165)\n", " ax.set_title(u'Primeiro traço do NMO')\n", " seismic_wiggle(np.atleast_2d(nmo[:, 0]).T, dt=dt, scale=1)\n", " ax.set_xlim(-1, 1)\n", " ax.grid()\n", " \n", " ax = plt.subplot(166)\n", " ax.set_title('Empilhamento')\n", " seismic_wiggle(stack, dt=dt, scale=1)\n", " ax.set_xlim(-10, 10)\n", " ax.grid()\n", " \n", " fig.tight_layout(pad=0, w_pad=0)\n", "\n", "ipw.interactive(nmo_empilhamento, \n", " v1=ipw.FloatSlider(min=2000, max=6000, step=100, value=2000),\n", " v2=ipw.FloatSlider(min=2000, max=6000, step=100, value=2000))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Figura acima\n", "\n", "* O painel 1 mostra o CMP contaminado com ruído aleatório.\n", "* O painel 2 mostra o resultado da correção de NMO.\n", "* O painel 3 mostra o primeiro traço da seção corrigida de NMO (sem empilhamento).\n", "* O painel 4 mostra o resultado do empilhamento da seção corrigida de NMO." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Para pensar\n", "\n", "* Como o resultado do empilhamento muda quando você utiliza as velocidades correta para NMO?\n", "* Como o traço empilhado se compara a um traço normal do NMO (sem empilhamento)?" ] }, { "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" }, "widgets": { "state": { "53a28390fd914b219c74e4f5a8971f3c": { "views": [ { "cell_index": 20 } ] }, "b7d6ad3786ed4264970e7ab865a251d5": { "views": [ { "cell_index": 30 } ] }, "bbd18e6621ae44f3a2b49d2aa18e28a0": { "views": [ { "cell_index": 26 } ] } }, "version": "1.2.0" } }, "nbformat": 4, "nbformat_minor": 1 }