{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from IPython.display import Image" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "Image(filename='../img/basin-parameters.png', width=500)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "from fatiando import utils\n", "from fatiando.mesher import Polygon\n", "from fatiando.gravmag import talwani, interactive, basin2d\n", "from fatiando.vis import mpl\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "app = interactive.Moulder.load('modelo_bacia')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "x, z = app.x, app.z\n", "dados = app.predicted\n", "modelo = app.model[0]\n", "topo = modelo.y.min()\n", "xlim = [modelo.x.min(), modelo.x.max()]" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "mpl.figure()\n", "mpl.plot(x, dados, '.k')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "mpl.polygon(app.model[0])\n", "mpl.gca().invert_yaxis()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "solver = basin2d.PolygonalBasinGravity(x, z, dados, 30, {'density': modelo.props['density']}, top=topo, xlim=xlim)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "initial = np.ones(solver.nparams)*1000" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "solver.config('levmarq', initial=initial).fit()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "mpl.plot(x, dados, '.k', x, solver.predicted(), '-r')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "mpl.polygon(modelo)\n", "mpl.polygon(solver.estimate_, '-r')\n", "mpl.gca().invert_yaxis()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from fatiando.inversion.regularization import Damping, Smoothness1D" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "regul = solver + 1e-8*Damping(solver.nparams)\n", "regul = solver + 1e-8*Smoothness1D(solver.nparams)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "regul.config('levmarq', initial=initial).fit()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "mpl.plot(x, dados, '.k', x, regul.predicted(), '-r')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "mpl.polygon(app.model[0])\n", "mpl.polygon(regul.estimate_, '-r')\n", "mpl.gca().invert_yaxis()" ] } ], "metadata": { "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.9" } }, "nbformat": 4, "nbformat_minor": 0 }