{ "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", "
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=(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": [ "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=(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", " 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", "" ] } ], "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 }